public static function sysReady() { if (Themes::getCurrentTheme()->hasInterface()) { if (Themes::getCurrentTheme()->hasInterfaceName()) { $name = Themes::getCurrentTheme()->getInterfaceName(); } Admin::registerPage('theme-settings', $name ? $name : __('admin', 'theme-settings'), 'ThemeInterface::displayInterface', 2); } }
<?php Admin::registerPage('content', __('admin', 'content-management'), 'ContentPage::display', -10); AdminSidebar::registerForPage('content', 'ContentPage::createContent'); AdminSidebar::registerForPage('content/edit-page', 'ContentPage::createContent', -9); AdminSidebar::registerForPage('content/create-page', 'ContentPage::createContent', -9); //AdminSidebar::registerForPage('content', 'EditPage::pageInfoBlock', -1); class ContentPage { public static $navArray; public static $reorderingTemp; public static function updateFromPOST() { $conn = Database::getHandle(); $statement = $conn->prepare("UPDATE `" . TH_DB_PREFIX . "content` SET weight = ?, parent_id = ? WHERE content_id = ?"); $conn->beginTransaction(); $order = json_decode($_POST['order'], true); foreach ($order as $id => $arr) { $parent_id = $arr['parent_id']; $weight = $arr['weight']; if (!$statement->execute(array($weight, $parent_id, $id))) { print_r(Database::getHandle()->errorInfo()); } } $conn->commit(); echo "ok"; exit; } public static function display() { if ($_GET['do'] == 'reorder') {
<?php Admin::registerPage('plugins', __('admin', 'plugin-management'), 'PluginAdminPage::display', 1); AdminSidebar::registerForPage('plugins', 'PluginAdminPage::getMore'); class PluginAdminPage { public static function pluginSort($a, $b) { $raw[] = $a[0][0]; $raw[] = $b[0][0]; $raw2 = $raw; natcasesort($raw); if ($raw2 === $raw) { return -1; } else { return 1; } } public static function display() { if (array_key_exists('action', $_GET) && !empty($_GET['name'])) { if ($_GET['action'] == 'disable') { DB::update('plugins', array('active' => '0'), null, array('name = ?', $_GET['name'])); } if ($_GET['action'] == 'enable') { $smt = DB::select('plugins', '*', array('name = ?', $_GET['name'])); $row = $smt->fetch(PDO::FETCH_ASSOC); if ($row === false) { DB::insert('plugins', array('name' => $_GET['name'], 'info' => serialize(array()), 'active' => '1')); } else { DB::update('plugins', array('active' => '1'), null, array('name = ?', $_GET['name']));
<?php Admin::registerPage('logout', __('admin', 'logout'), 'cc_logout', 10, false);
<?php Admin::registerPage('settings', __('admin', 'settings'), 'SettingsPage::display', 2); // AdminSidebar::registerForPage('plugins', 'PluginAdminPage::getMore'); class SettingsPage { public static function display() { $r = ""; if ($_POST['cc_form'] == 'settings') { $name_lookup = array(); Database::beginTransaction(); foreach ($_POST as $key => $value) { if ($key == 'cc_form') { continue; } if (substr($key, 0, 12) == 'cc_settings_') { $name_lookup[substr($key, 12)] = explode('|', $value); continue; } $setting_name = $key; //var_dump(array_key_exists($key, $name_lookup),$name_lookup); if (!array_key_exists($setting_name, $name_lookup)) { continue; } if ($key == 'clean-urls') { $value = (bool) $value; } Database::update('settings', array('data'), array(serialize($value)), array('package = ? AND name = ?', $name_lookup[$setting_name][1], $name_lookup[$setting_name][0])); } $r .= Message::success(__('admin', 'settings-saved'));
<?php Admin::registerPage('users', __('admin', 'user-management'), 'UsersPage::display', 3); AdminSidebar::registerForPage(array('users', 'users/add-user', 'users/edit-user', 'users/add-group', 'users/edit-group'), 'UsersPage::addUser'); AdminSidebar::registerForPage(array('users', 'users/add-group', 'users/edit-group', 'users/add-user', 'users/edit-user'), 'UsersPage::addGroup', -1); AdminSidebar::registerForPage(array('users', 'users/add-group', 'users/edit-group', 'users/add-user', 'users/edit-user'), 'UsersPage::viewAll', -2); class UsersPage { public static function display() { $users = Database::select('users', '*', array('type = ?', 'user'), array('name', 'ASC')); $groups = Database::select('users', '*', array('type = ?', 'group'), array('name', 'ASC')); $groups_array = array(); $groups_table = new Table("groups", array('', 'actions')); $groups_table->addHeader(array(__('admin', "group-name"), __('admin', "actions"))); foreach ($groups->fetchAll(PDO::FETCH_ASSOC) as $key => $value) { $group_array[$value['users_id']] = $value['name']; $groups_table->addRow(array($value['name'], icon('group_edit', Admin::link('users/edit-group', array('id' => $value['users_id'])), false, array('rel' => 'tooltip', 'title' => StringUtils::escapeForHTMLAttr(sprintf(__('admin', 'edit-specific'), $value['name'])))) . icon('group_delete', Admin::link('users/delete', array('id' => $value['users_id'], 'type' => 'group')), false, array('class' => 'delete-link', 'rel' => 'tooltip', 'title' => StringUtils::escapeForHTMLAttr(sprintf(__('admin', 'delete-specific'), $value['name'])))))); } $groups_table = $groups_table->html(); $users_table = new Table("users", array('', '', 'actions')); $users_table->addHeader(array(__('admin', 'name'), __('admin', 'group'), __('admin', 'actions'))); foreach ($users->fetchAll(PDO::FETCH_ASSOC) as $key => $value) { $users_table->addRow(array($value['name'], $group_array[$value['group']], icon('user_edit', Admin::link('users/edit-user', array('id' => $value['users_id'])), false, array('rel' => 'tooltip', 'title' => StringUtils::escapeForHTMLAttr(sprintf(__('admin', 'edit-specific'), $value['name'])))) . icon('user_delete', Admin::link('users/delete', array('id' => $value['users_id'], 'type' => 'user')), false, array('class' => 'delete-link', 'rel' => 'tooltip', 'title' => StringUtils::escapeForHTMLAttr(sprintf(__('admin', 'delete-specific'), $value['name'])))))); } $r = "<h3>" . __('admin', 'users') . "</h3>" . $users_table->html() . "<h3>" . __('admin', 'groups') . "</h3>" . $groups_table; return array(__('admin', 'user-management'), $r); } public static function addUser() { return sprintf("<a href='%s' class='action'>%s%s</a>", Admin::link('users/add-user'), icon('user_add'), __('admin', 'add-a-user'));