[Openfirst-cvscommit] base/includes Module.php,1.11,1.12
Brought to you by:
xtimg
From: Jamie <ast...@us...> - 2005-11-22 16:23:45
|
Update of /cvsroot/openfirst/base/includes In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv22763/includes Modified Files: Module.php Log Message: ModuleManager tracks current module now. (An effort to make sure that if a module uses there own class, it will be used instead of w/e globals.php uses.) Index: Module.php =================================================================== RCS file: /cvsroot/openfirst/base/includes/Module.php,v retrieving revision 1.11 retrieving revision 1.12 diff -C2 -d -r1.11 -r1.12 *** Module.php 19 Oct 2005 03:58:34 -0000 1.11 --- Module.php 22 Nov 2005 16:23:37 -0000 1.12 *************** *** 38,42 **** */ class ModuleManager { ! /*private*/ var $ids, $dirs, $modules; /** Returns the ID of the module in the dir. --- 38,42 ---- */ class ModuleManager { ! /*private*/ var $ids, $dirs, $modules, $objs = array(), $current; /** Returns the ID of the module in the dir. *************** *** 85,105 **** $dir = $mod->getDir(); $id = $mod->getID(); ! if (!isset($this->ids[$id])) $this->ids[$id] = array(); ! $this->ids[$id][] = $dir; ! $this->dirs[$dir] = $id; $this->modules[$dir] =& $mod; } function &addModuleFromDir($dir) { ! $mod =& Module::createFromDir($dir); ! $dir = $mod->getDir(); ! $id = $mod->getID(); ! if (!isset($this->ids[$id])) $this->ids[$id] = array(); ! $this->ids[$id][] = $dir; ! $this->dirs[$dir] = $id; ! $this->modules[$dir] =& $mod; return $mod; } function getDirs() { if (is_array($this->modules)) { --- 85,119 ---- $dir = $mod->getDir(); $id = $mod->getID(); ! if (!isset($this->modules[$dir])) { ! if (!isset($this->ids[$id])) $this->ids[$id] = array(); ! $this->ids[$id][] = $dir; ! $this->dirs[$dir] = $id; ! } $this->modules[$dir] =& $mod; } function &addModuleFromDir($dir) { ! if (!isset($this->modules[$dir])) { ! $mod =& Module::createFromDir($dir); ! $dir = $mod->getDir(); ! $id = $mod->getID(); ! if (!isset($this->ids[$id])) $this->ids[$id] = array(); ! $this->ids[$id][] = $dir; ! $this->dirs[$dir] = $id; ! $this->modules[$dir] =& $mod; ! } else { ! $mod =& $this->modules[$dir]; ! } return $mod; } + function setCurrent($dir) { + $this->current = $dir; + } + + function &getCurrent() { + return $this->getModuleFromDir($this->current); + } + function getDirs() { if (is_array($this->modules)) { *************** *** 117,122 **** function Module($dir) { global $ogDB; ! $sql = 'SELECT * FROM '.$ogDB->quoteTable('config').' WHERE '.$ogDB->quoteFDPairs(array('dir'=>$dir), ' AND ').' LIMIT 0,1'; ! $res = $ogDB->query($sql); $mod = $ogDB->fetchObject($res); $ogDB->freeResult($res); --- 131,135 ---- function Module($dir) { global $ogDB; ! $res = $ogDB->select('config', '*', array('dir'=>$dir), array('LIMIT' => '0,1')); $mod = $ogDB->fetchObject($res); $ogDB->freeResult($res); *************** *** 148,158 **** /*** STATIC FUNCTIONS ***/ - /** Creates a Module object from a directory in the oF directory. - * This isn't actually possible, since the same module can have multiple dirs - */ - /*static*/ /*function createFromID($ID) { - return new Module($ID); - }*/ - /*static*/ function createFromDir($Dir) { return new Module($Dir); --- 161,164 ---- |