1: <?php
2: 3: 4: 5: 6: 7: 8: 9:
10:
11: if (!defined('XOOPS_ROOT_PATH')) exit();
12:
13: 14: 15: 16: 17:
18: class LegacyNon_installation_moduleHandler extends XoopsObjectHandler
19: {
20: 21: 22: 23:
24: var $_mXoopsModules = array();
25:
26: 27: 28:
29: var $_mExclusions = array(".", "..", "CVS");
30:
31: function LegacyNon_installation_moduleHandler(&$db)
32: {
33: parent::XoopsObjectHandler($db);
34: $this->_setupObjects();
35: }
36:
37: 38: 39:
40: function _setupObjects()
41: {
42: if (count($this->_mXoopsModules) == 0) {
43: if ($handler = opendir(XOOPS_MODULE_PATH)) {
44: while (($dir = readdir($handler)) !== false) {
45: if (!in_array($dir, $this->_mExclusions) && is_dir(XOOPS_MODULE_PATH . "/" . $dir)) {
46: $module =& $this->get($dir);
47: if ($module !== false ) {
48: $this->_mXoopsModules[] =& $module;
49: }
50: unset($module);
51: }
52: }
53: }
54: }
55: }
56:
57: 58: 59: 60: 61: 62:
63: function &get($dirname)
64: {
65: $ret = false;
66:
67: if (!file_exists(XOOPS_MODULE_PATH . "/" . $dirname . "/xoops_version.php")) {
68: return $ret;
69: }
70:
71: $moduleHandler =& xoops_gethandler('module');
72:
73: $check =& $moduleHandler->getByDirname($dirname);
74: if (is_object($check)) {
75: return $ret;
76: }
77:
78: $module =& $moduleHandler->create();
79: $module->loadInfoAsVar($dirname);
80:
81: return $module;
82: }
83:
84: function &getObjects($criteria=null)
85: {
86: return $this->_mXoopsModules;
87: }
88:
89: function &getObjectsFor2ndInstaller()
90: {
91: $ret = array();
92:
93: foreach (array_keys($this->_mXoopsModules) as $key) {
94: if (empty($this->_mXoopsModules[$key]->modinfo['disable_legacy_2nd_installer'])) {
95: $ret[] =& $this->_mXoopsModules[$key];
96: }
97: }
98:
99: return $ret;
100: }
101: }
102:
103: ?>
104: