Programming control for return after processes

About: Return from various places is ill defined and unpredictable

Basically the system performs processess under events from a person on items.  In all cases (that i know of) the process on thos items is activated in some room.  The person may visit any nuber of process screens, in some unpredictable manner, and may or may not complete the process that he started out to do.  In any case what is wanted is that after the process is completed or aborted the person is returned to the exact room from which departure into process screens commenced.   Let us list the screens (or programs) correlated with how the user enters them:

click add button
(get) (* item known only if from permalink)
enter leave or change group
(get) may return to new group (*item known only if from permalink)
add tag
(post) *specific item known
comment in-line (clicking say)
/update/index.php (post) may have multiple  (*specific item may not be known because of multiples)
 rte comment
/add/richtextCommont.php (get)  *specific item known

First le'ts investigate the reliablity of determing the return location from the refer and perhaps a known item.  As we study this reliability you will see popping up on the process screen a message like " return to:" which indicates, hopefully more and more reliably where you would return should you complete the process or abort it.

Please note that if the first time you click from a room, the return is correct.  If you then click to to to another process screen, the return gets lost.  That is the challenge.

I think i will use a system of overides, where you start with $HTTP_REFERER and then see if there is a $roomReturn  that overides it.  The process screens would pass $roomReturn from screen to screen in a get or post variable.

Earlier/later in groups and tag rooms is busted, i think i will fix that first.         (done) Need to fix group and permalink hyperlinks from rooms, they include an extra // and permalinks include the group sometimes. 


  1. return
  2. cases