$parent is a optional value to indicate them inheritance. If $parent is null / not set, we simply fall back to the standard behavior, by using 'default'. $priority is an integer. Modules are sorted by priority and name. Lowest priority comes first. This property is currently ignored when dealing with themes. @param name string Module name @param desc string Module description @param author string Module author name @param version string Module version @param parent string Module parent @param priority integer Module priority */ public function registerModule($name,$desc,$author,$version,$parent = null,$priority = 1000) { if ($this->id) { $this->modules[$this->id] = array( 'root' => $this->mroot, 'name' => $name, 'desc' => $desc, 'author' => $author, 'version' => $version, 'parent' => $parent, 'priority' => 1000, 'root_writable' => is_writable($this->mroot) ); } } /** Loads namespace $ns specific file for module with ID $id Note : actually, only 'public' namespace is supported with themes. @param id string Module ID @param ns string Namespace name */ public function loadNsFile($id,$ns=null) { switch ($ns) { case 'public': $parent = $this->modules[$id]['parent']; if ($parent) { // This is not a real cascade - since we don't call loadNsFile -, // thus limiting inclusion process. // TODO : See if we have to change this. $this->loadModuleFile($this->modules[$parent]['root'].'/_public.php'); } $this->loadModuleFile($this->modules[$id]['root'].'/_public.php'); break; } } } ?>