function AdminBlocksEdit($a) { global $config, $site, $user; // Для обратной совместимости со старыми блоками $showin = array('ALL_EXCEPT'); $showin_uri = array(); $template = ''; $b_vi = 4; $b_en = 1; if (isset($_POST['type']) || $a == 'edit') { $b_pos = array('L' => false, 'R' => false, 'T' => false, 'B' => false); $b_pos = array('L' => false, 'R' => false, 'T' => false, 'B' => false, 'A' => false); $b_title = ''; $b_vi = 4; $b_en = 1; $block_config = ''; // Используется в подключаемых файлах if ($a == 'edit') { System::database()->Select('blocks', "`id`='" . SafeEnv($_GET['id'], 11, int) . "'"); $r = System::database()->FetchRow(); $b_title = SafeDB($r['title'], 255, str); $b_pos[SafeDB($r['position'], 1, str)] = true; $b_vi = SafeDB($r['view'], 1, int); $b_en = SafeDB($r['enabled'], 1, bool); $b_type = SafeDB($r['type'], 255, str); $template = SafeDB($r['template'], 255, str); $block_config = $r['config']; // Используется в подключаемых файлах $title = 'Редактирование блока'; $a_form = ADMIN_FILE . '?exe=blocks&a=update&id=' . SafeEnv($_GET['id'], 11, int); $button = 'Сохранить изменения'; if ($r['showin'] != '') { $showin = unserialize($r['showin']); } if ($r['showin_uri'] != '') { $showin_uri = unserialize($r['showin_uri']); } } else { $a_form = ADMIN_FILE . '?exe=blocks&a=newsave'; $b_type = SafeEnv($_POST['type'], 255, str); $title = 'Настройка блока'; $button = 'Создать'; $showin[] = array('ALL_EXCEPT'); } FormRow('Заголовок', System::site()->Edit('title', $b_title, false, 'style="width:400px;" class="autofocus"')); $constructor = System::config('blocks_dir') . $b_type . '/constructor.php'; if (is_file($constructor)) { include_once $constructor; } $btems = GetBlockTemplates(); $temdata = array(); foreach ($btems as $tem) { System::site()->DataAdd($temdata, $tem, $tem, $tem == $template); } FormRow('Шаблон блока', System::site()->Select('template', $temdata)); System::site()->DataAdd($posdata, 'Left', 'Колонка слева', $b_pos['L']); System::site()->DataAdd($posdata, 'Right', 'Колонка справа', $b_pos['R']); System::site()->DataAdd($posdata, 'Top', 'В центре сверху', $b_pos['T']); System::site()->DataAdd($posdata, 'Bottom', 'В центре снизу', $b_pos['B']); //System::site()->DataAdd($posdata, 'ABottom', 'A В центре снизу', $b_pos['A']); FormRow('Позиционирование', System::site()->Select('position', $posdata)); VisibilityConditionsAdmin($showin, $showin_uri); FormRow('Кто видит', System::site()->Select('view', GetUserTypesFormData($b_vi))); FormRow('Включить', System::site()->Select('enabled', GetEnData($b_en, 'Да', 'Нет'))); AddCenterBox($title); AddForm('<form action="' . $a_form . '" method="post">' . System::site()->Hidden('type', $b_type), System::site()->Button('Отмена', 'onclick="history.go(-1);"') . System::site()->Submit($button)); } else { GO(ADMIN_FILE); } }
function AdminSiteMessagesEditor() { $title = ''; $text = ''; $showin = array('ALL_EXCEPT'); $extrauri = array(); $time = '0'; $view = 4; $enabled = 1; $view_title = array(false, false); $position = array(false, false); $resettime = ''; if (!isset($_GET['id'])) { $view_title[1] = true; $position[1] = true; $url = ''; $btitle = 'Создать сообщение'; $method = 'Создать'; $a = 'add'; } else { $id = SafeEnv($_GET['id'], 11, int); System::database()->Select('messages', "`id`='{$id}'"); $msg = System::database()->FetchRow(); $title = SafeDB($msg['title'], 250, str); $text = SafeDB($msg['text'], 0, str, false); $time = SafeDB($msg['expire'], 11, int); if ($time != '0') { $total = TotalTime(time(), SafeDB($msg['date'], 11, int) + Day2Sec * SafeDB($msg['expire'], 11, int)); $resettime = 'Осталось времени ' . $total['sdays'] . ' и ' . $total['shours']; } $showin = unserialize($msg['showin']); $extrauri = unserialize($msg['showin_uri']); $view_title[SafeDB($msg['view_title'], 1, int)] = true; $position[SafeDB($msg['position'], 1, int)] = true; $view = SafeDB($msg['view'], 1, int); $enabled = SafeDB($msg['active'], 1, int); $url = '&id=' . $id; $btitle = 'Редактирование сообщения'; $method = 'Сохранить изменения'; $a = 'edit'; } FormRow('Заголовок', System::site()->Edit('title', $title, false, 'maxlength="250" style="width:400px;" class="autofocus"')); FormRow('Показывать заголовок', System::site()->Radio('vtitle', 'on', $view_title[1]) . 'Да ' . System::site()->Radio('vtitle', 'off', $view_title[0]) . 'Нет'); FormTextRow('Текст сообщения', System::site()->HtmlEditor('text', $text, 625, 300)); FormRow('Отображать дней:<br /><small> (0 - неограниченно)</small>', System::site()->Edit('time', $time, false, 'maxlength="3" style="width:40px;"') . $resettime); if ($a == 'edit') { FormRow('Сбросить таймер', System::site()->Check('resettime', '1', false)); } VisibilityConditionsAdmin($showin, $extrauri); System::site()->DataAdd($posd, 'top', 'Вверху', $position[1]); System::site()->DataAdd($posd, 'bottom', 'Внизу', $position[0]); FormRow('Положение', System::site()->Select('position', $posd)); FormRow('Кто видит', System::site()->Select('view', GetUserTypesFormData($view))); FormRow('Включить', System::site()->Select('enabled', GetEnData($enabled))); AddCenterBox($btitle); AddForm('<form action="' . ADMIN_FILE . '?exe=messages&a=save' . $url . '" method="post">', System::site()->Button('Отмена', 'onclick="history.go(-1)"') . System::site()->Submit($method)); }