function __construct() { // Настраиваем отображение для полей $this->setFieldsRightEdit("changeField(%item.id%, 'upd')"); $this->addFieldsEmptyRight(); $this->addFieldsEmptyRight(); $this->addFieldsRight('field_upd', lang::right('field_upd'), 'compose_image', "changeField(%item.id%, 'upd')"); $this->addFieldsRight('field_del', lang::right('field_del'), 'drop_image', 'delField(%item.id%)'); // Настраиваем отображение для разделителей $this->setFieldsRightEdit2("changeSepar(%item.id%, 'upd')"); $this->addFieldsEmptyRight2(); $this->addFieldsEmptyRight2(); $this->addFieldsRight2('separator_upd', lang::right('separator_upd'), 'compose_image', "changeSepar(%item.id%, 'upd')"); $this->addFieldsRight2('field_del', lang::right('field_del'), 'drop_image', 'delField(%item.id%)'); // Настраиваем отображение для групп $this->setGroupsRightEdit("changeGroup(%item.id%, 'upd')"); $this->addGroupsRight('separator_add', lang::right('separator_add'), 'add_vacum', "addSepar(%item.id%)"); $this->addGroupsRight('separator_add', lang::right('separator_add'), 'add_abc', "changeSepar(%item.id%, 'add')"); $this->addGroupsRight('field_add', lang::right('field_add'), 'add_image', "changeField(%item.id%, 'add')"); $this->addGroupsEmptyRight(); $this->addGroupsRight('fgroup_upd', lang::right('fgroup_upd'), 'compose_image', "changeGroup(%item.id%, 'upd')"); $this->addGroupsRight('fgroup_del', lang::right('fgroup_del'), 'drop_image', 'delGroup(%item.id%)'); // Настраиваем отображение для системных групп $this->addGroupsRight2('separator_add', lang::right('separator_add'), 'add_vacum', "addSepar(%item.id%)"); $this->addGroupsRight2('separator_add', lang::right('separator_add'), 'add_abc', "changeSepar(%item.id%, 'add')"); $this->addGroupsRight2('field_add', lang::right('field_add'), 'add_image', "changeField(%item.id%, 'add')"); $this->addGroupsEmptyRight2(); $this->addGroupsEmptyRight2(); $this->addGroupsEmptyRight2(); }
public function __construct() { ui::checkClasses('handbook'); ui::addLeftButton(lang::right('list'), 'list'); ui::addLeftButton(lang::right('state'), 'state'); ui::addLeftButton(lang::right('delivery'), 'delivery'); ui::addLeftButton(lang::right('payment'), 'payment'); }
public function defAction() { if (!system::issetUrl(2)) { system::redirect('/reference'); } if ($class = ormClasses::get(system::url(2))) { if (!$class->isInheritor('handbook') || $class->getSName() == 'handbook') { system::redirect('/reference'); } ui::setNaviBar(lang::right('values')); ui::setHeader($class->getName()); ui::setBackButton('/reference'); if (user::issetRight('val_upd')) { $count = 0; $fields = $class->loadFields(); foreach ($fields as $field) { if ($field['f_view'] == 1) { $count++; } } } else { $count = 4; } $sel = new ormSelect($class->getSName()); if ($count > 5) { ui::newButton(lang::get('BTN_NEW_LIST'), '/reference/val_add/' . system::url(2)); $table = new uiTable($sel); $table->showSearch(true); $table->addColumn('name', 'Имя объекта'); $table->addColumn('id', '#', 200); $table->defaultRight('val_upd'); $table->addRight('val_upd', 'edit', single); $table->addRight('val_del', 'drop', multi); return $table->getHTML(); } else { ui::newButton(lang::get('BTN_SAVE'), "javascript:sendForm('save');"); ui::newButton(lang::get('BTN_APPLY'), "javascript:sendForm('apply');"); $form = new ormMultiForm('change'); $form->setData($sel); $form->showColumnID(); $form->setRight('val_proc_upd'); $form->moreParam(system::url(2)); if (!user::issetRight('val_upd') || !user::issetRight('val_add')) { $form->withoutAdditions(); } if (!user::issetRight('val_del')) { $form->withoutRemoving(); } return $form->getHTML(); } } else { system::redirect('/reference'); } }
private function createTree($parent, $TEMPLATE) { $items = ''; while ($obj = ormClasses::getInheritor($parent)) { page::assign('subitem', $this->createTree($obj->id(), $TEMPLATE)); page::assign('obj.id', $obj->id()); page::assign('obj.url', system::au() . '/constructor/class_upd/' . $obj->id()); page::assign('obj.name', $obj->getName()); page::assign('obj.sname', $obj->getSName()); page::assign('obj.parent', $obj->getParentId()); $pach = '/css_mpanel/tree/images/classes/'; $ico = file_exists(ROOT_DIR . $pach . $obj->getSName() . '.png') ? $obj->getSName() . '.png' : 'file1.gif'; page::assign('obj.ico', $pach . $ico); $rights = ''; reset($this->rights); while (list($right, $pict) = each($this->rights)) { $modul = $right == 'values' ? 'reference' : 'constructor'; if (user::issetRight($right, $modul) || $pict == 'empty') { if ($pict == 'empty') { $rights .= page::parse($TEMPLATE['empty_right']); } else { $parse = true; if ($right == 'values') { $parse = $obj->isInheritor('handbook') && $obj->getSName() != 'handbook'; } if ($right == 'class_del') { $parse = !$obj->isSystem(); } if ($parse) { $del_button = $right == 'class_del' ? 'class="del_button"' : ''; page::assign('del_button', $del_button); page::assign('right.url', system::au() . '/' . $modul . '/' . $right); page::assign('right.title', lang::right($right, $modul)); page::assign('right.class', $pict); $rights .= page::parse($TEMPLATE['right']); } else { $rights .= page::parse($TEMPLATE['empty_right']); } } } } page::assign('rights', $rights); $items .= page::parse($TEMPLATE['item']); } if (!empty($items)) { page::assign('items', $items); return page::parse($TEMPLATE['frame_items']); } }
public function defAction() { ui::addLeftButton(lang::right('list'), 'list'); ui::addLeftButton(lang::right('state'), 'state'); ui::addLeftButton(lang::right('delivery'), 'delivery'); ui::addLeftButton(lang::right('payment'), 'payment'); ui::newButton(lang::get('ESHOP_ADD_PAYMENT'), '/eshop/payment_add'); $sel = new ormSelect('eshop_payment_method'); $table = new uiTable($sel); $table->addColumn('name', 'Название', 500); $table->defaultRight('payment_upd'); $table->addRight('payment_upd', 'edit', single); $table->addRight('payment_del', 'drop', multi); return $table->getHTML(); }
public function defAction() { ui::addLeftButton(lang::right('list'), 'list'); ui::addLeftButton(lang::right('state'), 'state'); ui::addLeftButton(lang::right('delivery'), 'delivery'); ui::addLeftButton(lang::right('payment'), 'payment'); ui::newButton(lang::get('ESHOP_ADD_DELIVERY'), '/eshop/delivery_add'); $sel = new ormSelect('eshop_delivery_method'); $table = new uiTable($sel); $table->addColumn('name', 'Название', 500); $table->addColumn('price', 'Добавочная стоимость (руб.)', 300); $table->defaultRight('delivery_upd'); $table->addRight('delivery_upd', 'edit', single); $table->addRight('delivery_del', 'drop', multi); return $table->getHTML(); }
public function defAction() { if ($parent = ormObjects::get(system::url(2))) { ui::setNaviBar(lang::right('msg')); ui::setHeader($parent->name); } else { system::redirect('/subscription'); } ui::setBackButton('/subscription'); ui::newButton(lang::get('SUBSCRIBE_BTN_ADD2'), '/subscription/msg_add/' . system::url(2)); function getState($date, $obj) { if ($obj->error_part_num > 0) { $time = time() - strtotime($obj->last_subscribe); if ($time > 4) { return str_replace('%part%', $obj->error_part_num, lang::get('SUBSCRIBE_MSG', 1)); } else { return str_replace('%part%', $obj->error_part_num, lang::get('SUBSCRIBE_MSG', 2)); } } else { if ($obj->part_count_awaiting > 0) { page::assign('part1', $obj->part_count - $obj->part_count_awaiting); page::assign('part2', $obj->part_count); return page::parse(lang::get('SUBSCRIBE_MSG', 3)); } else { if ($obj->last_subscribe == '0000-00-00 00:00:00') { return lang::get('SUBSCRIBE_MSG', 4); } else { return lang::get('SUBSCRIBE_MSG', 5) . ' ' . date('d.m.Y ' . lang::get('SUBSCRIBE_MSG', 6) . ' H:i', strtotime($obj->last_subscribe)); } } } } // Выводим список сообщений рассылки $sel = new ormSelect('subscribe_msg'); $sel->fields('name, last_subscribe, part_count, part_count_awaiting, error_part_num'); $sel->where('parents', '=', system::url(2)); $sel->orderBy('create_date', desc); $table = new uiTable($sel); $table->formatValues(true); $table->addColumn('name', lang::get('SUBSCRIBE_MSG_TT1'), 300); $table->addColumn('last_subscribe', lang::get('SUBSCRIBE_MSG_TT2'), 300, 0, 1, 'getState'); $table->defaultRight('msg_upd'); $table->addRight('msg_upd', 'edit', single); $table->addRight('msg_del', 'drop', multi); return $table->getHTML(); }
public function defAction() { // Определяем какие кнопки будут $types = ormClasses::get('user')->getAllInheritors(); if (count($types) > 1) { $class_list = ''; while (list($id, $name) = each($types)) { $bclass = ormClasses::get($id); $class_list .= '<a href="' . system::au() . '/users/user_add/' . system::url(2) . '/' . $bclass->getSName() . '" style="line-height:17px;">' . $bclass->getName() . '</a><br />'; } ui::newButton(lang::get('BTN_NEW_USER'), "/users/user_add/" . system::url(2), 'class_list', $class_list); } else { ui::newButton(lang::get('BTN_NEW_USER'), "/users/user_add/" . system::url(2)); } ui::setBackButton('/users'); // Заголовок страницы if ($group = ormObjects::get(system::url(2))) { ui::setNaviBar($group->name); ui::setHeader(lang::right('userlist')); } // Выбираем пользователей $sel = new ormSelect('user'); if (system::issetUrl(2) && system::url(2) != 0) { $sel->where('parents', '=', system::url(2)); } $sel->orderBy('create_date', desc); // Строим таблицу $table = new uiTable($sel); $table->formatValues(true); $table->showSearch(true); $table->addColumn('login', lang::get('USERS_TABLE_FIELD_1'), 0, true); $table->addColumn('surname name', lang::get('USERS_TABLE_FIELD_2'), 0, true); $table->addColumn('create_date', lang::get('USERS_TABLE_FIELD_7'), 0, true, true, '', 1); $table->addColumn('last_visit', lang::get('USERS_TABLE_FIELD_3'), 0, true, true, '', 1); $table->addColumn('parents', lang::get('USERS_TABLE_FIELD_4'), 0, false, true); $table->defaultRight('user_upd'); $table->addRight('user_upd', 'edit', single); $table->addRight('user_act', 'active', multi); $table->addRight('user_del', 'drop', multi); $table->setDelMessage(lang::get('USERS_DEL_TITLE'), lang::get('USERS_DEL_TEXT')); $table->setMultiDelMessage(lang::get('USERS_DEL_TITLE_MULTI'), lang::get('USERS_DEL_TEXT_MULTI')); return $table->getHTML(); }
public function defAction() { ui::addLeftButton(lang::right('list'), 'list'); ui::addLeftButton(lang::right('state'), 'state'); ui::addLeftButton(lang::right('delivery'), 'delivery'); ui::addLeftButton(lang::right('payment'), 'payment'); ui::newButton(lang::get('ESHOP_ADD_STATE'), '/eshop/state_add'); $sel = new ormSelect('eshop_status'); //$sel->where('form_id', '<>', 0); $sel->orderBy('number', asc); $table = new uiTable($sel); $table->showFilters(true); $table->formatValues(true); $table->addColumn('number', '#', 10); $table->addColumn('name', 'Название', 200); $table->addColumn('notice', 'Описание', 400); $table->defaultRight('state_upd'); $table->addRight('state_upd', 'edit', single); $table->addRight('state_del', 'drop', multi); return $table->getHTML(); }
public function upd() { // Указываем для какого объекта строить форму if (system::action() == "upd") { // Если это редактирование $obj = ormObjects::get(system::url(2)); // Заголовок страницы ui::setNaviBar(lang::right('group_upd')); ui::setHeader($obj->name); $right = 'group_proc_upd'; } else { if (system::action() == "add") { // Если это добавление нового объекта $obj = new ormObject(); $obj->setParent(0); $obj->setClass('user_group'); // Устанавливает параметры по умолчанию $obj->active = 1; $right = 'group_proc_add'; } } // Если произошли ошибки, перенаправляем на главную страницу модуля if (!$obj->isInheritor('user_group')) { system::redirect('/users'); } // Устанавливаем кнопки для формы ui::setCancelButton('/users/grouplist'); ui::newButton(lang::get('BTN_SAVE'), "javascript:sendForm('save');"); ui::newButton(lang::get('BTN_APPLY'), "javascript:sendForm('apply');"); // Создаем форму и выводим ее на страницу $form = new ormEditForm($obj, $right); $form->attachJavaScript('/css_mpanel/group_upd.js'); $form->addInBottomTabs('base', rights::getListForModuls(system::url(2), 0)); // Здесь можно переопределить стандартные параметры формы редактирования // ... return $form->getHTML(); }
public function defAction() { if (!system::issetUrl(2)) { system::redirect('/subscription'); } if ($parent = ormObjects::get(system::url(2))) { ui::setNaviBar(lang::right('user')); ui::setHeader($parent->name); } ui::newButton(lang::get('SUBSCRIBE_BTN_ADD3'), '/subscription/user_add/' . system::url(2)); ui::newButton(lang::get('SUBSCRIBE_BTN_ADD4'), '/subscription/user_addlist/' . system::url(2)); ui::setBackButton('/subscription'); $sel = new ormSelect('subscribe_user'); $sel->where('parents', '=', system::url(2)); $table = new uiTable($sel); $table->showSearch(true); $table->moreParam(system::url(2)); $table->addColumn('name', lang::get('SUBSCRIBE_USER_TT1'), 300); $table->addColumn('second_name first_name', lang::get('SUBSCRIBE_USER_TT2'), 300); $table->defaultRight('user_upd'); $table->addRight('user_upd', 'edit', single); $table->addRight('user_del', 'drop', multi); return $table->getHTML(); }
public function history() { if (system::url(2) == 0) { system::redirect('/structure'); } if ($obj = ormPages::get(system::url(2))) { if (isset($_SESSION['STRUCTURE_LIST_FLAG']) && $_SESSION['STRUCTURE_LIST_FLAG']) { ui::setBackButton('/structure/list/' . $obj->getParentId()); } else { ui::setBackButton('/structure/tree'); } ui::setNaviBar(lang::right('page_history') . ' ' . $obj->getClass()->getPadej(1)); ui::setHeader($obj->name); return ui::getHistoryTable($obj->id); } system::redirect('/structure'); }
public function defAction() { // Устанавливаем статус системы "в режиме администрирования". system::$isAdmin = true; page::$macros = 0; // Попытка авторизации if (!empty($_POST['enter'])) { if (!user::auth($_POST['login'], $_POST['passw'])) { $this->showAuthForm(1); } else { header("Location: " . $_SERVER["HTTP_REFERER"]); } } // Если пользователь не админ, показываем форму авторизации if (!user::isAdmin()) { $this->showAuthForm(); } // Определяем текущий домен domains::curDomain(); // Выход из системы if (system::issetUrl(0) && system::url(0) == 'logout') { user::logout(); } if (system::url(0) == 'showhide') { $_SESSION['SH_FIELDS'] = system::url(1) == 0 ? 'hide' : 'show'; system::stop(); } // Обработка запросов от поля ObjectLinks ui::checkObjectLinks(); system::$defTemplate = MODUL_DIR . '/mpanel/template/default.tpl'; // Определяем модуль if (!system::issetUrl(0)) { system::setUrl(0, user::getDefModul()); } // Если есть ссылка на обработчик формы if (!empty($_POST['right'])) { system::setUrl(1, system::POST('right', isVarName)); } // Определяем право if (system::issetUrl(1)) { // Проверяем существует ли указанное право if (user::issetRight(system::url(1))) { $currRight = system::url(1); } else { if (user::issetRight(str_replace('_proc', '', system::url(1)))) { $currRight = system::url(1); } } } else { // Пытаемся найти право по умолчанию $def_right = user::getDefaultRight(system::url(0)); if ($def_right) { $currRight = $def_right; system::setUrl(1, $def_right); } } $this->getMenu(); page::assign('current_url', system::getCurrentUrl()); page::assign('admin_url', system::au()); if (!empty($currRight)) { // Определяем имя и метод контролера $pos = strpos($currRight, '_'); if ($pos) { $class_name = '__' . substr($currRight, 0, $pos); $action_name = substr($currRight, $pos + 1, strlen($currRight) - $pos); } else { $class_name = '__' . $currRight; $action_name = 'defAction'; } $mod_name = MODUL_DIR . '/' . system::url(0) . '/' . $class_name . '.php'; // Пытаемся подгрузить модуль if (file_exists($mod_name)) { include $mod_name; if (file_exists(MODUL_DIR . '/' . system::url(0) . '/lang-ru.php')) { include MODUL_DIR . '/' . system::url(0) . '/lang-ru.php'; } ui::setHeader(lang::right($currRight)); if (class_exists($class_name)) { eval('$c = new ' . $class_name . '();'); if (ui::$stop) { $content = '.'; } else { if (method_exists($c, $action_name)) { $content = call_user_func(array($c, $action_name)); } } } } if (empty($content)) { $msg = lang::get('TEXT_PROC_NOTFOUND2') . '<br />' . system::getCurrentUrl() . '<br /><br /> ' . lang::get('TEXT_PROC_NOTFOUND3') . '<br />' . $mod_name . '<br /><br /> ' . lang::get('TEXT_PROC_NOTFOUND4'); system::log(lang::get('TEXT_PROC_NOTFOUND') . ' ' . system::getCurrentUrl()); ui::MessageBox(lang::get('TEXT_PROC_NOTFOUND'), $msg); system::redirect('/'); } } else { system::log(lang::get('TEXT_ERROR_RIGHT_LOG') . system::getCurrentUrl()); ui::MessageBox(lang::get('TEXT_ERROR_RIGHT'), lang::get('TEXT_ERROR_RIGHT2')); system::redirect('/'); } //Производим сжатие страницы if (reg::getKey('/config/gzip')) { $PREFER_DEFLATE = false; $FORCE_COMPRESSION = false; $AE = isset($_SERVER['HTTP_ACCEPT_ENCODING']) ? $_SERVER['HTTP_ACCEPT_ENCODING'] : $_SERVER['HTTP_TE']; $support_gzip = strpos($AE, 'gzip') !== FALSE || $FORCE_COMPRESSION; $support_deflate = strpos($AE, 'deflate') !== FALSE || $FORCE_COMPRESSION; if ($support_gzip && $support_deflate) { $support_deflate = $PREFER_DEFLATE; } if ($support_deflate) { header("Content-Encoding: deflate"); ob_start("compress_output_deflate"); } else { if ($support_gzip) { header("Content-Encoding: gzip"); ob_start("compress_output_gzip"); } else { ob_start(); } } } return ui::getMainHTML($content); }
static function setRight($mas) { self::$right = $mas; }
private function rights($TEMPLATE) { $rights = $rights_multi = $rights_act = ''; while (list($key, $right) = each($this->rights)) { // Определяем модуль для указанного права $pos = strpos($right['name'], '.'); if (!empty($pos)) { $module = substr($right['name'], 0, $pos); $right['name'] = substr($right['name'], $pos + 1, strlen($right['name'])); } else { $module = system::url(0); } if (user::issetRight($right['name'], $module)) { $url = system::au() . '/' . $module . '/' . $right['name'] . '/'; page::assign('url', $url); page::assign('class', $right['class']); page::assign('hint', lang::right($right['name'])); page::assign('del_button', $right['class'] == 'drop' ? 'id="del_button"' : ''); $java = !empty($right['java']) ? ' onClick="return ' . $right['java'] . '"' : ''; page::assign('java', $java); if ($right['class'] != 'active' && $right['view'] != only_multi) { // Формируем список прав с одинарным выбором $rights .= page::parse($TEMPLATE['right']); } else { if ($right['class'] == 'active') { // Активность объекта $rights_act .= page::parse($TEMPLATE['right_active']); //$active_right = $url; } } // Формируем список прав с множественным выбором if ($right['view'] == multi || $right['view'] == only_multi) { if ($right['class'] == 'active') { $text = lang::get('TABLE_ACTIVE_RIGHT'); } else { if ($right['class'] == 'drop') { $text = lang::get('TABLE_DROP_RIGHT'); } else { $text = $right['text']; } } page::assign('hint', $text); $rights_multi .= page::parse($TEMPLATE['right_multi']); } } else { if ($right['class'] == 'active') { // Активность объекта - не кликабельно $rights_act .= page::parse($TEMPLATE['right_active_noclick']); } } } page::assign('rights', $rights); page::fParse('rights', $TEMPLATE['rights']); page::assign('active', $rights_act); page::assign('rights_multi', $rights_multi); // Смотрим, нужно ли выводить чекбоксы if (!empty($rights_multi)) { page::fParse('checkbox', $TEMPLATE['checkbox']); page::fParse('checkbox_multi', $TEMPLATE['checkbox_multi']); } else { page::assign('checkbox', ''); page::assign('checkbox_multi', ''); } // Смотрим, выводить или нет первый столбец-заглушку if (!empty($rights_act) || !empty($rights_multi)) { $width = !empty($rights_act) && !empty($rights_multi) ? 60 : 30; page::assign('width', $width); page::fParse('first_column', $TEMPLATE['first_column']); page::fParse('item_check', $TEMPLATE['item_check']); } else { page::assign('first_column', ''); page::assign('item_check', ''); } page::fParse('shapka', $TEMPLATE['shapka']); }
public function defAction() { $_SESSION['STRUCTURE_LIST_FLAG'] = 1; // Если страниц нет, предлагаем добавить новую if (ormPages::getCountOfSection(0) == 0) { ui::MessageBox(lang::get('STRUCTURE_PAGE_NOT_FOUND'), lang::get('STRUCTURE_PAGE_NOT_FOUND2')); system::redirect('/structure/page_add'); } $obj_id = system::issetUrl(2) ? system::url(2) : 0; function getPageNotice($page) { $notice = ''; if ($page->is_home_page) { $notice = lang::get('STRUCTURE_TREE_TEXT12'); } if ($page->other_link != '') { $notice = lang::get('STRUCTURE_TREE_TEXT32'); } if (!$page->view_in_menu) { if (!empty($notice)) { $notice .= ', '; } $notice .= lang::get('STRUCTURE_TREE_TEXT22'); } if (!empty($notice)) { return '(' . $notice . ')'; } else { return ''; } } // Вывод дерева объектов $tree = new ormTree(328, 57); $tree->setClass('ormPage'); $tree->setRoot(0, reg::getKey(ormPages::getPrefix() . '/title_prefix'), 'list/0'); $tree->setNotice('getPageNotice'); $tree->setRightEdit('list'); $tree->setRightActive('page_proc_act'); $tree->setRightRemove('page_proc_moveto'); $tree->setRightAjaxLoad('list'); $tree->setDelMessage(lang::get('STRUCTURE_DEL_TITLE'), lang::get('STRUCTURE_DEL_TEXT')); $tree->addRight('page_upd', lang::right('page_upd'), 'compose_image'); $tree->addRight('page_add', lang::right('page_add'), 'add_image'); //, 'class_list', $class_list ui::setLeftPanel($tree->getHTML()); // Заголовок страницы ui::setHeader(lang::right('tree')); if (!empty($obj_id) && ($obj = ormPages::get($obj_id))) { ui::setNaviBar(lang::right('list')); ui::setHeader($obj->name); ui::setBackButton('/structure/list/' . $obj->getParentId()); } else { $obj_id = 0; } // Формируем список классов для быстрого добавления $class_name = ormPages::getPopularClass($obj_id); $class = ormClasses::get($class_name); $types = ormClasses::get('section')->getAllInheritors(); $no_edit = reg::getList(ormPages::getPrefix() . '/no_edit'); $elem_list = $cat_list = ''; while (list($id, $name) = each($types)) { if (!in_array($id, $no_edit)) { $bc = ormClasses::get($id); $pach = '/css_mpanel/tree/images/'; $ico = 'classes/' . $bc->getSName() . '.png'; if (!file_exists(ROOT_DIR . $pach . $ico)) { $ico = 'file1.gif'; } if ($bc->isInheritor('category') || $bc->getSName() == 'section') { $cat_list .= ' <li><img src="' . $pach . $ico . '"> <a href="' . system::au() . '/structure/page_add/' . $obj_id . '/' . $bc->getSName() . '">' . $bc->getName() . '</a></li>'; } else { $elem_list .= ' <li ><img src="' . $pach . $ico . '"> <a href="' . system::au() . '/structure/page_add/' . $obj_id . '/' . $bc->getSName() . '">' . $bc->getName() . '</a></li>'; } } } $class_list = '<ul>' . $cat_list . '</ul><ul>' . $elem_list . '</ul>'; ui::newButton(lang::get('PANEL_BTN_ADD_PART') . $class->getPadej(0), "/structure/page_add/" . $obj_id, 'class_list', $class_list); // Формируем выборку страниц для таблицы $sel = new ormSelect(); $sel->findInPages(); $sel->where('parents', '=', $obj_id); // Определяем способ сортировки списка $order_by = !empty($obj_id) ? $obj->order_by : ''; if (!empty($order_by)) { $pos = strpos($order_by, ' '); if ($pos) { $parram = substr($order_by, $pos + 1); $order_by = substr($order_by, 0, $pos); } else { $parram = ''; } $sel->orderBy($order_by, $parram); } else { $sel->orderBy(position, asc); } // Вывод таблицы $table = new uiTable($sel); $table->formatValues(true); $table->showSearch(true); $table->hideEmptyColumns(true); $table->addColumn('name', lang::get('STRUCTURE_TABLE_FIELD_1'), 500, true); $table->addColumn('image', lang::get('STRUCTURE_TABLE_FIELD_2'), 400, false, false); $table->addColumn('price', lang::get('STRUCTURE_TABLE_FIELD_3'), 400); $table->addColumn('publ_date', lang::get('STRUCTURE_TABLE_FIELD_4'), 400); $table->defaultRight('page_upd'); $table->addRight('page_upd', 'edit', single); $table->addRight('list', 'list', single); $table->addRight('page_history', 'history', single); $table->addRight('page_proc_act', 'active', multi); $table->addRight('page_del', 'drop', multi); $table->setDelMessage(lang::get('STRUCTURE_DEL_TITLE'), lang::get('STRUCTURE_DEL_TITLE')); $table->setMultiDelMessage(lang::get('STRUCTURE_DEL_TITLE_MULTI'), lang::get('STRUCTURE_DEL_TEXT_MULTI')); return $table->getHTML(); }
public function defAction() { if (!reg::getKey(ormPages::getPrefix() . '/view_as_tree')) { system::redirect('/structure/list'); } $_SESSION['STRUCTURE_LIST_FLAG'] = 0; // Если страниц нет, предлагаем добавить новую if (ormPages::getCountOfSection(0) == 0) { ui::MessageBox(lang::get('STRUCTURE_PAGE_NOT_FOUND'), lang::get('STRUCTURE_PAGE_NOT_FOUND2')); system::redirect('/structure/page_add'); } $types = ormClasses::get('section')->getAllInheritors(); $no_edit = reg::getList(ormPages::getPrefix() . '/no_edit'); $elem_list = $cat_list = ''; while (list($id, $name) = each($types)) { if (!in_array($id, $no_edit)) { $obj = ormClasses::get($id); $pach = '/css_mpanel/tree/images/'; $ico = 'classes/' . $obj->getSName() . '.png'; if (!file_exists(ROOT_DIR . $pach . $ico)) { $ico = 'file1.gif'; } if ($obj->isInheritor('category') || $obj->getSName() == 'section') { $cat_list .= ' <li><img src="' . $pach . $ico . '"> <a name="' . system::au() . '/structure/page_add/%obj_id%/' . $obj->getSName() . '" href="">' . $obj->getName() . '</a></li>'; } else { $elem_list .= ' <li ><img src="' . $pach . $ico . '"> <a name="' . system::au() . '/structure/page_add/%obj_id%/' . $obj->getSName() . '" href="">' . $obj->getName() . '</a></li>'; } } } $class_list = '<ul>' . $cat_list . '</ul><ul>' . $elem_list . '</ul>'; function getPageNotice($page) { $notice = ''; if ($page->is_home_page) { $notice = lang::get('STRUCTURE_TREE_TEXT1'); } if ($page->other_link != '') { $notice = lang::get('STRUCTURE_TREE_TEXT3'); } if (!$page->view_in_menu) { if (!empty($notice)) { $notice .= ', '; } $notice .= lang::get('STRUCTURE_TREE_TEXT2'); } if (!empty($notice)) { return '(' . $notice . ')'; } else { return ''; } } $tree = new ormTree(975, 265); $tree->setClass('ormPage'); $tree->setRoot(0, reg::getKey(ormPages::getPrefix() . '/title_prefix'), 'settings'); $tree->setRightEdit('page_upd'); $tree->setRightActive('page_proc_act'); $tree->setRightRemove('page_proc_moveto'); $tree->setRightAjaxLoad('tree'); $tree->setDelMessage(lang::get('STRUCTURE_DEL_TITLE'), lang::get('STRUCTURE_DEL_TEXT')); $tree->addRight('getUrl()', lang::get('STRUCTURE_PAGE_URL'), 'view_image'); $tree->addEmptyRight(); $tree->addEmptyRight(); $tree->addRight('page_add', lang::right('page_add'), 'add_image', 0, 1, 'class_list', $class_list); $tree->addEmptyRight(); $tree->addRight('list', lang::right('list'), 'list_block_image'); $tree->addEmptyRight(); $tree->addRight('page_upd', lang::right('page_upd'), 'compose_image'); $tree->addRight('page_copy', lang::right('page_copy'), 'copy_image', 0, 0); $tree->addRight('page_history', lang::right('page_history'), 'history_image', 0, 0); $tree->addRight('page_del', lang::right('page_del'), 'drop_image', 1, 0); $tree->setNotice('getPageNotice'); return $tree->getHTML(); }
public function history() { if (system::url(2) == 0) { system::redirect('/subscription'); } if ($obj = ormObjects::get(system::url(2))) { ui::setBackButton('/subscription'); ui::setNaviBar(lang::right('subscribe_history')); ui::setHeader($obj->name); return ui::getHistoryTable($obj->id); } system::redirect('/subscription'); }