doing cvs archeology on a weird part of issue.inc that's causing other problems in http://drupal.org/node/57023, i discovered that in revision 1.21 (2003-10-05), kjartan apparently fixed a bug that has since resurfaced. i can't find any issue # for the original bug, so i'm submitting a new one. ;)

to reproduce:

  1. goto a project's issue page, e.g., http://drupal.org/project/issues/project_issue
  2. select something to filter the view with based on the drop-down menus (e.g. status: "active") and hit submit -- you only see active issues (so far, so good).
  3. select something else to filter the view with based on the drop-down menus (e.g. category: "bug reports") and hit submit -- you only see active bug reports (so far, still good).
  4. click on "Pri" to sort by priority. now, you see all issue categories in all of the default states again, not just the active bugs. :(

something is seriously wrong with the interaction of args being added to the URL by the tablesort code, and the code trying to generate the right query based on the form elements.

Comments

dww’s picture

wisdom from chx in IRC:

chx: just from the issue title
chx: session storage
...
chx: on post you quickly stuff _POST itself into a session var
chx: and if you are on the relevant page, retrieve in !$may_cache
chx: piece of cake
Derek: sounds good.
Derek: i still don't understand what tablesort is doing to the damn URL... :(
chx: tries the same
chx: just fails
chx: bcause form api oesn't give a [damn] about get
chx: someone needs to clean this mess up

so, perhaps this won't be too terrible to solve for ourselves in issue.inc...

Anonymous’s picture

just wanted to note that the patch here will hopefully fix this, or could be modified to. so lets get that one in first, and we could end up killing a few birds with one stone.

dww’s picture

Status: Active » Fixed

this bug was fixed via the patch in http://drupal.org/node/69626, which has been committed to TRUNK and 4.7, and updated on drupal.org.

Anonymous’s picture

Status: Fixed » Closed (fixed)