Example #1
0
 /**
  * Add all the subscribers to the queue
  */
 public static function add_all_to_queue($news_id)
 {
     $subscribers = NewslettersSubscribers::get_active_subscribers();
     foreach ($subscribers as $subscriber) {
         self::add_to_queue($subscriber['subscriber_id'], $news_id);
     }
     return true;
 }
Example #2
0
 public function optoutAction()
 {
     $email = $this->getRequest()->getParam('id');
     if (NewslettersSubscribers::optOut($email)) {
         $this->_helper->redirector('index', 'index', 'default', array('mex' => "You have unsubscribed our newsletter correctly."));
     } else {
         $this->_helper->redirector('index', 'index', 'default', array('mex' => "There was a problem during the email registration, please check your email address."));
     }
 }
 /**
  * processAction
  * Update the record previously selected
  * @return unknown_type
  */
 public function processAction()
 {
     $redirector = Zend_Controller_Action_HelperBroker::getStaticHelper('redirector');
     $form = $this->getForm("/admin/subscribers/process");
     $request = $this->getRequest();
     // Create the buttons in the edit form
     $this->view->buttons = array(array("url" => "#", "label" => $this->translator->translate('Save'), "params" => array('css' => null, 'id' => 'submit')), array("url" => "/admin/subscribers/list", "label" => $this->translator->translate('List'), "params" => array('css' => null, 'id' => 'submit')), array("url" => "/admin/subscribers/new/", "label" => $this->translator->translate('New'), "params" => array('css' => null)));
     // Check if we have a POST request
     if (!$request->isPost()) {
         return $this->_helper->redirector('list', 'subscribers', 'admin');
     }
     if ($form->isValid($request->getPost())) {
         // Get the id
         $id = $this->getRequest()->getParam('subscriber_id');
         // Set the new values
         if (is_numeric($id)) {
             $this->subscribers = NewslettersSubscribers::getbyId($id);
         }
         // Get the values posted
         $params = $form->getValues();
         $this->subscribers->email = $params['email'];
         $this->subscribers->subscriptiondate = !empty($params['subscriptiondate']) ? Shineisp_Commons_Utilities::formatDateIn($params['subscriptiondate']) : date('Y-m-d H:i:s');
         $this->subscribers->save();
         $id = is_numeric($id) ? $id : $this->subscribers->getIncremented();
         $redirector->gotoUrl("/admin/subscribers/edit/id/{$id}");
     } else {
         $this->view->form = $form;
         $this->view->title = $this->translator->translate("Subscriber Details");
         $this->view->description = $this->translator->translate("Here you can check all the submit information.");
         return $this->render('applicantform');
     }
 }
Example #4
0
 /**
  * Add the user in the newsletter
  * @param array $items
  */
 public function bulk_add_to_newsletter($items)
 {
     foreach ($items as $item) {
         NewslettersSubscribers::customer_optIn($item);
     }
     return true;
 }
 public static function optIn($email)
 {
     if (Shineisp_Commons_Utilities::isEmail($email)) {
         // Check if the email is already registered
         $retval = Doctrine::getTable('NewslettersSubscribers')->findOneBy('email', $email);
         if (empty($retval)) {
             // Save the new email address
             $subscriber = new NewslettersSubscribers();
             $subscriber->email = $email;
             $subscriber->subscriptiondate = date('Y-m-d H:i:s');
             if ($subscriber->trySave()) {
                 // Send the email to confirm the subscription
                 $retval = Shineisp_Commons_Utilities::getEmailTemplate('new_subscriber');
                 if ($retval) {
                     $subject = $retval['subject'];
                     $template = $retval['template'];
                     $isp = Isp::getActiveISP();
                     $template = str_replace("[signature]", $isp['company'], $template);
                     Shineisp_Commons_Utilities::SendEmail($isp['email'], $email, null, $subject, $template);
                 }
                 return true;
             }
         }
     }
     return false;
 }