Hi,
As discussed previously on the devlist[1], the notion of "default product"
doesn't make much sense after upgrade from single-product Trac/BH installations.
Current implementation redirects most of the global requests into the default
product (e.g. /roadmap -> /products/@/roadmap), with some exceptions (/wiki,
/query etc.).
I've been looking into removing the redirects and the first part of the code
changes has been committed in r1521084 (#658). The new behaviour is outlined
below:
* Global requests are not redirected to the "default product" anymore.
* Some of the URLs are handled in a special manner:
* /qct - This works same as before, the request is processed by the global
QCT handler and the user can specify a product from the dropdown.
* /newticket - Called from the QCT, it currently redirects to the first
product in the DB. This should probably be changed, so that either
/newticket is always executed in global scope with a product dropdown
(as in QCT), or that the request is redirected to the product currently
selected in the QCT dropdown.
* /ticket/<uid> - Looks up the ticket with specified UID and redirects to
the specific ticket page (e.g. /ticket/UID -> /products/prefix/ticket/ID).
For the default product UID equals ID, so the old URLs still work after
upgrading to multiproduct.
* /query - This was changed a while ago to allow queries to run in both
global and product scopes. When run in global scope all products are
queried (needed for global dashboard).
* /batchmodify - Same as /query.
* /wiki - Same as before, handles both global- and product-scoped wikis.
There are a couple other requests that should probably be handled in a specific
manner, namely /report and /timeline. IMO these should behave like /query - in
global scope all products are referenced. In addition the /report should allow
saving global, cross-product reports. Does this sound like the correct approach?
Please have a look at the code changes, any feedback is most welcome.
[1] - http://apache.markmail.org/thread/xvdfpebypjn43fps
--
matevz
|