public function getUnInstalled() { $installed = (array) $this->getInstalled(); $folders = dir::folders(ZPATH_MODULES, '.', false); $folders = array_diff($folders, array_keys($installed)); $modules = array(); foreach ($folders as $folder) { $modulePath = ZPATH_MODULES . DS . $folder; $moduleUrl = url::modules() . '/' . $folder; $moduleFile = $modulePath . DS . 'module.php'; if (file::exists($moduleFile)) { $m = (include $moduleFile); $m['path'] = '$modules/' . $folder; $m['url'] = '$modules/' . $folder; if (!isset($m['icon'])) { if (!file::exists($modulePath . '/icon.png')) { $m['icon'] = url::theme() . '/image/skin/none.png'; } else { $m['icon'] = $moduleUrl . '/icon.png'; } } $modules[$m['id']] = $m; } } return $modules; }
public function notInstalled() { $datalist = (array) $this->datalist(); $folders = dir::folders(ZOTOP_MODULES, '.', false); $folders = array_diff($folders, array_keys($datalist)); $modules = array(); foreach ($folders as $folder) { $modulePath = ZOTOP_MODULES . DS . $folder; $moduleUrl = url::modules() . '/' . $folder; $moduleFile = $modulePath . DS . 'module.php'; if (file::exists($moduleFile)) { $m = (include $moduleFile); if (!isset($m['icon'])) { $m['icon'] = $moduleUrl . '/icon.gif'; if (!file::exists($m['icon'])) { $m['icon'] = url::theme() . '/image/icon/module.gif'; } } $modules[$m['id']] = $m; } } return $modules; }
public static function decode($url) { $url = strtr($url, array('$root' => url::root(), '$system' => url::system(), '$theme' => url::theme(), '$modules' => url::modules(), '$this' => url::controller(), '$common' => url::common())); return $url; }