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