Exemplo n.º 1
0
 /**
  * Unsubscription form
  *
  * @return Nette\Forms\Form
  */
 public static function getUnsubscriptionForm()
 {
     $form = \SimpleSubscribe\Forms::unsubscriptionForm();
     if ($form->isSubmitted() && $form->isValid()) {
         try {
             $subscribers = \SimpleSubscribe\RepositorySubscribers::getInstance();
             $formValues = $form->getValues();
             $subscribers->deleteOrDeactivateByEmail($formValues->email);
             $form->setValues(array(), TRUE);
         } catch (RepositarySubscribersException $e) {
             $form->addError($e->getMessage());
         }
     }
     return $form;
 }
Exemplo n.º 2
0
 /**
  * Constructor
  */
 public function __construct()
 {
     // admin actions
     add_action('admin_init', array($this, 'adminInit'));
     add_action('admin_menu', array($this, 'adminMenu'));
     add_action('admin_notices', array($this, 'adminNotices'));
     add_action('admin_enqueue_scripts', function () {
         wp_enqueue_style('core', SUBSCRIBE_ASSETS . 'styleAdmin.css', null, '2.0');
         wp_enqueue_script('netteForms', SUBSCRIBE_ASSETS . 'netteForms.js', array(), '1.0.0');
     });
     // settings & forms
     $this->settings = new \SimpleSubscribe\Settings(SUBSCRIBE_KEY);
     $this->subscribers = \SimpleSubscribe\RepositorySubscribers::getInstance();
     $this->log = \SimpleSubscribe\RepositoryLog::getInstance();
     $this->email = \SimpleSubscribe\Email::getInstance();
     $this->formSettings = \SimpleSubscribe\Forms::settings($this->settings->getSettings());
     $this->formEmailTemplate = \SimpleSubscribe\Forms::emailTemplate($this->settings->getSettings());
     $this->formEmail = \SimpleSubscribe\Forms::email($_GET);
     $this->formSubscriber = \SimpleSubscribe\Forms::subscribeAdmin($this->settings->getTableColumns());
     $this->formSubscriberWp = \SimpleSubscribe\Forms::subscribeAdminWp($this->subscribers->getAllRegisteredInactive());
     $this->formEmailPreview = \SimpleSubscribe\Forms::emailPreview();
 }
Exemplo n.º 3
0
 /**
  * Unsubscription form
  *
  * @param bool $widget
  * @param array $args
  * @return Nette\Templating\FileTemplate
  */
 public static function unsubscriptionForm($widget = FALSE, $args = array())
 {
     $widgetMessage = '';
     $widgetTitle = isset($args['title']) && !empty($args['title']) ? $args['title'] : 'Unsubscribe';
     $widgetId = isset($args['widget_id']) ? $args['widget_id'] : NULL;
     $form = \SimpleSubscribe\Forms::unsubscriptionForm($widget, $widgetId);
     if ($form->isSubmitted() && $form->isValid()) {
         try {
             $subscribers = \SimpleSubscribe\RepositorySubscribers::getInstance();
             $formValues = $form->getValues();
             $subscribers->deleteOrDeactivateByEmail($formValues->email);
             $widgetMessage = '<strong>You have successfully unsubscribed. We\'re sorry to see you leave!</strong>';
             $form = '';
         } catch (RepositarySubscribersException $e) {
             $form->addError($e->getMessage());
         }
     }
     if ($widget) {
         // defaults
         $defaults = array('beforeWidget' => $args['before_widget'], 'beforeTitle' => $args['before_title'], 'afterTitle' => $args['after_title'], 'widgetTitle' => $widgetTitle, 'message' => $widgetMessage, 'guts' => $form, 'afterWidget' => $args['after_widget']);
         // template
         $template = new \SimpleSubscribe\Template('widget.latte');
         $template->prepareTemplate($defaults);
     } else {
         // defaults
         $defaults = array('title' => 'Unsubscribe', 'message' => $widgetMessage, 'guts' => $form);
         // template
         $template = new \SimpleSubscribe\Template('shortcode.latte');
         $template->prepareTemplate($defaults);
     }
     return $template->getTemplate();
 }