public function defAction() { ui::newButton(lang::get('BTN_SAVE'), "javascript:sendForm('save');"); ui::newButton(lang::get('BTN_APPLY'), "javascript:sendForm('apply');"); if (isset($_SESSION['STRUCTURE_LIST_FLAG']) && $_SESSION['STRUCTURE_LIST_FLAG']) { ui::setCancelButton('/structure/list'); } else { ui::setCancelButton('/structure/tree'); } $list = reg::getList(ormPages::getPrefix() . '/minitext', true); $texts = $js = array(); foreach ($list as $val) { $texts[] = array('id' => $val['id'], 'description' => $val['description'], 'num' => '<center>%text_' . $val['id'] . '%</center>', 'text' => $val['value']); $js['text_' . $val['id'] . '_vvv'] = $val['value']; } // Форма редактирования $form = new uiMultiForm('change'); if (reg::getKey('/core/noDelMiniTexts')) { $form->withoutRemoving(); } $form->setRight('minitext_proc'); $form->setData($texts); $form->addColumn('description', lang::get('STRUCTURE_TABLE_FIELD_12'), 200, lang::get('STRUCTURE_TABLE_FIELD_13')); $form->addColumn('text', lang::get('STRUCTURE_TABLE_FIELD_9'), 500, lang::get('STRUCTURE_TABLE_FIELD_10')); $form->addColumn('num', lang::get('STRUCTURE_TABLE_FIELD_8'), 150, lang::get('STRUCTURE_TABLE_FIELD_11'), false); $js = '<script language="javascript"> var textlist = ' . json_encode($js) . ';</script>'; return $js . $form->getHTML('multi_form_memo'); }
function upd() { // Устанавливаем кнопки для формы ui::setCancelButton('/comments/list'); ui::newButton(lang::get('BTN_SAVE'), "javascript:sendForm('save');"); ui::newButton(lang::get('BTN_APPLY'), "javascript:sendForm('apply');"); if (file_exists(MODUL_DIR . '/comments/template/comment.tpl')) { include MODUL_DIR . '/comments/template/comment.tpl'; } if (!($obj = comments::get(system::url(2)))) { system::redirect('/comments/list'); } if ($obj->getUserId() != 0 && user::issetRight('user_upd', 'users')) { $url = system::au() . '/users/user_upd/' . $obj->getUserId(); page::assign('user_link', $url); page::fParse('user_name', $TEMPLATE['user_link']); } else { page::fParse('user_name', $TEMPLATE['user_name']); } page::assign('obj.id', $obj->id()); page::assign('obj.username', $obj->getUserName()); page::assign('obj.email', $obj->getEmail()); page::assign('obj.text', $obj->getText()); page::assign('obj.date', date('d.m.Y H:i', strtotime($obj->getPublDate()))); page::assign('obj.parram', $obj->getParram()); ui::CheckBox('active', 1, $obj->isActive(), 'Проверен'); // Информация о странице if ($page = ormPages::get($obj->getObjId())) { page::assign('page.id', $page->id); page::assign('page.url', $page->url); page::assign('page.name', $page->name); } return page::parse($TEMPLATE['frame']); }
// форма редактирования объекта public function upd() { // Указываем для какого объекта строить форму if (system::action() == "upd") { // Если это редактирование $obj = ormObjects::get(system::url(2)); $class_id = $obj->getClass()->id(); $right = 'list_proc_upd'; } else { if (system::action() == "add") { // Если это добавление нового объекта $right = 'list_proc_add'; $class_id = system::url(2); $obj = new ormObject(); $obj->setClass($class_id); } } //print_r($obj->getErrorList()); // Если произошли ошибки, перенаправляем на главную страницу модуля if ($obj->issetErrors()) { system::redirect('/constructor'); } // Устанавливаем кнопки для формы ui::setCancelButton('/constructor/list/' . $class_id); ui::newButton(lang::get('BTN_SAVE'), "javascript:sendForm('save');"); ui::newButton(lang::get('BTN_APPLY'), "javascript:sendForm('apply');"); // Создаем форму и выводим ее на страницу $form = new ormEditForm($obj, $right); return $form->getHTML();
public function upd() { // Указываем для какого объекта строить форму if (system::action() == "upd") { // Если это редактирование $obj = ormObjects::get(system::url(2)); $right = 'subscribe_proc_upd'; } else { if (system::action() == "add") { // Если это добавление нового объекта $right = 'subscribe_proc_add'; $obj = new ormObject(); $obj->setClass('subscription'); $obj->back_email = domains::curDomain()->getEmail(); $obj->back_name = domains::curDomain()->getSiteName(); $obj->template = 'default'; $obj->active = 1; } } // Если произошли ошибки, перенаправляем на главную страницу модуля if ($obj->issetErrors()) { system::redirect('/subscription'); } // Устанавливаем кнопки для формы ui::setCancelButton('/subscription'); ui::newButton(lang::get('BTN_SAVE'), "javascript:sendForm('save');"); ui::newButton(lang::get('BTN_APPLY'), "javascript:sendForm('apply');"); // Создаем форму и выводим ее на страницу $form = new ormEditForm($obj, $right); $form->replaceField('template', $this->templList('template', $obj->template)); $form->replaceField('name_format', ui::SelectBox('name_format', lang::get('SUBSCRIBE_NAMEFORMAT'), $obj->name_format, 440)); return $form->getHTML(); }
function view() { // Устанавливаем кнопки для формы ui::setCancelButton('/eshop/list'); ui::newButton(lang::get('BTN_SAVE'), "javascript:sendForm('save');"); ui::newButton(lang::get('BTN_APPLY'), "javascript:sendForm('apply');"); if (file_exists(MODUL_DIR . '/eshop/template/order.tpl')) { include MODUL_DIR . '/eshop/template/order.tpl'; } if (!($obj = ormObjects::get(system::url(2), 'eshop_order'))) { system::redirect('/eshop/list'); } $order = new eShopOrder($obj); // Вывод информации о товарах function getGoodsName($val, $obj) { if ($obj = ormPages::get($val, 'goods')) { return '<a href="' . $obj->url . '" target="_blank">' . $obj->name . '</a>'; } } function getPrice($val, $obj) { return ' ' . $obj->cost * $obj->count . ' руб.'; } $sel = new ormSelect('eshop_goods'); $sel->where('parents', '=', $obj->id); $table = new ormMultiForm('goods'); $table->setData($sel); $table->insideForm(); $table->addColumn('goods_id', 0, 400, 0, false, 'getGoodsName'); $table->addColumn('cost', 0, 100, 0, false); $table->addColumn('count', 0, 100); $table->addColumn('id', 'Общая стоимость', 100, 0, false, 'getPrice'); $table->withoutAdditions(); page::assign('goods_list', $table->getHTML()); page::assign('order.number', $order->getNumber()); page::assign('order.cost', $order->getCost()); page::assign('order.cost_all', $order->getTotalCost()); page::assign('order.delivery_price', $order->getDeliveryPrice()); page::assign('order.delivery', $order->_delivery); $obj->parseAllFields(); page::assign('obj.id', $order->id); page::assign('obj.date', date('d.m.Y в H:i', strtotime($obj->date))); page::assign('user_link', '/mpanel/users/user_upd/' . $order->getUserId()); ui::SelectBox('state', ormObjects::getObjectsByClass('eshop_status'), $obj->state, 200); ui::CheckBox('is_payment', 1, $obj->is_payment, 'Оплачено'); // Создаем форму и выводим ее на страницу // $form = new ormEditForm($obj, $right); //return $form->getHTML(); return page::parse($TEMPLATE['frame']); }
public function defAction() { if (file_exists(MODUL_DIR . '/structure/template/settings.tpl')) { include MODUL_DIR . '/structure/template/settings.tpl'; } // ui::newButton(lang::get('BTN_SAVE_ONLY'), "javascript:sendForm('save');"); ui::newButton(lang::get('BTN_SAVE'), "javascript:sendForm('save');"); ui::newButton(lang::get('BTN_APPLY'), "javascript:sendForm('apply');"); if (isset($_SESSION['STRUCTURE_LIST_FLAG']) && $_SESSION['STRUCTURE_LIST_FLAG']) { ui::setCancelButton('/structure/list'); } else { ui::setCancelButton('/structure/tree'); } // Основные настройки page::assignArray(lang::get('STRUCTURE_FORM_FIELD')); page::assign('title_prefix', reg::getKey(ormPages::getPrefix() . '/title_prefix')); page::assign('keywords', reg::getKey(ormPages::getPrefix() . '/keywords')); page::assign('description', reg::getKey(ormPages::getPrefix() . '/description')); ui::CheckBox('cur_date', 1, reg::getKey('/structure/' . domains::curId() . '/cur_date'), lang::get('STRUCTURE_FORM_FIELD', 4)); ui::CheckBox('no_view_no_edit', 1, reg::getKey(ormPages::getPrefix() . '/no_view_no_edit'), lang::get('STRUCTURE_FORM_FIELD', 7)); ui::CheckBox('view_as_tree', 1, reg::getKey(ormPages::getPrefix() . '/view_as_tree'), lang::get('STRUCTURE_FORM_FIELD', 18)); ui::CheckBox('auto_index', 1, reg::getKey(ormPages::getPrefix('search') . '/auto_index'), lang::get('STRUCTURE_FORM_FIELD', 19)); $file = ROOT_DIR . '/robots_part_' . domains::curDomain()->getName() . '.txt'; $robots = file_exists($file) ? file_get_contents($file) : ''; page::assign('robots', $robots); // Форма редактирования шаблонов страниц $form = new uiMultiForm('page_tpl'); $form->insideForm(); $form->setData(templates::getByDestination()); $form->addColumn('t_name', lang::get('STRUCTURE_TABLE_FIELD_5'), 300); $form->addColumn('t_file', lang::get('STRUCTURE_TABLE_FIELD_6'), 300, lang::get('STRUCTURE_TABLE_FIELD_7')); page::assign('page_tpl', $form->getHTML()); // Форма редактирования шаблонов объектов $form = new uiMultiForm('obj_tpl'); $form->insideForm(); $form->setData(templates::getByDestination(1)); $form->addColumn('t_name', lang::get('STRUCTURE_TABLE_FIELD_5'), 300); $form->addColumn('t_file', lang::get('STRUCTURE_TABLE_FIELD_6'), 300, lang::get('STRUCTURE_TABLE_FIELD_7')); page::assign('obj_tpl', $form->getHTML()); // Управление отображением $classes = ormClasses::getPagesClassList(); ui::SelectBox('no_view_classes', $classes, reg::getList(ormPages::getPrefix() . '/no_view'), 600, ' ', '', 'selectbox_multi_big'); ui::SelectBox('no_edit_classes', $classes, reg::getList(ormPages::getPrefix() . '/no_edit'), 600, ' ', '', 'selectbox_multi_big'); return page::parse($TEMPLATE['frame']); }
public function upd() { if (!($obj = ormPages::get(system::url(2)))) { system::redirect('/feedback'); } ui::setCancelButton('/feedback'); ui::newButton(lang::get('BTN_SAVE'), "javascript:sendForm('save');"); ui::newButton(lang::get('BTN_APPLY'), "javascript:sendForm('apply');"); // Создаем форму и выводим ее на страницу $form = new ormEditForm($obj, 'message_proc_upd'); $form->withoutSH(); $form->withoutTabs(); $form->tabuList('pseudo_url', 'h1', 'keywords', 'title', 'description', 'active', 'is_home_page', 'view_in_menu', 'view_submenu', 'in_search', 'in_index', 'in_new_window', 'other_link', 'img_act', 'img_no_act', 'img_h1'); if (!$obj->active) { $form->addField('base', 10, 'publ', '', ui::CheckBox('publ', 1, 0, 'Опубликовать на сайте')); } if (!$obj->send_answer_to_user) { $form->addField('base', 11, 'send_to_email', '', ui::CheckBox('send_to_email', 1, 0, 'Отправить ответ на почту')); } return $form->getHTML(); }
function upd() { // Устанавливаем кнопки для формы ui::setCancelButton('/eshop/delivery'); ui::newButton(lang::get('BTN_SAVE'), "javascript:sendForm('save');"); ui::newButton(lang::get('BTN_APPLY'), "javascript:sendForm('apply');"); if (system::action() == "upd") { if (!($obj = ormObjects::get(system::url(2), 'eshop_delivery_method'))) { system::redirect('/eshop/delivery'); } $right = 'delivery_proc_upd'; } else { if (system::action() == "add") { $obj = new ormObject(); $obj->setClass('eshop_delivery_method'); $right = 'delivery_proc_add'; } } page::assign('right', $right); // Создаем форму и выводим ее на страницу $form = new ormEditForm($obj, $right); return $form->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 upd() { // Указываем для какого объекта строить форму if (system::action() == "upd") { // Если это редактирование $obj = ormObjects::get(system::url(2)); // Заголовок страницы ui::setNaviBar(lang::get('TEXT_EDIT') . $obj->getClass()->getPadej(1)); ui::setHeader($obj->login); $class_list = ''; $group_id = system::issetUrl(3) ? system::url(3) : $obj->getParentId(); $right = 'user_proc_upd'; } else { if (system::action() == "add") { $class_name = system::issetUrl(3) ? system::url(3) : 'user'; // Если это добавление нового объекта $group_id = system::url(2); $right = 'user_proc_add'; $obj = new ormObject(); $obj->setParent($group_id); $obj->setClass($class_name); $obj->active = 1; // Формируем список классов для быстрого изменения класса объекта $types = ormClasses::get('user')->getAllInheritors(); $class_list = ''; while (list($id, $name) = each($types)) { if ($bc = ormClasses::get($id)) { $url = system::au() . '/users/user_add/' . $group_id . '/' . $bc->getSName(); $class_list .= '<a href="' . $url . '" style="line-height:17px;">' . $bc->getName() . '</a><br />'; } } // Заголовок страницы if ($group = ormObjects::get($group_id)) { ui::setNaviBar($group->name, '/users/userlist/' . $group_id); ui::setHeader(lang::get('TEXT_ADD') . $obj->getClass()->getPadej(1)); } } } // Если произошли ошибки, перенаправляем на главную страницу модуля if (!$obj->isInheritor('user')) { system::redirect('/users/userlist'); } // Устанавливаем кнопки для формы if (empty($group_id)) { ui::setCancelButton('/users/grouplist'); } else { ui::setCancelButton('/users/userlist/' . $group_id); } ui::newButton(lang::get('BTN_SAVE'), "javascript:sendForm('save');"); ui::newButton(lang::get('BTN_APPLY'), "javascript:sendForm('apply');"); // Создаем форму и выводим ее на страницу $form = new ormEditForm($obj, $right); $form->setORMList($class_list); // Изменяем вид поля "Модуль по умолчанию" $modules = user::getModulesForObject($obj); $form->replaceField('def_modul', ui::SelectBox('def_modul', $modules, $obj->def_modul, 400)); // Добавляем вкладку "Права доступа" $tab_content = '<div style="margin-left:20px;width: 950px;">' . lang::get('USERS_TEXT_RIGHT_HINT') . rights::getListForModuls($obj->id, 1) . '</div>'; $form->attachJavaScript('/css_mpanel/users_upd.js'); $form->newTabs(lang::get('USERS_TABS_RIGHT'), $tab_content); return $form->getHTML(); }
public function upd() { if (system::url(3) == 'view') { header('Content-Type: text/html; charset=utf-8'); page::assign('hello', ''); page::assign('user_name', user::get('name')); echo page::parse(mailingProcess::getMailHTML(system::url(2))); system::stop(); } // Указываем для какого объекта строить форму if (system::action() == "upd") { // Если это редактирование $obj = ormObjects::get(system::url(2)); $parent_id = $obj->parent_id; $right = 'msg_proc_upd'; if ($obj->error_part_num > 0) { $time = time() - strtotime($obj->last_subscribe); if ($time < 5) { ui::MessageBox(lang::get('SUBSCRIBE_MSG_MB_TITLE'), lang::get('SUBSCRIBE_MSG_MB_TEXT')); system::redirect('/subscription/msg/' . $parent_id); } } } else { if (system::action() == "add") { // Если это добавление нового объекта $parent_id = system::url(2); $right = 'msg_proc_add'; $obj = new ormObject(); $obj->setClass('subscribe_msg'); $obj->setParent($parent_id); $obj->publ_date = date('d.m.Y'); } } // Если произошли ошибки, перенаправляем на главную страницу модуля if ($obj->issetErrors()) { system::redirect('/subscription'); } // Устанавливаем кнопки для формы ui::setCancelButton('/subscription/msg/' . $parent_id); ui::newButton(lang::get('BTN_SAVE'), "javascript:sendForm('save');"); ui::newButton(lang::get('BTN_APPLY'), "javascript:sendForm('apply');"); // Создаем форму и выводим ее на страницу $form = new ormEditForm($obj, $right); // Формируем форму рассылки сообщений $send_form = ''; if (system::action() == "upd" && user::issetRight('msg_send') && ($parent = ormObjects::get($parent_id))) { if (file_exists(MODUL_DIR . '/subscription/template/subscription.tpl')) { include MODUL_DIR . '/subscription/template/subscription.tpl'; $links = ''; // Получаем количество частей в рассылке $count = mailingProcess::getPartCount($parent->id); if ($count > 0) { $part_num = $obj->part_count - $obj->part_count_awaiting + 1; if ($part_num > $obj->part_count) { $part_num = 1; } page::assign('subject', $parent->subject); // page::assign('count_part', ruNumbers::decl($count, lang::get('SUBSCRIBE_TS'))); page::assign('count_part', $count); page::assign('count_part2', $count); page::assign('part_num', $part_num); page::assign('release_id', $obj->id); if ($obj->error_part_num == 0) { page::assign('error_part_num', $part_num); page::fParse('sh1', 'block'); page::fParse('sh2', 'none'); } else { page::assign('error_part_num', $obj->error_part_num); ui::MessageBox(lang::get('SUBSCRIBE_TEXT_SEND', 9) . $obj->error_part_num . lang::get('SUBSCRIBE_TEXT_SEND', 10), lang::get('SUBSCRIBE_TEXT_SEND', 11)); page::fParse('sh2', 'block'); page::fParse('sh1', 'none'); } $send_form = page::parse($TEMPLATE['frame']); $links .= page::parse($TEMPLATE['send_link']); } page::assignArray(lang::get('SUBSCRIBE_TEXT_SEND')); page::assign('url', system::au() . '/subscription/msg_upd/' . $obj->id . '/view'); $links .= page::parse($TEMPLATE['view_link']); page::assign('list', $links); $form->addInBottomTabs('base', page::parse($TEMPLATE['frame_link'])); } } return $send_form . $form->getHTML(); }
public function upd() { // Указываем для какого объекта строить форму if (system::action() == "upd") { if (system::url(2) == 0) { system::redirect('/structure/settings'); } $obj = ormObjects::get(system::url(2)); $class_list = ''; $right = 'form_proc_upd'; } else { if (system::action() == "add") { $obj = new ormObject(); $obj->setClass('feedback_form'); $obj->admin_sender_name = '{name}'; $obj->admin_sender_address = '{email}'; $obj->admin_subject = 'Сообщение с сайта {site_name}'; $obj->admin_template = ' <p> Посетитель сайта {site_name}, воспользовавшись формой обратной связи, отправил следующее сообщение: </p> <p> <i>{content}</i> </p> <p> ФИО посетителя: {name} <br> E-mail для связи: {email} </p> <p> С уважением, Bagira.CMS<br> </p> '; $obj->notice_sender_name = '{site_name}'; $obj->notice_sender_address = '{base_email}'; $obj->notice_subject = 'Уведомление с сайта {site_name}'; $obj->notice_template = ' <p> Добрый день, {name}. </p> <p> Это письмо - автоматическое уведомление о том, что отправленное вами сообщение принято к рассмотрению. Мы постараемся ответить вам в кратчайшие сроки. </p> <p> Благодарим за обращение,<br> Администрация сайта {site_name}.<br> </p> '; $obj->answer_sender_name = '{site_name}'; $obj->answer_sender_address = '{base_email}'; $obj->answer_subject = 'Ответ на ваше сообщение с сайта {site_name}'; $obj->answer_template = ' <p> Добрый день, {name}. </p> <p> Не так давно, воспользовавшись формой обратной связи, вы отправили нам следующее сообщение: </p> <p> <i>{content}</i> </p> <p> Наш ответ: </p> <p> {answer} </p> <p> С уважением,<br> Администрация сайта {site_name}.<br> </p> '; $right = 'form_proc_add'; } } page::assign('right', $right); if (!$obj instanceof ormObject || $obj->issetErrors()) { system::redirect('/feedback/settings'); } ui::setCancelButton('/feedback/settings'); ui::newButton(lang::get('BTN_SAVE'), "javascript:sendForm('save');"); ui::newButton(lang::get('BTN_APPLY'), "javascript:sendForm('apply');"); // Создаем форму и выводим ее на страницу $form = new ormEditForm($obj, $right); $list = array(); if ($class = ormClasses::get('feedback')) { $mas = $class->getAllInheritors(); while (list($id, $sname) = each($mas)) { $h = ormClasses::get($sname); $list[] = array('id' => $id, 'name' => $h->getName() . ' (' . $sname . ')'); } } $form->replaceField('form_class', ui::SelectBox('form_class', $list, $obj->form_class, 400)); return $form->getHTML(); }
public function addlist() { // Устанавливаем кнопки для формы ui::setCancelButton('/subscription/user/' . system::url(2)); ui::newButton(lang::get('BTN_SAVE'), "javascript:sendForm('save');"); if (file_exists(MODUL_DIR . '/subscription/template/add_userlist.tpl')) { include MODUL_DIR . '/subscription/template/add_userlist.tpl'; } // Добавляем поле "Подписан на рассылку" $html = ui::SelectBox('subscribes', ormObjects::getObjectsByClass('subscription'), system::url(2), 400, '', '', 'selectbox_multi_big'); page::assignArray(lang::get('SUBSCRIBE_TEXT')); page::assign('parent_id', system::url(2)); return page::parse($TEMPLATE['frame']); }
public function upd() { $is_page = false; if (file_exists(MODUL_DIR . '/constructor/template/class.tpl')) { include MODUL_DIR . '/constructor/template/class.tpl'; } if (system::action() == "upd") { // форма обновления информации $class = new ormClass(system::url(2)); if ($class->id() == '') { system::redirect('/constructor/tree'); } page::assign('obj.class_name', $class->getName()); page::assign('obj.sname', $class->getSName()); page::assign('obj.text', $class->getPadej()); page::assign('obj.id', $class->id()); $system = $class->isSystem(); $is_list = $class->isList(); $is_page = $class->isPage(); $is_user = $class->isInheritor('user'); $base_class = $class->getBaseClass(); page::assign('right', 'class_proc_upd'); // Выводим дерево для отображения структуры класса $tree = new ormFieldsTree(); page::assign('fields', $tree->getHTML($class)); } else { if (system::action() == "add") { // форма добавления информации $system = $is_list = $uniqum = $base_class = 0; // Проверяем существует ли родитель? if (system::issetUrl(2)) { $parent = new ormClass(system::url(2)); if ($parent->id() == '') { system::redirect('/constructor/tree'); } $is_list = $parent->isList(); $is_page = $parent->isPage(); $is_user = $parent->isInheritor('user'); } else { $is_user = false; } page::assign('obj.id', system::url(2)); page::assign('right', 'class_proc_add'); } } if ($is_page) { ui::SelectBox('class_list', ormClasses::getPagesClassList(), $base_class, 400, ' '); ui::SelectBox('template_list1', templates::getByDestination(0, true), isset($class) ? $class->getDefTemplate(0) : 0, 400, ' '); ui::SelectBox('template_list2', templates::getByDestination(1, true), isset($class) ? $class->getDefTemplate(1) : 0, 400, ' '); page::fParse('page_fields', $TEMPLATE['page_fields']); } else { if ($is_user) { page::fParse('page_fields', $TEMPLATE['user_fields']); } else { page::assign('page_fields', ''); } } if (system::action() == "add" || !$class->isSystem()) { ui::newButton(lang::get('BTN_SAVE'), "javascript:sendForm('save');"); ui::newButton(lang::get('BTN_APPLY'), "javascript:sendForm('apply');"); ui::setCancelButton('/constructor'); } else { ui::setBackButton('/constructor'); } page::assignArray(lang::get('CONSTR_FORM_FIELD')); page::assignSavingPost(); ui::CheckBox('system', 1, $system, lang::get('CONSTR_FORM_FIELD', 3)); ui::CheckBox('is_list', 1, $is_list, lang::get('CONSTR_FORM_FIELD', 4)); return page::parse($TEMPLATE['frame'], 1); }
public function upd() { // Проверяем наличие шаблонов $templs = templates::getByDestination(0, true); if (empty($templs)) { ui::MessageBox(lang::get('STRUCTURE_TEMPL_NOT_FOUND'), lang::get('STRUCTURE_TEMPL_NOT_FOUND2')); system::redirect('/structure/settings#tabs-page_tpl'); } // Указываем для какого объекта строить форму if (system::action() == "upd") { // Изменение страницы if (system::url(2) == 0) { system::redirect('/structure/settings'); } $obj = ormPages::get(system::url(2)); if ($obj instanceof ormPage) { $parent_id = $obj->getParentId(); ui::setHeader($obj->name); ui::setNaviBar(lang::get('TEXT_EDIT') . $obj->getClass()->getPadej(1)); } $class_list = ''; $right = 'page_proc_upd'; } else { if (system::action() == "add") { // Добавление страницы $class_name = system::issetUrl(3) ? system::url(3) : ormPages::getPopularClass(system::url(2)); if (!($class = ormClasses::get($class_name))) { system::redirect('/structure/tree'); } if (in_array($class->id(), reg::getList(ormPages::getPrefix() . '/no_edit'))) { system::redirect('/structure/tree'); } if (system::issetUrl(2) && system::url(2) != 0) { $parent = ormPages::get(system::url(2)); ui::setNaviBar($parent->name, '/structure/list/' . $parent->id); } ui::setHeader(lang::get('TEXT_ADD') . $class->getPadej(1)); // Если это добавление нового объекта $obj = new ormPage(); $obj->setParent(system::url(2)); $obj->setClass($class_name); $obj->view_in_menu = 1; $obj->view_submenu = 1; $obj->active = 1; $obj->in_search = 1; $obj->in_index = 1; $obj->publ_date = date('d.m.Y H:i:s'); // Наследуем параметры от родителя // Шаблоны $parent_id = $obj->issetParents() ? $obj->getParentId() : 0; $templ = templates::getPopularForSection($parent_id); $def_templ_1 = $obj->getClass()->getDefTemplate(0); $def_templ_2 = $obj->getClass()->getDefTemplate(1); $obj->template_id = $def_templ_1 != 0 ? $def_templ_1 : $templ[0]; $obj->template2_id = $def_templ_2 != 0 ? $def_templ_2 : $templ[1]; $parent_id = system::url(2); // Количество элементов на странице $this->getPopularValue($obj, 'number_of_items', 10); // Способ сортировки $this->getPopularValue($obj, 'order_by', ''); // Формируем список классов для быстрого изменения класса объекта $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/' . $parent_id . '/' . $bc->getSName() . '">' . $bc->getName() . '</a></li>'; } else { $elem_list .= ' <li ><img src="' . $pach . $ico . '"> <a href="' . system::au() . '/structure/page_add/' . $parent_id . '/' . $bc->getSName() . '">' . $bc->getName() . '</a></li>'; } } } $class_list = '<ul>' . $cat_list . '</ul><ul>' . $elem_list . '</ul>'; $right = 'page_proc_add'; } } page::assign('right', $right); // Если произошли ошибки, перенаправляем на главную страницу модуля if (!$obj instanceof ormPage || $obj->issetErrors()) { system::redirect('/structure/tree'); } // Устанавливаем кнопки для формы if (isset($_SESSION['STRUCTURE_LIST_FLAG']) && $_SESSION['STRUCTURE_LIST_FLAG']) { ui::setCancelButton('/structure/list/' . $parent_id); } else { ui::setCancelButton('/structure/tree'); } if ($obj->isEditable()) { ui::newButton(lang::get('BTN_SAVE'), "javascript:sendForm('save');"); ui::newButton(lang::get('BTN_APPLY'), "javascript:sendForm('apply');"); } // Создаем форму и выводим ее на страницу $form = new ormEditForm($obj, $right); $form->setORMList($class_list); $form->addPadding('param', 9, 1); // Выбор шаблона оформления страниц $form->addField('param', 10, '', lang::get('STRUCTURE_TEMPLATE'), $this->getTemplateBox('template_id', $templs, $obj->template_id)); // Выбор шаблона оформления объектов $form->addField('param', 11, '', lang::get('STRUCTURE_TEMPLATE2'), $this->getTemplateBox('template2_id', templates::getByDestination(1, true), $obj->template2_id, 1)); // Выводим ID и URL страницы $this->getPageInfo($obj, $form); $form->newTabs(lang::get('STRUCTURE_TABS_RIGHT'), rights::getListForObject($obj, system::action())); //$form->newTabs(lang::get('STRUCTURE_TABS_RESTORE'), ' '); return $form->getHTML(); }