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 generate_response(View $tpl) { $message = $this->get_message(); $page = AppContext::get_request()->get_getint('page', 1); $response = new SiteDisplayResponse($tpl); $graphical_environment = $response->get_graphical_environment(); $breadcrumb = $graphical_environment->get_breadcrumb(); $breadcrumb->add($this->lang['module_title'], GuestbookUrlBuilder::home($page)); if ($message->get_id() === null) { $graphical_environment->set_page_title($this->lang['guestbook.add'], $this->lang['module_title']); $breadcrumb->add($this->lang['guestbook.add'], GuestbookUrlBuilder::add()); $graphical_environment->get_seo_meta_data()->set_canonical_url(GuestbookUrlBuilder::add()); } else { $graphical_environment->set_page_title($this->lang['guestbook.edit'], $this->lang['module_title']); $breadcrumb->add($this->lang['guestbook.edit'], GuestbookUrlBuilder::edit($message->get_id(), $page)); $graphical_environment->get_seo_meta_data()->set_canonical_url(GuestbookUrlBuilder::edit($message->get_id(), $page)); } return $response; }
private function generate_response() { $page = AppContext::get_request()->get_getint('page', 1); $response = new SiteDisplayResponse($this->view); $graphical_environment = $response->get_graphical_environment(); $graphical_environment->set_page_title($this->lang['module_title']); $graphical_environment->get_seo_meta_data()->set_canonical_url(GuestbookUrlBuilder::home($page)); $breadcrumb = $graphical_environment->get_breadcrumb(); $breadcrumb->add($this->lang['module_title'], GuestbookUrlBuilder::home($page)); return $response; }
public function get_array_tpl_vars($page = 1) { $user = $this->get_author_user(); $user_group_color = User::get_group_color($user->get_groups(), $user->get_level(), true); return array('C_EDIT' => $this->is_authorized_edit(), 'C_DELETE' => $this->is_authorized_delete(), 'C_AUTHOR_EXIST' => $user->get_id() != User::VISITOR_LEVEL, 'C_USER_GROUP_COLOR' => !empty($user_group_color), 'ID' => $this->id, 'CONTENTS' => FormatingHelper::second_parse($this->contents), 'DATE' => $this->creation_date->format(Date::FORMAT_DAY_MONTH_YEAR_HOUR_MINUTE_TEXT), 'DATE_DAY' => $this->creation_date->get_day(), 'DATE_MONTH' => $this->creation_date->get_month(), 'DATE_YEAR' => $this->creation_date->get_year(), 'DATE_ISO8601' => $this->creation_date->format(Date::FORMAT_ISO8601), 'PSEUDO' => $this->login ? $this->login : $user->get_display_name(), 'USER_LEVEL_CLASS' => UserService::get_level_class($user->get_level()), 'USER_GROUP_COLOR' => $user_group_color, 'U_ANCHOR' => GuestbookUrlBuilder::home($page, $this->id)->rel(), 'U_AUTHOR_PROFILE' => UserUrlBuilder::profile($this->get_author_user()->get_id())->rel(), 'U_EDIT' => GuestbookUrlBuilder::edit($this->id, $page)->rel(), 'U_DELETE' => GuestbookUrlBuilder::delete($this->id)->rel()); }