[drupal-devel] [task] usability: redirect to proper page after
edit/delete operations
Bèr Kessels
drupal-devel at drupal.org
Thu Jan 27 14:05:03 UTC 2005
Project: Drupal
Version: cvs
Component: base system
Category: tasks
Priority: normal
Assigned to: moshe weitzman
Reported by: moshe weitzman
Updated by: Bèr Kessels
Status: patch
It never really bothered /me/ that I was redirected to odd places, since
I have a drupal-sitemap printed in my head ;). However, asking some
clients, learned me that this patch would be greatly appreciated.
+1 from me.
One question though (not criticism!) why did you choose to do the
testing inside druopal_goto as
Seems odd to me to have a one-line-if inside another if.
Bèr Kessels
Previous comments:
------------------------------------------------------------------------
January 26, 2005 - 20:18 : moshe weitzman
Attachment: http://drupal.org/files/issues/drdest.patch (11.05 KB)
Here is a patch I've been wanting to finish for a while. This patch
assures that you end up on the proper page after you edit/delete a
node, comment, user, or url alias. This is true no matter if you go
through the usual interface or the admin interface. Further, if click
the 'edit' link from 3rd page of a custom sorted view (e.g.
admin/comment&from=100&sort=asc&order=Author) you still are returned to
the right page.
The technique used here is generally available for module developers.
I've minimally enhanced drupal_goto() so that it will redirect to the
url specified in a 'destination' querystring parameter if such
parameter exists. If it does not exist, we redirect just as today. No
changes are required to existing drupal_goto() calls. A new helper
function, drupal_get_destination() was added; it helps contruct the
'destination' string which is appended to add/edit links.
The only downside I can see to this patch is that a few URLs are less
pretty than before. These urls are only shown to admins. This could
only be avoided by having each admin page implement its own way of
passing a destination, or stashing the destination in the $_SESSION. We
recently tried storing referer in $_SESSION, and it was eventually
removed because of poor coordination when a user has multiple browser
windows open.
In addition to the above,
- I cleaned up some 'destination' handling in user login code
- I assured that after adding a new taxo term, we arrive back on the
'Add' page. That restores prior behavior
------------------------------------------------------------------------
January 26, 2005 - 22:44 : stefan nagtegaal
This is another great improvement when we look at usability! Moshe, you
did a terrific job on this..
After this patch is applied every submitted page drupal_goto()'s the
page you expect it to go..
This is really one of the best patches i'd seen and tested lately, so
++ for this patch in HEAD..
------------------------------------------------------------------------
January 27, 2005 - 07:12 : Dries
The code looks good, the functionality is handy but I'd like to hear
other people's thoughts on this.
------------------------------------------------------------------------
January 27, 2005 - 08:19 : chx
great one. +1
--
View: http://drupal.org/node/16246
Edit: http://drupal.org/project/comments/add/16246
More information about the drupal-devel
mailing list