/** * Output the link areas that are displayed in the main admin toolbar and admin_main * @param bool $in_panel Whether or not the links will be displayed in the toolbar * @static */ static function AdminPanelLinks($in_panel = true) { global $langmessage, $page, $gpAdmin; $expand_class = 'expand_child'; $id_piece = ''; if (!$in_panel) { $expand_class = 'expand_child_click'; $id_piece = '_click'; } //current page if ($in_panel && !isset($GLOBALS['GP_ARRANGE_CONTENT']) && $page->pagetype != 'admin_display') { echo '<div class="panelgroup" id="current_page_panel">'; self::PanelHeading($in_panel, $langmessage['Current Page'], 'icon_page_gear', 'cur'); echo '<ul class="submenu">'; echo '<li class="submenu_top"><a class="submenu_top">' . $langmessage['Current Page'] . '</a></li>'; foreach ($page->admin_links as $label => $link) { echo '<li>'; if (is_array($link)) { echo call_user_func_array(array('common', 'Link'), $link); /* preferred */ } elseif (is_numeric($label)) { echo $link; //just a text label } elseif (empty($link)) { echo '<span>'; echo $label; echo '</span>'; } else { echo '<a href="' . $link . '">'; echo $label; echo '</a>'; } echo '</li>'; } echo '<li class="' . $expand_class . '" id="editable_areas_list"><a>' . $langmessage['Editable Areas'] . '</a>'; echo '<ul class="in_window">'; if ($page->pagetype == 'display') { echo '<li class="separator">'; echo common::Link($page->title, $langmessage['Manage Sections'] . '...', 'cmd=ManageSections', array('data-cmd' => 'inline_edit_generic', 'data-arg' => 'manage_sections')); echo '</li>'; } echo '<li style="display:none"></li>'; //for valid html echo '</ul>'; echo '</li>'; echo '</ul>'; echo '</div>'; echo '</div>'; } //content if ($links = admin_tools::GetAdminGroup('content')) { echo '<div class="panelgroup" id="panelgroup_content' . $id_piece . '">'; self::PanelHeading($in_panel, $langmessage['Content'], 'icon_page', 'con'); echo '<ul class="submenu">'; echo '<li class="submenu_top"><a class="submenu_top">' . $langmessage['Content'] . '</a></li>'; echo $links; echo '</ul>'; echo '</div>'; echo '</div>'; } //appearance if ($links = self::GetAppearanceGroup($in_panel)) { echo '<div class="panelgroup" id="panelgroup_appearance' . $id_piece . '">'; self::PanelHeading($in_panel, $langmessage['Appearance'], 'icon_app', 'app'); echo '<ul class="submenu">'; echo '<li class="submenu_top"><a class="submenu_top">' . $langmessage['Appearance'] . '</a></li>'; echo $links; echo '</ul>'; echo '</div>'; echo '</div>'; } //add-ons $links = admin_tools::GetAddonLinks($in_panel); if (!empty($links)) { echo '<div class="panelgroup" id="panelgroup_addons' . $id_piece . '">'; self::PanelHeading($in_panel, $langmessage['plugins'], 'icon_plug', 'add'); echo '<ul class="submenu">'; echo '<li class="submenu_top"><a class="submenu_top">' . $langmessage['plugins'] . '</a></li>'; echo $links; echo '</ul>'; echo '</div>'; echo '</div>'; } //settings if ($links = admin_tools::GetAdminGroup('settings')) { echo '<div class="panelgroup" id="panelgroup_settings' . $id_piece . '">'; self::PanelHeading($in_panel, $langmessage['Settings'], 'icon_edapp', 'set'); echo '<ul class="submenu">'; echo '<li class="submenu_top"><a class="submenu_top">' . $langmessage['Settings'] . '</a></li>'; echo $links; echo '</ul>'; echo '</div>'; echo '</div>'; } //updates if (count(self::$new_versions) > 0) { ob_start(); if (gp_remote_update && isset(self::$new_versions['core'])) { echo '<li>'; echo '<a href="' . common::GetDir('/include/install/update.php') . '">gpEasy ' . self::$new_versions['core'] . '</a>'; echo '</li>'; } foreach (self::$new_versions as $addon_id => $new_addon_info) { if (!is_numeric($addon_id)) { continue; } $label = $new_addon_info['name'] . ': ' . $new_addon_info['version']; if ($new_addon_info['type'] == 'theme' && gp_remote_themes) { $url = 'Themes'; } elseif ($new_addon_info['type'] == 'plugin' && gp_remote_plugins) { $url = 'Plugins'; } else { continue; } echo '<li><a href="' . addon_browse_path . '/' . $url . '/' . $addon_id . '" data-cmd="remote">' . $label . '</a></li>'; } $list = ob_get_clean(); if (!empty($list)) { echo '<div class="panelgroup" id="panelgroup_versions' . $id_piece . '">'; self::PanelHeading($in_panel, $langmessage['updates'], 'icon_rfrsh', 'upd'); echo '<ul class="submenu">'; echo '<li class="submenu_top"><a class="submenu_top">' . $langmessage['updates'] . '</a></li>'; echo $list; echo '</ul>'; echo '</div>'; echo '</div>'; } } //username echo '<div class="panelgroup" id="panelgroup_user' . $id_piece . '">'; self::PanelHeading($in_panel, $gpAdmin['useralias'], 'icon_user', 'use'); echo '<ul class="submenu">'; echo '<li class="submenu_top"><a class="submenu_top">' . $gpAdmin['username'] . '</a></li>'; admin_tools::GetFrequentlyUsed($in_panel); echo '<li>'; echo common::Link('Admin_Preferences', $langmessage['Preferences']); echo '</li>'; echo '<li>'; echo common::Link($page->title, $langmessage['logout'], 'cmd=logout', array('data-cmd' => 'creq')); echo '</li>'; echo '<li>'; echo common::Link('Admin_About', 'About gpEasy'); echo '</li>'; echo '</ul>'; echo '</div>'; echo '</div>'; //gpEasy stats echo '<div class="panelgroup" id="panelgroup_gpeasy' . $id_piece . '">'; self::PanelHeading($in_panel, $langmessage['Performance'], 'icon_chart', 'gpe'); echo '<ul class="submenu">'; echo '<li class="submenu_top"><a class="submenu_top">' . $langmessage['Performance'] . '</a></li>'; echo '<li><a><span gpeasy-memory-usage>?</span> Memory</a></li>'; echo '<li><a><span gpeasy-memory-max>?</span> Max Memory</a></li>'; echo '<li><a><span gpeasy-seconds>?</span> Seconds</a></li>'; echo '<li><a><span gpeasy-ms>?</span> Milliseconds</a></li>'; echo '<li><a>0 DB Queries</a></li>'; echo '</ul>'; echo '</div>'; echo '</div>'; //resources if ($page->pagetype === 'admin_display') { echo '<div class="panelgroup" id="panelgroup_resources' . $id_piece . '">'; self::PanelHeading($in_panel, $langmessage['resources'], 'icon_page_gear', 'res'); echo '<ul class="submenu">'; if (gp_remote_plugins && admin_tools::HasPermission('Admin_Addons')) { echo '<li>' . common::Link('Admin_Addons/Remote', $langmessage['Download Plugins']) . '</li>'; } if (gp_remote_themes && admin_tools::HasPermission('Admin_Theme_Content')) { echo '<li>' . common::Link('Admin_Theme_Content/Remote', $langmessage['Download Themes']) . '</li>'; } echo '<li><a href="http://gpeasy.com/Forum">Support Forum</a></li>'; echo '<li><a href="http://gpeasy.com/Services">Service Providers</a></li>'; echo '<li><a href="http://gpeasy.com">Official gpEasy Site</a></li>'; echo '<li><a href="https://github.com/oyejorge/gpEasy-CMS/issues">Report A Bug</a></li>'; echo '</ul>'; echo '</div>'; echo '</div>'; if ($in_panel) { echo '<div class="gpversion">'; echo 'gpEasy ' . gpversion; echo '</div>'; } } }
/** * Output the link areas that are displayed in the main admin toolbar and admin_main * @param bool $in_panel Whether or not the links will be displayed in the toolbar * @param array $new_versions Data about newly available versions of gpEasy and addons * @static */ function AdminPanelLinks($in_panel = true, $new_versions = array()) { global $langmessage, $page, $gpAdmin, $config; $group2 = '<div class="panelgroup2 in_window" %s>'; //current page if ($in_panel && !isset($GLOBALS['GP_ARRANGE_CONTENT'])) { echo '<div class="panelgroup" id="current_page_panel">'; if (!$in_panel) { echo '<span>' . $langmessage['Current Page'] . '</span>'; echo '<div class="panelgroup2">'; } else { echo '<a class="toplink icon_page_gear" name="toplink" rel="cur">'; echo '<span>' . $langmessage['Current Page'] . '</span>'; echo '</a>'; if ($gpAdmin['gpui_vis'] == 'cur') { echo '<div class="panelgroup2 in_window">'; } else { echo '<div class="panelgroup2 in_window nodisplay">'; } } echo '<ul class="submenu">'; echo '<li class="submenu_top"><a class="submenu_top">' . $langmessage['Current Page'] . '</a></li>'; foreach ($page->admin_links as $label => $link) { echo '<li>'; if (is_array($link)) { echo call_user_func_array(array('common', 'Link'), $link); /* preferred */ } elseif (is_numeric($label)) { echo $link; //just a text label } elseif (empty($link)) { echo '<span>'; echo $label; echo '</span>'; } else { echo '<a href="' . $link . '">'; echo $label; echo '</a>'; } echo '</li>'; } echo '<li class="expand_child"><a>' . $langmessage['Editable Areas'] . '</a>'; echo '<ul class="in_window" id="editable_areas_list">'; echo '<li><a>empty</a></li>'; echo '</ul>'; echo '</li>'; echo '</ul>'; echo '</div>'; echo '</div>'; } //content if ($links = admin_tools::GetAdminGroup('content')) { echo '<div class="panelgroup">'; $label = '<span>' . $langmessage['Content'] . '</span>'; if (!$in_panel) { echo '<span class="icon_page">' . $label . '</span>'; echo '<div class="panelgroup2">'; } else { echo '<a class="toplink icon_page" name="toplink" rel="con">'; echo $label; echo '</a>'; if ($gpAdmin['gpui_vis'] == 'con') { echo '<div class="panelgroup2 in_window">'; } else { echo '<div class="panelgroup2 in_window nodisplay">'; } } echo '<ul class="submenu">'; echo '<li class="submenu_top"><a class="submenu_top">' . $langmessage['Content'] . '</a></li>'; echo $links; echo '</ul>'; echo '</div>'; echo '</div>'; } //appearance if ($links = admin_tools::GetAdminGroup('appearance')) { echo '<div class="panelgroup">'; $label = '<span>' . $langmessage['Appearance'] . '</span>'; if (!$in_panel) { echo '<span class="icon_app">' . $label . '</span>'; echo '<div class="panelgroup2">'; } else { echo '<a class="toplink icon_app" name="toplink" rel="app">'; echo $label; echo '</a>'; if ($gpAdmin['gpui_vis'] == 'app') { echo '<div class="panelgroup2 in_window">'; } else { echo '<div class="panelgroup2 in_window nodisplay">'; } } echo '<ul class="submenu">'; echo '<li class="submenu_top"><a class="submenu_top">' . $langmessage['Appearance'] . '</a></li>'; echo $links; echo '</ul>'; echo '</div>'; echo '</div>'; } //add-ons $links = admin_tools::GetAddonLinks($in_panel); if (!empty($links)) { echo '<div class="panelgroup">'; $label = '<span>' . $langmessage['plugins'] . '</span>'; if (!$in_panel) { echo '<span class="icon_plug">' . $label . '</span>'; echo '<div class="panelgroup2">'; } else { echo '<a class="toplink icon_plug" name="toplink" rel="add">'; echo $label; echo '</a>'; if ($gpAdmin['gpui_vis'] == 'add') { echo '<div class="panelgroup2 in_window">'; } else { echo '<div class="panelgroup2 in_window nodisplay">'; } } echo '<ul class="submenu">'; echo '<li class="submenu_top"><a class="submenu_top">' . $langmessage['plugins'] . '</a></li>'; echo $links; echo '</ul>'; echo '</div>'; echo '</div>'; } //settings if ($links = admin_tools::GetAdminGroup('settings')) { echo '<div class="panelgroup">'; $label = '<span>' . $langmessage['Settings'] . '</span>'; if (!$in_panel) { echo '<span class="icon_cog">' . $label . '</span>'; echo '<div class="panelgroup2">'; } else { echo '<a class="toplink icon_cog" name="toplink" rel="set">'; echo $label; echo '</a>'; if ($gpAdmin['gpui_vis'] == 'set') { echo '<div class="panelgroup2 in_window">'; } else { echo '<div class="panelgroup2 in_window nodisplay">'; } } echo '<ul class="submenu">'; echo '<li class="submenu_top"><a class="submenu_top">' . $langmessage['Settings'] . '</a></li>'; echo $links; echo '</ul>'; echo '</div>'; echo '</div>'; } //updates if (count($new_versions) > 0) { echo '<div class="panelgroup">'; $label = '<span>' . $langmessage['updates'] . '</span>'; if (!$in_panel) { echo '<span class="icon_rfrsh">' . $label . '</span>'; echo '<div class="panelgroup2">'; } else { echo '<a class="toplink icon_rfrsh" name="toplink" rel="upd">'; echo $label; echo '</a>'; if ($gpAdmin['gpui_vis'] == 'upd') { echo '<div class="panelgroup2 in_window">'; } else { echo '<div class="panelgroup2 in_window nodisplay">'; } } echo '<ul class="submenu">'; echo '<li class="submenu_top"><a class="submenu_top">' . $langmessage['updates'] . '</a></li>'; if (isset($new_versions['core'])) { echo '<li>'; echo '<a href="' . common::GetDir('/include/install/update.php') . '">gpEasy ' . $new_versions['core'] . '</a>'; echo '</li>'; } foreach ($new_versions as $addon_id => $new_addon_info) { if (!is_numeric($addon_id)) { continue; } $label = $new_addon_info['name'] . ': ' . $new_addon_info['version']; if ($new_addon_info['type'] == 'theme') { echo '<li>' . common::Link('Admin_Theme_Content', $label, 'cmd=remote') . '</li>'; } elseif ($new_addon_info['type'] == 'plugin') { echo '<li>' . common::Link('Admin_Addons', $label, 'cmd=remote') . '</li>'; } else { continue; } } echo '</ul>'; echo '</div>'; echo '</div>'; } //username echo '<div class="panelgroup">'; $label = '<span>' . $gpAdmin['username'] . '</span>'; if (!$in_panel) { echo '<span class="icon_user">' . $label . '</span>'; echo '<div class="panelgroup2">'; } else { echo '<a class="toplink icon_user" name="toplink" rel="use">'; echo $label; echo '</a>'; if ($gpAdmin['gpui_vis'] == 'use') { echo '<div class="panelgroup2 in_window">'; } else { echo '<div class="panelgroup2 in_window nodisplay">'; } } echo '<ul class="submenu">'; echo '<li class="submenu_top"><a class="submenu_top">' . $gpAdmin['username'] . '</a></li>'; admin_tools::GetFrequentlyUsed($in_panel); echo '<li>'; echo common::Link('Admin_Preferences', $langmessage['Preferences'], '', 'name="gpabox"'); echo '</li>'; echo '<li>'; echo common::Link($page->title, $langmessage['logout'], 'cmd=logout', ' name="creq" '); echo '</li>'; echo '<li>'; echo common::Link('Admin_About', 'About gpEasy', '', ' name="gpabox" '); echo '</li>'; echo '</ul>'; echo '</div>'; echo '</div>'; }