/** * Устанавливает количество отображаемых записей в разделе новостей * @return boolean */ public function setCountPrintRowsComments() { USER::AccessOnly('1,4', 'exit()'); $count = 20; if (is_numeric($_POST['count']) && !empty($_POST['count'])) { $count = $_POST['count']; } MG::setOption(array('option' => 'countPrintRowsComments', 'value' => $count)); return true; }
/** * Сохраняет и обновляет параметры пользователя. * @return type */ public function saveUser() { $this->messageSucces = $this->lang['ACT_SAVE_USER']; $this->messageError = $this->lang['ACT_NOT_SAVE_USER']; // Обновление. if (!empty($_POST['id'])) { // если пароль не передан значит не обновляем его if (empty($_POST['pass'])) { unset($_POST['pass']); } else { $_POST['pass'] = crypt($_POST['pass']); } //вычисляем надо ли перезаписать данные текущего пользователя после обновления //(только в том случае если из админки меняется запись текущего пользователя) $authRewrite = $_POST['id'] != User::getThis()->id ? true : false; // если происходит попытка создания нового администратора от лица модератора, то вывести ошибку if ($_POST['role'] == '1') { if (!USER::AccessOnly('1')) { return false; } } if ($_POST['birthday']) { $_POST['birthday'] = date('Y-m-d', strtotime($_POST['birthday'])); } if (User::update($_POST['id'], $_POST, $authRewrite)) { $this->data = $_POST; } else { return false; } } else { // добавление if ($_POST['role'] == '1') { if (!USER::AccessOnly('1')) { return false; } } try { $_POST['id'] = User::add($_POST); } catch (Exception $exc) { $this->messageError = $this->lang['ACT_ERR_SAVE_USER']; return false; } //отправка письма с информацией о регистрации $siteName = MG::getSetting('sitename'); $userEmail = $_POST['email']; $message = ' Здравствуйте!<br> Вы получили данное письмо так как на сайте ' . $siteName . ' зарегистрирован новый пользователь с логином ' . $userEmail . '.<br> Отвечать на данное сообщение не нужно.'; $emailData = array('nameFrom' => $siteName, 'emailFrom' => MG::getSetting('noReplyEmail'), 'nameTo' => 'Пользователю сайта ' . $siteName, 'emailTo' => $userEmail, 'subject' => 'Активация пользователя на сайте ' . $siteName, 'body' => $message, 'html' => true); Mailer::sendMimeMail($emailData); $_POST['date_add'] = date('d.m.Y H:i'); $this->data = $_POST; } return true; }
/** * Удаление триггера и его элементов * @return boolean */ public function deleteTrigger() { //доступно только модераторам и админам. USER::AccessOnly('1,4', 'exit()'); $this->messageSucces = $this->lang['ENTITY_DEL']; $this->messageError = $this->lang['ENTITY_DEL_NOT']; if (DB::query('DELETE FROM `' . PREFIX . $this->pluginName . '` WHERE `id`= ' . DB::quote($_POST['id']))) { DB::query('DELETE FROM `' . PREFIX . $this->pluginName . '-elements` WHERE `parent`= ' . DB::quote($_POST['id'])); return true; } return false; }
?> "></a></li> <li class="delete-order " id="<?php echo $data['id']; ?> "><a class="tool-tip-bottom" href="javascript:void(0);" title="<?php echo $lang['DELETE']; ?> "></a></li> <?php } ?> <?php // для модератора выводить элементы управления всех пользователей if (USER::AccessOnly('1')) { ?> <li class="edit-row" id="<?php echo $data['id']; ?> "><a class="tool-tip-bottom" href="javascript:void(0);" title="<?php echo $lang['EDIT']; ?> "></a></li> <li class="delete-order " id="<?php echo $data['id']; ?> "><a class="tool-tip-bottom" href="javascript:void(0);" title="<?php echo $lang['DELETE']; ?> "></a></li>
/** * Получает следующий id для таблицы продуктов * @return boolean */ public function nextIdProduct() { $result['id'] = 0; USER::AccessOnly('1,4', 'exit()'); $res = DB::query('SHOW TABLE STATUS WHERE Name = "' . PREFIX . 'product" '); if ($row = DB::fetchArray($res)) { $result['id'] = $row['Auto_increment']; } $this->data = $result; return true; }