public function execute() { $this->setLayout(new guestbook2BackendLayout()); // Creating a model instance for retrieving data from the database // Создаем экземпляр модели для получения данных из БД $model = new guestbook2Model(); // Retrieving all guestbook records from the database // Получаем все записи гостевой книги из БД $records = $model->getRecords(0, 0); foreach ($records as &$r) { if ($r['contact_id']) { $r['name'] = $r['contact_name']; // getting the contact photo URL // получаем URL на фотографию контакта $r['photo_url'] = waContact::getPhotoUrl($r['contact_id'], $r['photo'], 20); } } unset($r); // Passing records to the template // Передаем записи в шаблон $this->view->assign('records', $records); // Passing the frontend URL to the template // Передаём в шаблон УРЛ фронтенда $this->view->assign('url', wa()->getRouteUrl($this->getAppId(), true)); // Passing user's record deletion access rights value to the template // Access rights are defined in config file lib/config/guestbookRightConfig.class.php // Передаём в шаблон права пользователя на удаление записей из гостевой книги // Права описаны в конфиге lib/config/guestbookRightConfig.class.php $this->view->assign('rights_delete', $this->getRights('delete')); // If user is an admin of the Contacts app then show links to Contacts // Если пользователь админ приложения контакты, то показывать ссылки на контакты $this->view->assign('rights_contacts', $this->getUser()->isAdmin('contacts')); }
public function execute() { $this->setLayout(new guestbook2BackendLayout()); // Создаем экземпляр модели для получения данных из БД $model = new guestbook2Model(); // Получаем все записи гостевой книги из БД $records = $model->getRecords(0, 0); foreach ($records as &$r) { if ($r['contact_id']) { $r['name'] = $r['contact_name']; // получаем URL на фотографию контакта $r['photo_url'] = waContact::getPhotoUrl($r['contact_id'], $r['photo'], 20); } } unset($r); // Передаем записи в шаблон $this->view->assign('records', $records); // Передаём в шаблон УРЛ фронтенда $this->view->assign('url', wa()->getRouteUrl($this->getAppId(), true)); // Передаём в шаблон права пользователя на удаление записей из гостевой книги // Права описаны в конфиге lib/config/guestbookRightConfig.class.php $this->view->assign('rights_delete', $this->getRights('delete')); // Если пользователь админ приложения контакты, то показывать ссылки на контакты $this->view->assign('rights_contacts', $this->getUser()->isAdmin('contacts')); }
/** * @param array $params deleted contact_id * @see waEventHandler::execute() * @return void */ public function execute($params) { // Получаем все удаляемые контакты $contact_model = new waContactModel(); $contacts = $contact_model->getByField('id', $params, true); $guestbook_model = new guestbook2Model(); foreach ($contacts as $contact) { // Обновляем записи гостевой книги, чтобы не было "битых" contact_id $guestbook_model->updateByField('contact_id', $contact['id'], array('contact_id' => 0, 'name' => $contact['name'])); } }
/** * @param array $params deleted contact_id * @see waEventHandler::execute() * @return void */ public function execute($params) { // Getting all contacts to be deleted // Получаем все удаляемые контакты $contact_model = new waContactModel(); $contacts = $contact_model->getByField('id', $params, true); $guestbook_model = new guestbook2Model(); foreach ($contacts as $contact) { // Updating guestbook records to avoid appearance of non-existent contact_id values // Обновляем записи гостевой книги, чтобы не было "битых" contact_id $guestbook_model->updateByField('contact_id', $contact['id'], array('contact_id' => 0, 'name' => $contact['name'])); } }
public function execute() { // Если у пользователя есть права на удаление записей из гостевой книги if ($this->getRights('delete')) { // Получаем id удаляемой записи $id = waRequest::get('id', 0, 'int'); if ($id) { // Удаляем запись из таблицы $model = new guestbook2Model(); $model->deleteById($id); } } // Редирект на главную страницу приложения $this->redirect(wa()->getAppUrl()); }
/** * Adding a new record to the guestbook * Добавление новой записи в гостевую книгу */ protected function add() { // Creating a model instance for retrieving data from the database // Создаем экземпляр модели для получения данных из БД $model = new guestbook2Model(); if ($text = waRequest::post('text')) { $data = array('text' => $text, 'datetime' => date('Y-m-d H:i:s')); if ($this->getUser()->getId()) { $data['contact_id'] = $this->getUser()->getId(); } else { $data['name'] = waRequest::post('name'); } // Inserting a new record into the database table // Вставляем новую запись в таблицу $model->insert($data); // If contact is not a backend user // Если контакт не является юзером бэкенда if ($this->getUser()->getId() && !$this->getUser()->get('is_user')) { // Adding contact to the app's system category // Добавляем контакт в системную категорию приложения $this->getUser()->addToCategory($this->getAppId()); } } // redirecting user to the first page to show the new message // редирект на первую страницу, чтобы показать новое сообщение $this->redirect(wa()->getRouteUrl('/frontend')); }
public function execute() { // If user has access rights to delete guestbook records // Если у пользователя есть права на удаление записей из гостевой книги if ($this->getRights('delete')) { // Getting id of the record to be deleted // Получаем id удаляемой записи $id = waRequest::get('id', 0, 'int'); if ($id) { // Delete record from the database table // Удаляем запись из таблицы $model = new guestbook2Model(); $model->deleteById($id); } } // Redirecting user to the app's home page // Редирект на главную страницу приложения $this->redirect(wa()->getAppUrl()); }
/** * Добавление новой записи в гостевую книгу */ protected function add() { // Создаем экземпляр модели для получения данных из БД $model = new guestbook2Model(); if ($text = waRequest::post('text')) { $data = array('text' => $text, 'datetime' => date('Y-m-d H:i:s')); if ($this->getUser()->getId()) { $data['contact_id'] = $this->getUser()->getId(); } else { $data['name'] = waRequest::post('name'); } // Вставляем новую запись в таблицу $model->insert($data); // Если контакт не является юзером бэкенда if ($this->getUser()->getId() && !$this->getUser()->get('is_user')) { // Добавляем контакт в системную категорию приложения $this->getUser()->addToCategory($this->getAppId()); } } // редирект на первую страницу, чтобы показать новое сообщение $this->redirect(wa()->getRouteUrl('/frontend')); }