}
/*
- * module init is only loaded on main page call, and includes checks for configuration settings.
+ * call a method on {module}/Pman.php
+ * * initially used on the main page load to call init();
+ * * also used for ccsIncludes??
*
- * // callModules('init', $base)
+ * // usage: $this->callModules('init', $base)
*
*/
- function callModules($fn, $base)
- {
- foreach(explode(',',$this->appModules) as $m) {
- $cls = 'Pman_'. $m . '_Pman';
- if (!file_exists($this->rootDir . '/'.str_replace('_','/', $cls). '.php')) {
- continue;
- }
- require_once str_replace('_','/', $cls). '.php';
- $c = new $cls();
- if (method_exists($c, $fn)) {
- $c->{$fn}($this,$base);
+ function callModules($fn)
+ {
+ $args = func_get_args();
+ array_shift($args);
+ foreach(explode(',',$this->appModules) as $m) {
+ $cls = 'Pman_'. $m . '_Pman';
+ if (!file_exists($this->rootDir . '/'.str_replace('_','/', $cls). '.php')) {
+ continue;
+ }
+ require_once str_replace('_','/', $cls). '.php';
+ $c = new $cls();
+ if (method_exists($c, $fn)) {
+ call_user_func_array(array($c,$fn),$args);
}
}
}
{
$this->init();
if (empty($base)) {
- $this->callModules('init', $base);
- // $this->initModules($base);
+ $this->callModules('init', $this, $base);
}
//$this->allowSignup= empty($opts['allowSignup']) ? 0 : 1;
*/
function outputCSSIncludes() // includes on CSS links.
{
+
$mods = $this->modulesList();
+ $this->callModules('outputCSSIncludes', $this);
+
foreach($mods as $mod) {
// add the css file..
$this->outputCSSDir("Pman/$mod","*.css");
}
- $this->callModules('outputCSSIncludes', false);
+
}