<?php Admin::registerSubpage('content', 'edit-page', __('admin', 'edit-page'), 'EditPage::display'); AdminSidebar::registerForPage('content/edit-page', 'EditPage::viewAll', -10); AdminSidebar::registerForPage('content/edit-page', 'EditPage::fileUploadBlock'); AdminSidebar::registerForPage('content/edit-page', 'EditPage::viewPage', -10); AdminSidebar::registerForPage('content/edit-page', 'EditPage::pageInfoBlock', -1); class EditPage { public static function viewAll() { return sprintf("<a href='%s' class='action'>%s%s</a>", Admin::link('content'), icon('pages_all'), __('admin', 'view-all-pages')); } public static function viewPage() { return sprintf("<a href='%s' target='_blank' class='action'>%s%s</a>", Node::fetchUrlForId($_GET['id']), icon('page_magnify'), __('admin', 'view-page-on-site')); } public static $invalid = false; public static $row = array(); public static function display() { $id = $_GET['id']; if (!is_numeric($id)) { $r = self::invalidIdError(); i18n::restore(); cc_redirect(Admin::link('content')); return array('Error', $r); } $pageInfo = Database::select('content', '*', array('content_id = ?', $id)); $row = $pageInfo->fetch(PDO::FETCH_ASSOC); if (!$row) {
<?php Admin::registerSubpage('users', 'add-group', __('admin', 'add-group'), 'AddGroupPage::display'); class AddGroupPage { public static function display() { $messages = ""; if ($_POST['cc_form'] === 'add-group') { $group = $_POST['group']; $rows = Database::select('users', 'name', array('name = ? AND type = ?', $group, 'group'), null, 1)->fetch(PDO::FETCH_ASSOC); if (!empty($rows)) { $messages .= Message::error(__('admin', 'group-in-use')); } else { $row = DB::select('users', array('data'), array('users_id = ?', $_GET['parent']))->fetch(PDO::FETCH_ASSOC); $inheritance = unserialize($row['data']); $inheritance = $inheritance['permissions']; $result = Database::insert('users', array('name' => filter('admin_add_group_name', $group), 'type' => 'group', 'group' => '-1', 'data' => serialize(filter('admin_add_group_data', array('permissions' => $inheritance))))); if ($result === 1) { $messages .= Message::success(__('admin', 'group-added')); } } } $form = new Form('self', 'post', 'add-group'); $form->startFieldset(__("admin", 'group-information')); $form->addInput(__('admin', 'group-name'), 'text', 'group', self::get('group')); $groups = Users::allGroups(); foreach ($groups as $key => $value) { $groups[$value->getId()] = $value->getName(); } $form->addSelectList(__('admin', 'inherit-permissions'), 'parent', $groups);
<?php Admin::registerSubpage('users', 'edit-group', __('admin', 'edit-group'), 'GroupPage::display', 3); class GroupPage { public static function display() { if (!is_numeric($_GET['id'])) { cc_redirect(Admin::link('users')); } if ($_POST['cc_form'] == 'edit-group') { $id = $_GET['id']; $previous = (array) unserialize(urldecode($_POST['previous'])); $group = $_POST['group']; $permissions = (array) $_POST['permissions']; $new = array_merge($previous, $permissions); foreach ($new as $k => $v) { if ($v == "1") { $new[$k] = true; } if (!array_key_exists($k, $permissions)) { $new[$k] = false; } } if (DB::update('users', array('name', 'data'), array($group, serialize(filter('admin_edit_group_data', array('permissions' => $new)))), array('users_id = ?', $id))) { $message = Message::success(__('admin', 'group-information-updated')); } else { $message = Message::error(__('admin', 'database-error')); } } $p = Permissions::getAll();
<?php Admin::registerSubpage('users', 'add-user', __('admin', 'add-user'), 'AddUserPage::display'); class AddUserPage { public static function display() { $messages = ""; if ($_POST['cc_form'] === 'add-user') { $username = $_POST['username']; $password = $_POST['password']; $cpassword = $_POST['confirm-password']; $group = $_POST['group']; if ($password != $cpassword) { $messages .= Message::error(__('admin', 'passwords-dont-match')); } else { $rows = Database::select('users', 'name', array('name = ? AND type = ?', $username, 'user'), null, 1)->fetch(PDO::FETCH_ASSOC); if (!empty($rows)) { $messages .= Message::error(__('admin', 'username-in-use')); } else { $hash = hash('whirlpool', $password); $result = Database::insert('users', array('name' => filter('admin_add_user_username', $username), 'value' => $hash, 'type' => 'user', 'group' => filter('admin_add_group', $group), 'data' => serialize(filter('admin_add_user_data', array())))); if ($result === 1) { $messages .= Message::success(__('admin', 'user-added')); } } } } $form = new Form('self', 'post', 'add-user'); $groups = Users::allGroups(); foreach ($groups as $key => $value) {
<?php Admin::registerSubpage('users', 'edit-user', __('admin', 'edit-user'), 'EditUserPage::display'); class EditUserPage { public static $row = array(); public static function display() { $id = $_GET['id']; if (!is_numeric($id)) { i18n::restore(); cc_redirect(Admin::link('users')); return 'redirected.'; } $messages = ""; if ($_POST['cc_form'] === 'edit-user') { $username = $_POST['name']; $password = $_POST['password']; $cpassword = $_POST['confirm-password']; $group = $_POST['group']; if ($password != $cpassword) { $messages .= Message::error(__('admin', 'passwords-dont-match')); } else { $result = Database::select('users', '*', array('users_id = ?', $id)); $row = $result->fetch(PDO::FETCH_ASSOC); $result = Database::select('users', '*', array('name = ?', $username)); if (!empty($result)) { $userRow = $result->fetch(PDO::FETCH_ASSOC); } else { $result = false; }
<?php Admin::registerSubpage('content', 'create-page', __('admin', 'add-page'), 'CreatePage::display', -10); AdminSidebar::registerForPage('content/create-page', 'EditPage::viewAll', -10); class CreatePage { public static $invalid = false; public static $row = array(); public static function display() { $type = $_GET['type']; $types = Content::contentTypes(); if (array_key_exists($type, $types) === false && array_key_exists($_POST['type'], $types) === false) { $opt_list = array(); foreach ($types as $single_type => $class) { $opt_list[$single_type] = call_user_func($class . '::name'); } $form = new Form('self', 'post', 'add_node_1'); $form->addSelectList(__('admin', 'content-type'), 'type', $opt_list, true, 'page'); $form->addSubmit('', 'continue', __('admin', 'continue')); return array(__('admin', 'add-page'), $form->endAndGetHTML()); } if (!$type && $_POST['type']) { if (array_key_exists('continue', $_POST)) { cc_redirect(Admin::link($_GET['page'], array('type' => $_POST['type']))); } else { return; } } AdminSidebar::registerForPage('content/create-page', 'EditPage::fileUploadBlock'); return Content::nodeDisplay('create_display', $type, array());