Jamroom has no index.php in its main folder. .htaccess sends every request to modules/jrCore/router.php, which:
_init(), and starts the session$_post: module_url, module, option, then _1, _2 ... for the rest. key=value parts become $_post['key'].For yoursite.com/(module url)/(option), the router tries, in order:
view_(module)_(option), from views/(option).php or index.phpadmin or stream(module)_(option).tpl in the active skinview_(module)_default(module)_index.tpl in the skin, or the module's templates/index.tpl, when there's no optionA URL that isn't a module goes to a skin template of the same name, such as yoursite.com/about to about.tpl, or to a profile when it's a profile's URL. Site Builder pages are handled through events at this point.
The router fires events that modules listen for, such as module_view before a module view, skin_template before a skin template, and index_template for the home page. That's how modules such as Site Builder take over a page without changing the router. See Events and Listeners.
| Variable | What's in it |
|---|---|
$_post |
The URL parts and form values (from $_REQUEST) |
$_user |
The user making the request, and their active profile's keys |
$_conf |
Every setting: (module)_(name) |
$_mods |
The installed modules and their details |
View functions get $_post, $_user and $_conf as arguments.