public function execute(HTTPRequestCustom $request) { AppContext::get_session()->csrf_get_protect(); $message = $this->get_message($request); $this->check_authorizations($message); GuestbookService::delete('WHERE id=:id', array('id' => $message->get_id())); GuestbookMessagesCache::invalidate(); AppContext::get_response()->redirect($request->get_url_referrer() ? $request->get_url_referrer() : GuestbookUrlBuilder::home(), LangLoader::get_message('guestbook.message.success.delete', 'common', 'guestbook')); }
public function get_menu_content() { //Create file template $tpl = new FileTemplate('guestbook/GuestbookModuleMiniMenu.tpl'); //Assign the lang file to the tpl $tpl->add_lang(LangLoader::get('common', 'guestbook')); $tpl->put('U_GUESTBOOK', GuestbookUrlBuilder::home()->rel()); $guestbook_cache = GuestbookMessagesCache::load(); $random_message = $guestbook_cache->get_message(array_rand($guestbook_cache->get_messages())); if ($random_message !== null) { $user_group_color = User::get_group_color($random_message['groups'], $random_message['level']); $tpl->put_all(array('C_ANY_MESSAGE_GUESTBOOK' => true, 'C_USER_GROUP_COLOR' => !empty($user_group_color), 'C_MORE_CONTENTS' => strlen($random_message['contents']) >= 200, 'C_VISITOR' => empty($random_message['user_id']), 'CONTENTS' => $random_message['contents'], 'SHORT_CONTENTS' => nl2br(TextHelper::substr_html($random_message['contents'], 0, 200)), 'USER_PSEUDO' => $random_message['login'], 'USER_LEVEL_CLASS' => UserService::get_level_class($random_message['level']), 'USER_GROUP_COLOR' => $user_group_color, 'U_MESSAGE' => GuestbookUrlBuilder::home($random_message['page'], $random_message['id'])->rel(), 'U_PROFILE' => UserUrlBuilder::profile($random_message['user_id'])->rel())); } return $tpl->render(); }
private function save() { $message = $this->get_message(); if ($this->form->has_field('pseudo')) { $message->set_login($this->form->get_value('pseudo')); } $message->set_contents($this->form->get_value('contents')); if ($message->get_id() === null) { $id_message = GuestbookService::add($message); } else { $id_message = $message->get_id(); GuestbookService::update($message); } GuestbookMessagesCache::invalidate(); return $id_message; }
private function save() { $this->config->set_items_per_page($this->form->get_value('items_per_page')); $forbidden_tags = array(); foreach ($this->form->get_value('forbidden_tags') as $field => $option) { $forbidden_tags[] = $option->get_raw_value(); } $this->config->set_forbidden_tags($forbidden_tags); if ($this->form->get_value('max_links_number_per_message_enabled')) { $this->config->enable_max_links_number_per_message(); $this->config->set_maximum_links_message($this->form->get_value('max_links_number_per_message')); } else { $this->config->disable_max_links_number_per_message(); } $this->config->set_authorizations($this->form->get_value('authorizations')->build_auth_array()); GuestbookConfig::save(); GuestbookMessagesCache::invalidate(); }