public function __construct($view, $title_page) { parent::__construct($view); $lang = LangLoader::get('common', 'newsletter'); $this->set_title($lang['newsletter']); $this->add_link($lang['newsletter.streams'], NewsletterUrlBuilder::manage_streams()); $this->add_link($lang['stream.add'], NewsletterUrlBuilder::add_stream()); $this->add_link(LangLoader::get_message('configuration', 'admin'), NewsletterUrlBuilder::configuration()); $env = $this->get_graphical_environment(); $env->set_page_title($title_page, $lang['newsletter']); }
public function get_actions_tree_links() { $lang = LangLoader::get('common', 'newsletter'); $tree = new ModuleTreeLinks(); $manage_newsletter_link = new AdminModuleLink($lang['newsletter.streams.manage'], NewsletterUrlBuilder::manage_streams()); $manage_newsletter_link->add_sub_link(new AdminModuleLink($lang['newsletter.streams.manage'], NewsletterUrlBuilder::manage_streams())); $manage_newsletter_link->add_sub_link(new AdminModuleLink($lang['stream.add'], NewsletterUrlBuilder::add_stream())); $tree->add_link($manage_newsletter_link); $tree->add_link(new AdminModuleLink(LangLoader::get_message('configuration', 'admin'), NewsletterUrlBuilder::configuration())); $tree->add_link(new ModuleLink($lang['newsletter-add'], NewsletterUrlBuilder::add_newsletter(), NewsletterAuthorizationsService::default_authorizations()->create_newsletters())); $tree->add_link(new ModuleLink($lang['newsletter.archives'], NewsletterUrlBuilder::archives(), NewsletterAuthorizationsService::default_authorizations()->read_archives())); return $tree; }
private function build_response(View $view) { $body_view = new FileTemplate('newsletter/NewsletterBody.tpl'); $body_view->add_lang($this->lang); $body_view->put('TEMPLATE', $view); $response = new SiteDisplayResponse($body_view); $breadcrumb = $response->get_graphical_environment()->get_breadcrumb(); $breadcrumb->add($this->lang['newsletter'], NewsletterUrlBuilder::home()->rel()); $breadcrumb->add($this->lang['unsubscribe.newsletter'], NewsletterUrlBuilder::unsubscribe()->rel()); $graphical_environment = $response->get_graphical_environment(); $graphical_environment->set_page_title($this->lang['unsubscribe.newsletter'], $this->lang['newsletter']); $graphical_environment->get_seo_meta_data()->set_canonical_url(NewsletterUrlBuilder::unsubscribe()); return $response; }
public function execute(HTTPRequestCustom $request) { $id = $request->get_int('id', 0); $id_stream = $request->get_int('id_stream', 0); if ($this->archive_exist($id) || $id_stream !== 0 && $id !== 0) { if (!NewsletterAuthorizationsService::id_stream($id_stream)->moderation_subscribers()) { NewsletterAuthorizationsService::get_errors()->moderation_archives(); } NewsletterService::delete_archive($id); AppContext::get_response()->redirect($request->get_url_referrer() ? $request->get_url_referrer() : NewsletterUrlBuilder::archives($id_stream), LangLoader::get_message('newsletter.message.success.delete', 'common', 'newsletter')); } else { $controller = new UserErrorController(LangLoader::get_message('error', 'status-messages-common'), $this->lang['error-archive-not-existed']); DispatchManager::redirect($controller); } }
$lang['newsletter.types.text'] = 'Text'; $lang['newsletter.types.text_explain'] = 'You can\'t make any formatting of the message.'; $lang['newsletter.types.bbcode'] = 'BBCode'; $lang['newsletter.types.bbcode_explain'] = 'You can format text using the BBCode, the simplified formatting language used throughout the portal.'; $lang['newsletter.types.html'] = 'HTML'; $lang['newsletter.types.forexpert'] = 'Only expert users'; $lang['newsletter.types.html_explain'] = 'You can format the text as you wish, but you need to know HTML language.'; $lang['newsletter.types.next'] = 'Next'; //Other $lang['newsletter.no_newsletters'] = 'No newsletter Available'; $lang['unsubscribe_newsletter'] = 'Unsubscribe to this newsletter'; $lang['newsletter.view_archives'] = 'View Archives'; $lang['newsletter.view_subscribers'] = 'View record'; $lang['newsletter.title'] = 'Title of the newsletter'; $lang['newsletter.contents'] = 'Content'; //Messages $lang['stream.message.success.add'] = 'The stream <b>:name</b> has been added'; $lang['stream.message.success.edit'] = 'The stream <b>:name</b> has been modified'; $lang['stream.message.success.delete'] = 'The stream <b>:name</b> has been deleted'; //Errors $lang['error.sender-mail-not-configured'] = 'The newsletter sender mail has not been configured by the administrator, please try again later.'; $lang['error.sender-mail-not-configured-for-admin'] = 'The newsletter sender mail has not been configured. Please <a href="' . NewsletterUrlBuilder::configuration()->rel() . '">configure</a> it before sending a newsletter.'; $lang['admin.stream-not-existed'] = 'The requested stream does not exist'; $lang['error-subscriber-not-existed'] = 'This registrant is not exist'; $lang['error-archive-not-existed'] = 'This archive does not exist'; $lang['newsletter.success-send-test'] = 'The test email has been sent'; $lang['newsletter.message.success.add'] = 'The newsletter has been sent'; $lang['newsletter.message.success.delete'] = 'The archive has been deleted'; //Register extended field $lang['extended_fields.newsletter.name'] = 'Subscribe to newsletters'; $lang['extended_fields.newsletter.description'] = 'Select the newsletter you wish to be registered';
/** * {@inheritdoc} */ public function add_unsubscribe_link() { return '<br /><br /><a href="' . NewsletterUrlBuilder::unsubscribe()->absolute() . '">' . $this->lang['unsubscribe_newsletter'] . '</a><br /><br />'; }
protected function get_categories_management_url() { return NewsletterUrlBuilder::manage_streams(); }
$lang['newsletter.types.text'] = 'Texte'; $lang['newsletter.types.text_explain'] = 'Vous ne pourrez procéder à aucune mise en forme du message.'; $lang['newsletter.types.bbcode'] = 'BBCode'; $lang['newsletter.types.bbcode_explain'] = 'Vous pouvez formater le texte grâce au BBCode, le langage de mise en forme simplifié adopté sur tout le portail.'; $lang['newsletter.types.html'] = 'HTML'; $lang['newsletter.types.forexpert'] = 'Utilisateurs expérimentés seulement'; $lang['newsletter.types.html_explain'] = 'Vous pouvez mettre en forme le texte à votre guise, mais vous devez connaître le langage html.'; $lang['newsletter.types.next'] = 'Suivant'; //Other $lang['newsletter.no_newsletters'] = 'Aucune newsletter disponible'; $lang['unsubscribe_newsletter'] = 'Se désabonner de cette newsletter'; $lang['newsletter.view_archives'] = 'Voir les archives'; $lang['newsletter.view_subscribers'] = 'Voir les inscrits'; $lang['newsletter.title'] = 'Titre de la newsletter'; $lang['newsletter.contents'] = 'Contenu'; //Messages $lang['stream.message.success.add'] = 'Le flux <b>:name</b> a été ajouté'; $lang['stream.message.success.edit'] = 'Le flux <b>:name</b> a été modifié'; $lang['stream.message.success.delete'] = 'Le flux <b>:name</b> a été supprimé'; //Errors $lang['error.sender-mail-not-configured'] = 'L\'adresse email d\'envoi de la newsletter n\'a pas été configurée par l\'administrateur, veuillez réessayer quand ça sera fait.'; $lang['error.sender-mail-not-configured-for-admin'] = 'L\'adresse email d\'envoi de la newsletter n\'a pas été configurée. Veuillez la <a href="' . NewsletterUrlBuilder::configuration()->rel() . '">configurer</a> avant de pouvoir envoyer une newsletter.'; $lang['admin.stream-not-existed'] = 'Le flux demandé n\'existe pas'; $lang['error-subscriber-not-existed'] = 'L\'incrit n\'existe pas'; $lang['error-archive-not-existed'] = 'L\'archive n\'existe pas'; $lang['newsletter.success-send-test'] = 'Le mail de test a bien été envoyé'; $lang['newsletter.message.success.add'] = 'La newsletter a été envoyée'; $lang['newsletter.message.success.delete'] = 'L\'archive a été supprimée'; //Register extended field $lang['extended_fields.newsletter.name'] = 'Newsletter(s) souscrite(s)'; $lang['extended_fields.newsletter.description'] = 'Sélectionnez la(les) newsletter(s) auxquelles vous souhaitez être inscrit';
protected function get_category_url(Category $category) { return NewsletterUrlBuilder::archives($category->get_id(), $category->get_rewrited_name()); }
private function build_response(View $view, $type) { $body_view = new FileTemplate('newsletter/NewsletterBody.tpl'); $body_view->add_lang($this->lang); $body_view->put('TEMPLATE', $view); $response = new SiteDisplayResponse($body_view); $breadcrumb = $response->get_graphical_environment()->get_breadcrumb(); $breadcrumb->add($this->lang['newsletter'], NewsletterUrlBuilder::home()->rel()); $breadcrumb->add($this->lang['newsletter-add'], NewsletterUrlBuilder::add_newsletter()->rel()); $breadcrumb->add($this->lang['newsletter.types.' . $type], NewsletterUrlBuilder::add_newsletter($type)->rel()); $response->get_graphical_environment()->set_page_title($this->lang['newsletter-add'], $this->lang['newsletter']); return $response; }
protected function get_delete_category_url(Category $category) { return NewsletterUrlBuilder::delete_stream($category->get_id()); }
private function build_response(View $view) { $body_view = new FileTemplate('newsletter/NewsletterBody.tpl'); $body_view->add_lang($this->lang); $body_view->put('TEMPLATE', $view); $response = new SiteDisplayResponse($body_view); $breadcrumb = $response->get_graphical_environment()->get_breadcrumb(); $breadcrumb->add($this->lang['newsletter'], NewsletterUrlBuilder::home()->rel()); $breadcrumb->add($this->lang['archives.list'], NewsletterUrlBuilder::archives()->rel()); if ($this->stream->get_id() > 0) { $stream = NewsletterStreamsCache::load()->get_stream($this->stream->get_id()); $breadcrumb->add($stream->get_name(), NewsletterUrlBuilder::archives($this->stream->get_id(), $this->stream->get_rewrited_name())->rel()); } $graphical_environment = $response->get_graphical_environment(); $graphical_environment->set_page_title($this->lang['archives.list'], $this->lang['newsletter']); $graphical_environment->get_seo_meta_data()->set_canonical_url(NewsletterUrlBuilder::archives($this->stream->get_id(), $this->stream->get_rewrited_name())); return $response; }