Page 1 of 1

Gallery - pretty url elements not in $params

Posted: Fri Feb 10, 2012 5:53 pm
by MLdB
I have the following problem:

Using the tag {Gallery} a list sub-galleries is displayed (thumbnail and name), but clicking on any of these does not display the images contained within.

The URL is correct: /Gallery//[return id]

This 'pretty' URL gets parsed correctly. find_match of class.route_manager.php correctly matches the url and back in page.functions.php $_REQUEST is filled with these entries:

'cntnt01dir' => ''
'cntnt01returnid' => [returnid]

However inside action.default.php of the Gallery module, the $params array only contains the default entries:

'module' => 'Gallery'
'action' => 'default'

I should stress that I have another module installed that does work correctly ($params filled with elements from URL) and does not seem to interfere in any way with Gallery.

Does anyone have any previous experience with this because it's a complete mystery to me...

Many thanks in advance

Re: Gallery - pretty url elements not in $params

Posted: Sat Feb 11, 2012 12:33 am
by Jos
I don't really understand what you are asking, but you might want to check if you have the {metadata} tag in the head section of your page template. It generates a <base href...> element Gallery depends upon when using mod_rewrite

Re: Gallery - pretty url elements not in $params

Posted: Sat Feb 11, 2012 8:56 am
by MLdB
I do, but below {Gallery}! I think you've just explained something to me I would have never figured out myself :) Thanks, I'll let you know if it fixes the problem.

edit: I placed {Gallery} within </__body>...<__body>, but to no avail... I'll going to take another shot at determining where the $_REQUEST keys 'cntnt01dir' en 'cntnt01returnid' go missing...

Re: Gallery - pretty url elements not in $params

Posted: Sat Feb 11, 2012 11:15 am
by MLdB
The {metadata} tag was not the problem. I'm afraid my question has little to do with the Gallery module...

I have two modules registering routes for pretty URLs: Gallery and a module I made. The latter worked perfectly so I assumed there was something wrong with the installation of the former.

However, I dumped $params, $_REQUEST, $_GET and $_PUT for both modules and discovered that my own module wasn't getting its information from $params either (it was still using $_GET['page'] as its source of information even after the shift to pretty URLs, which just as well might have broken the whole thing, but it didn't so I didn't notice it.)

So now I think either there's something wrong with my CMSMS (v1.9.4.3) installation (it matches the pretty URL, params get inserted into $_REQUEST, but they don't end up in the module's $params var) or I'm wrong thinking they should (end up in $params).