| 1: | <?php
|
| 2: | |
| 3: | |
| 4: | |
| 5: | |
| 6: | |
| 7: | |
| 8: | |
| 9: | |
| 10: |
|
| 11: |
|
| 12: | xoops_load('gui', 'system');
|
| 13: |
|
| 14: | |
| 15: | |
| 16: | |
| 17: | |
| 18: | |
| 19: | |
| 20: | |
| 21: | |
| 22: | |
| 23: | |
| 24: | |
| 25: | |
| 26: | |
| 27: |
|
| 28: |
|
| 29: | |
| 30: | |
| 31: |
|
| 32: | class XoopsGuiDefault extends XoopsSystemGui
|
| 33: | {
|
| 34: | |
| 35: | |
| 36: |
|
| 37: | public function __construct()
|
| 38: | {
|
| 39: | }
|
| 40: |
|
| 41: | |
| 42: | |
| 43: |
|
| 44: | public static function validate()
|
| 45: | {
|
| 46: | return true;
|
| 47: | }
|
| 48: |
|
| 49: | public function header()
|
| 50: | {
|
| 51: | parent::header();
|
| 52: |
|
| 53: | global $xoopsConfig, $xoopsUser, $xoopsModule, $xoTheme, $xoopsTpl, $xoopsDB;
|
| 54: | $tpl =& $this->template;
|
| 55: |
|
| 56: | $xoTheme->addScript('browse.php?Frameworks/jquery/jquery.js');
|
| 57: | $xoTheme->addScript(XOOPS_ADMINTHEME_URL . '/default/js/styleswitch.js');
|
| 58: | $xoTheme->addScript(XOOPS_ADMINTHEME_URL . '/default/js/formenu.js');
|
| 59: | $xoTheme->addScript(XOOPS_ADMINTHEME_URL . '/default/js/menu.js');
|
| 60: | $xoTheme->addScript(XOOPS_ADMINTHEME_URL . '/default/js/tooltip.js');
|
| 61: |
|
| 62: | $xoTheme->addScript(XOOPS_ADMINTHEME_URL . '/default/js/tabs.js');
|
| 63: | $xoTheme->addScript(XOOPS_ADMINTHEME_URL . '/default/js/tabs.slideshow.js');
|
| 64: |
|
| 65: | $xoTheme->addStylesheet(XOOPS_ADMINTHEME_URL . '/default/css/style.css');
|
| 66: | $xoTheme->addStylesheet(XOOPS_ADMINTHEME_URL . '/default/css/dark.css', array('title' => 'dark', 'media' => 'screen'));
|
| 67: | $xoTheme->addStylesheet(XOOPS_ADMINTHEME_URL . '/default/css/silver.css', array('title' => 'silver', 'media' => 'screen'));
|
| 68: | $xoTheme->addStylesheet(XOOPS_ADMINTHEME_URL . '/default/css/orange.css', array('title' => 'orange', 'media' => 'screen'));
|
| 69: |
|
| 70: | $tpl->assign('lang_cp', _CPHOME);
|
| 71: |
|
| 72: |
|
| 73: | $tpl->assign('lang_php_vesion', PHP_VERSION);
|
| 74: | $tpl->assign('lang_mysql_version', mysqli_get_server_info($xoopsDB->conn));
|
| 75: | $tpl->assign('lang_server_api', PHP_SAPI);
|
| 76: | $tpl->assign('lang_os_name', PHP_OS);
|
| 77: |
|
| 78: |
|
| 79: |
|
| 80: | $tpl->assign('allow_url_fopen', ini_get('allow_url_fopen') ? 'On' : 'Off');
|
| 81: | $tpl->assign('fsockopen', function_exists('fsockopen') ? 'On' : 'Off');
|
| 82: |
|
| 83: | $tpl->assign('post_max_size', ini_get('post_max_size'));
|
| 84: | $tpl->assign('max_input_time', ini_get('max_input_time'));
|
| 85: | $tpl->assign('output_buffering', ini_get('output_buffering'));
|
| 86: | $tpl->assign('max_execution_time', ini_get('max_execution_time'));
|
| 87: | $tpl->assign('memory_limit', ini_get('memory_limit'));
|
| 88: | $tpl->assign('file_uploads', ini_get('file_uploads') ? 'On' : 'Off');
|
| 89: | $tpl->assign('upload_max_filesize', ini_get('upload_max_filesize'));
|
| 90: | $tpl->assign('xoops_sitename', $xoopsConfig['sitename']);
|
| 91: |
|
| 92: |
|
| 93: |
|
| 94: |
|
| 95: | $menu = array();
|
| 96: | $menu[0]['link'] = XOOPS_URL;
|
| 97: | $menu[0]['title'] = _YOURHOME;
|
| 98: | $menu[0]['absolute'] = 1;
|
| 99: | $menu[1]['link'] = XOOPS_URL . '/admin.php?xoopsorgnews=1';
|
| 100: | $menu[1]['title'] = _OXYGEN_NEWS;
|
| 101: | $menu[1]['absolute'] = 1;
|
| 102: | $menu[1]['icon'] = XOOPS_ADMINTHEME_URL . '/default/images/xoops.png';
|
| 103: | $menu[2]['link'] = XOOPS_URL . '/user.php?op=logout';
|
| 104: | $menu[2]['title'] = _LOGOUT;
|
| 105: | $menu[2]['absolute'] = 1;
|
| 106: | $menu[2]['icon'] = XOOPS_ADMINTHEME_URL . '/default/images/logout.png';
|
| 107: | $tpl->append('navitems', array('link' => XOOPS_URL . '/admin.php', 'text' => _CPHOME, 'menu' => $menu));
|
| 108: |
|
| 109: |
|
| 110: | include __DIR__ . '/menu.php';
|
| 111: | if (empty($xoopsModule) || 'system' === $xoopsModule->getVar('dirname', 'n')) {
|
| 112: | $modpath = XOOPS_URL . '/admin.php';
|
| 113: | $modname = _OXYGEN_SYSOPTIONS;
|
| 114: | $modid = 1;
|
| 115: | $moddir = 'system';
|
| 116: |
|
| 117: | $mod_options = $adminmenu;
|
| 118: | foreach (array_keys($mod_options) as $item) {
|
| 119: | $mod_options[$item]['link'] = empty($mod_options[$item]['absolute']) ? XOOPS_URL . '/modules/' . $moddir . '/' . $mod_options[$item]['link'] : $mod_options[$item]['link'];
|
| 120: | $mod_options[$item]['icon'] = empty($mod_options[$item]['icon']) ? '' : XOOPS_ADMINTHEME_URL . '/default/' . $mod_options[$item]['icon'];
|
| 121: | unset($mod_options[$item]['icon_small']);
|
| 122: | }
|
| 123: | } else {
|
| 124: | $moddir = $xoopsModule->getVar('dirname', 'n');
|
| 125: | $modpath = XOOPS_URL . '/modules/' . $moddir;
|
| 126: | $modname = $xoopsModule->getInfo('name') . ' (' . $xoopsModule->getInfo('version') . ')';
|
| 127: | $modid = $xoopsModule->getVar('mid');
|
| 128: |
|
| 129: | $mod_options = $xoopsModule->getAdminMenu();
|
| 130: | foreach (array_keys($mod_options) as $item) {
|
| 131: | $mod_options[$item]['link'] = empty($mod_options[$item]['absolute']) ? XOOPS_URL . "/modules/{$moddir}/" . $mod_options[$item]['link'] : $mod_options[$item]['link'];
|
| 132: |
|
| 133: |
|
| 134: | $mod_options[$item]['icon'] = empty($mod_options[$item]['icon']) ? '' : (filter_var($mod_options[$item]['icon'], FILTER_VALIDATE_URL) ? $mod_options[$item]['icon'] : (XOOPS_URL . "/modules/{$moddir}/" . $mod_options[$item]['icon']));
|
| 135: | }
|
| 136: | }
|
| 137: |
|
| 138: | $tpl->assign('mod_options', $mod_options);
|
| 139: | $tpl->assign('modpath', $modpath);
|
| 140: | $tpl->assign('modname', $modname);
|
| 141: | $tpl->assign('modid', $modid);
|
| 142: | $tpl->assign('moddir', $moddir);
|
| 143: |
|
| 144: |
|
| 145: |
|
| 146: | $module_handler = xoops_getHandler('module');
|
| 147: | $criteria = new CriteriaCompo();
|
| 148: | $criteria->add(new Criteria('hasadmin', 1));
|
| 149: | $criteria->add(new Criteria('isactive', 1));
|
| 150: | $criteria->setSort('mid');
|
| 151: | $mods = $module_handler->getObjects($criteria);
|
| 152: |
|
| 153: | $menu = array();
|
| 154: |
|
| 155: | $moduleperm_handler = xoops_getHandler('groupperm');
|
| 156: | foreach ($mods as $mod) {
|
| 157: | $rtn = array();
|
| 158: | $modOptions = array();
|
| 159: | $sadmin = $moduleperm_handler->checkRight('module_admin', $mod->getVar('mid'), $xoopsUser->getGroups());
|
| 160: | if ($sadmin) {
|
| 161: | $info = $mod->getInfo();
|
| 162: | if (!empty($info['adminindex'])) {
|
| 163: | $rtn['link'] = XOOPS_URL . '/modules/' . $mod->getVar('dirname', 'n') . '/' . $info['adminindex'];
|
| 164: | } else {
|
| 165: | $rtn['link'] = XOOPS_URL . '/modules/system/admin.php?fct=preferences&op=showmod&mod=' . $mod->getVar('mid');
|
| 166: | }
|
| 167: | $rtn['title'] = htmlspecialchars($mod->name(), ENT_QUOTES);
|
| 168: | $rtn['absolute'] = 1;
|
| 169: | $rtn['url'] = XOOPS_URL . '/modules/' . $mod->getVar('dirname', 'n') . '/';
|
| 170: | $modOptions = $mod->getAdminMenu();
|
| 171: | $rtn['options'] = $modOptions;
|
| 172: |
|
| 173: | if (isset($info['icon']) && $info['icon'] !== '') {
|
| 174: | $rtn['icon'] = XOOPS_URL . '/modules/' . $mod->getVar('dirname', 'n') . '/' . $info['icon'];
|
| 175: | }
|
| 176: | $menu[] = $rtn;
|
| 177: | }
|
| 178: | }
|
| 179: | $tpl->append('navitems', array(
|
| 180: | 'link' => XOOPS_URL . '/modules/system/admin.php?fct=modulesadmin',
|
| 181: | 'text' => _AM_SYSTEM_MODULES,
|
| 182: | 'dir' => $mod->getVar('dirname', 'n'),
|
| 183: | 'menu' => $menu));
|
| 184: |
|
| 185: |
|
| 186: | $menu = array();
|
| 187: |
|
| 188: | $OPT = array();
|
| 189: | $OPT[] = array(
|
| 190: | 'link' => 'admin.php?fct=preferences&op=show&confcat_id=1',
|
| 191: | 'title' => _OXYGEN_GENERAL,
|
| 192: | 'absolute' => 1,
|
| 193: | 'icon' => XOOPS_ADMINTHEME_URL . '/default/icons/prefs_small.png');
|
| 194: | $OPT[] = array(
|
| 195: | 'link' => 'admin.php?fct=preferences&op=show&confcat_id=2',
|
| 196: | 'title' => _OXYGEN_USERSETTINGS,
|
| 197: | 'absolute' => 1,
|
| 198: | 'icon' => XOOPS_ADMINTHEME_URL . '/default/icons/prefs_small.png');
|
| 199: | $OPT[] = array(
|
| 200: | 'link' => 'admin.php?fct=preferences&op=show&confcat_id=3',
|
| 201: | 'title' => _OXYGEN_METAFOOTER,
|
| 202: | 'absolute' => 1,
|
| 203: | 'icon' => XOOPS_ADMINTHEME_URL . '/default/icons/prefs_small.png');
|
| 204: | $OPT[] = array(
|
| 205: | 'link' => 'admin.php?fct=preferences&op=show&confcat_id=4',
|
| 206: | 'title' => _OXYGEN_CENSOR,
|
| 207: | 'absolute' => 1,
|
| 208: | 'icon' => XOOPS_ADMINTHEME_URL . '/default/icons/prefs_small.png');
|
| 209: | $OPT[] = array(
|
| 210: | 'link' => 'admin.php?fct=preferences&op=show&confcat_id=5',
|
| 211: | 'title' => _OXYGEN_SEARCH,
|
| 212: | 'absolute' => 1,
|
| 213: | 'icon' => XOOPS_ADMINTHEME_URL . '/default/icons/prefs_small.png');
|
| 214: | $OPT[] = array(
|
| 215: | 'link' => 'admin.php?fct=preferences&op=show&confcat_id=6',
|
| 216: | 'title' => _OXYGEN_MAILER,
|
| 217: | 'absolute' => 1,
|
| 218: | 'icon' => XOOPS_ADMINTHEME_URL . '/default/icons/prefs_small.png');
|
| 219: | $OPT[] = array(
|
| 220: | 'link' => 'admin.php?fct=preferences&op=show&confcat_id=7',
|
| 221: | 'title' => _OXYGEN_AUTHENTICATION,
|
| 222: | 'absolute' => 1,
|
| 223: | 'icon' => XOOPS_ADMINTHEME_URL . '/default/icons/prefs_small.png');
|
| 224: | $OPT[] = array(
|
| 225: | 'link' => 'admin.php?fct=preferences&op=showmod&mod=1',
|
| 226: | 'title' => _OXYGEN_MODULESETTINGS,
|
| 227: | 'absolute' => 1,
|
| 228: | 'icon' => XOOPS_ADMINTHEME_URL . '/default/icons/prefs_small.png');
|
| 229: |
|
| 230: | $menu[] = array(
|
| 231: | 'link' => XOOPS_URL . '/modules/system/admin.php?fct=preferences',
|
| 232: | 'title' => _OXYGEN_SYSOPTIONS,
|
| 233: | 'absolute' => 1,
|
| 234: | 'url' => XOOPS_URL . '/modules/system/',
|
| 235: | 'options' => $OPT);
|
| 236: |
|
| 237: | foreach ($mods as $mod) {
|
| 238: | $rtn = array();
|
| 239: | $sadmin = $moduleperm_handler->checkRight('module_admin', $mod->getVar('mid'), $xoopsUser->getGroups());
|
| 240: | if ($sadmin && ($mod->getVar('hasnotification') || is_array($mod->getInfo('config')) || is_array($mod->getInfo('comments')))) {
|
| 241: | $rtn['link'] = XOOPS_URL . '/modules/system/admin.php?fct=preferences&op=showmod&mod=' . $mod->getVar('mid');
|
| 242: | $rtn['title'] = htmlspecialchars($mod->name(), ENT_QUOTES);
|
| 243: | $rtn['absolute'] = 1;
|
| 244: | $rtn['icon'] = XOOPS_ADMINTHEME_URL . '/gui/oxygen/icons/prefs_small.png';
|
| 245: | $menu[] = $rtn;
|
| 246: | }
|
| 247: | }
|
| 248: | $tpl->append('navitems', array(
|
| 249: | 'link' => XOOPS_URL . '/modules/system/admin.php?fct=preferences',
|
| 250: | 'text' => _OXYGEN_SITEPREF,
|
| 251: | 'dir' => $mod->getVar('dirname', 'n'),
|
| 252: | 'menu' => $menu));
|
| 253: |
|
| 254: |
|
| 255: | $menu = array();
|
| 256: | $menu[] = array(
|
| 257: | 'link' => 'https://xoops.org',
|
| 258: | 'title' => _OXYGEN_XOOPSPROJECT,
|
| 259: | 'absolute' => 1);
|
| 260: | $menu[] = array(
|
| 261: | 'link' => 'https://xoops.org',
|
| 262: | 'title' => _OXYGEN_WEBSITE,
|
| 263: | 'absolute' => 1,
|
| 264: | 'icon' => XOOPS_ADMINTHEME_URL . '/default/images/xoops.png');
|
| 265: | $menu[] = array(
|
| 266: | 'link' => 'https://xoops.org/modules/repository/',
|
| 267: | 'title' => _OXYGEN_XOOPSMODULES,
|
| 268: | 'absolute' => 1,
|
| 269: | 'icon' => XOOPS_ADMINTHEME_URL . '/default/images/xoops.png');
|
| 270: | $menu[] = array(
|
| 271: | 'link' => 'https://xoops.org/modules/extgallery/',
|
| 272: | 'title' => _OXYGEN_XOOPSTHEMES,
|
| 273: | 'absolute' => 1,
|
| 274: | 'icon' => XOOPS_ADMINTHEME_URL . '/default/images/tweb.png');
|
| 275: |
|
| 276: | $tpl->append('navitems', array('link' => XOOPS_URL . '/admin.php', 'text' => _OXYGEN_INTERESTSITES, 'menu' => $menu));
|
| 277: |
|
| 278: |
|
| 279: | if (file_exists($file = XOOPS_ADMINTHEME_PATH . '/default/language/' . $xoopsConfig['language'] . '/localsupport.php')) {
|
| 280: | $links = include XOOPS_ADMINTHEME_PATH . '/default/language/' . $xoopsConfig['language'] . '/localsupport.php';
|
| 281: | if (count($links) > 0) {
|
| 282: | $tpl->append('navitems', array('link' => XOOPS_URL . '/admin.php', 'text' => _OXYGEN_LOCALSUPPORT, 'menu' => $links));
|
| 283: | }
|
| 284: | }
|
| 285: |
|
| 286: | if (is_object($xoopsModule) || !empty($_GET['xoopsorgnews'])) {
|
| 287: | if (is_object($xoopsModule) && file_exists($file = XOOPS_ROOT_PATH . '/modules/' . $xoopsModule->getVar('dirname') . '/' . $xoopsModule->getInfo('adminmenu'))) {
|
| 288: | include $file;
|
| 289: | }
|
| 290: |
|
| 291: | return null;
|
| 292: | }
|
| 293: |
|
| 294: | foreach ($mods as $mod) {
|
| 295: | $sadmin = $moduleperm_handler->checkRight('module_admin', $mod->getVar('mid'), $xoopsUser->getGroups());
|
| 296: | if ($sadmin) {
|
| 297: | $rtn = array();
|
| 298: | $info = $mod->getInfo();
|
| 299: | if (!empty($info ['adminindex'])) {
|
| 300: | $rtn ['link'] = XOOPS_URL . '/modules/' . $mod->getVar('dirname', 'n') . '/' . $info ['adminindex'];
|
| 301: | } else {
|
| 302: | $rtn ['link'] = XOOPS_URL . '/modules/system/admin.php?fct=preferences&op=showmod&mod=' . $mod->getVar('mid');
|
| 303: | }
|
| 304: | $rtn ['title'] = htmlspecialchars($mod->getVar('name'), ENT_QUOTES);
|
| 305: | $rtn ['description'] = $mod->getInfo('description');
|
| 306: | $rtn ['absolute'] = 1;
|
| 307: | if (isset($info ['icon_big'])) {
|
| 308: | $rtn ['icon'] = XOOPS_URL . '/modules/' . $mod->getVar('dirname', 'n') . '/' . $info ['icon_big'];
|
| 309: | } elseif (isset($info ['image'])) {
|
| 310: | $rtn ['icon'] = XOOPS_URL . '/modules/' . $mod->getVar('dirname', 'n') . '/' . $info ['image'];
|
| 311: | }
|
| 312: |
|
| 313: | $tpl->append('modules', $rtn);
|
| 314: | }
|
| 315: | }
|
| 316: | }
|
| 317: | }
|
| 318: | |