Esempio n. 1
0
 /**
  * Subscribe
  *
  * Statuses:
  * 0 - error
  * 1 - success
  * 2 - already subscribed
  *
  * @Post("/subscribe")
  */
 public function subscribeAction()
 {
     $this->view->disable();
     if ($this->request->isAjax()) {
         $email = $this->request->get("email", "email");
         $status = 1;
         // If a person is already subscribed
         if (Subscribers::findFirst("email='{$email}'")) {
             $status = 2;
         } else {
             try {
                 $client = new PostmarkClient($this->config->POSTMARK->POSTMARK_API);
                 $message = ['To' => $email, 'From' => $this->config->POSTMARK->POSTMARK_FROM, 'Subject' => $this->strings->Subscribe_subject, 'HtmlBody' => "<html><body>{$this->strings->Subscribe_body}</body></html>"];
                 $send = $client->sendEmailBatch([$message]);
                 $subscribe = new Subscribers();
                 $subscribe->email = $email;
                 $subscribe->added = time();
                 if (!$subscribe->save()) {
                     $status = 0;
                 }
             } catch (PostmarkException $ex) {
                 if ($ex) {
                     $status = 0;
                 }
             }
         }
         echo $status;
     }
 }
Esempio n. 2
0
 public function save()
 {
     $model = new Subscribers();
     $model->email = $this->email;
     try {
         if ($model->save(FALSE)) {
             // notification
         }
     } catch (Exception $e) {
         return FALSE;
     }
 }
 public function subscribe()
 {
     $rules = array('email' => 'required|email|min:3');
     $validator = Validator::make(Input::all(), $rules);
     if (!$validator->fails()) {
         $subscriber = new Subscribers();
         $subscriber->name = Input::get('name');
         $subscriber->email = Input::get('email');
         $subscriber->save();
     }
     return Redirect::route('front.inventory')->with('success', 'You have been subscribed to our newsletter.');
 }
Esempio n. 4
0
 public function subscribeAction()
 {
     $subscriber = new Subscribers();
     $subscriber->email = $this->request->getPost('email', 'email');
     if ($subscriber->save() == false) {
         $this->flash->error("At this moment you can't subscribe, the following problem happen:");
         foreach ($subscriber->getMessages() as $message) {
             $this->flash->error($message);
         }
     } else {
         $this->flash->success('Thanks for subscribing!');
     }
     return $this->dispatcher->forward(array('controller' => 'index', 'action' => 'index'));
 }
 public function create()
 {
     $rules = array('email' => 'required|email');
     $validator = Validator::make(Input::all(), $rules);
     if ($validator->fails()) {
         return Redirect::route('admin.subscriber.index')->withErrors($validator)->With(Input::all());
     } else {
         $subscriber = new Subscribers();
         $subscriber->name = Input::get('name');
         $subscriber->email = Input::get('email');
         $subscriber->active = 1;
         if ($subscriber->save()) {
             return Redirect::route('admin.subscriber.index')->with('success', Lang::get('messages.subscriber_created'));
         } else {
             return Redirect::route('admin.subscriber.index')->with('success', Lang::get('messages.subscriber_created'));
         }
     }
     return Redirect::route('admin.newsletter.index')->with('success', Lang::get('messages.newsletter_created'));
 }
Esempio n. 6
0
 /**
  * Registration user
  */
 public function actionRegistration()
 {
     Yii::import('application.modules.user.models.*');
     $model = new RegistrationForm();
     $profile = new Profile();
     $profile->regMode = true;
     // ajax validator
     if (isset($_POST['ajax']) && $_POST['ajax'] === 'registration-form') {
         echo UActiveForm::validate(array($model, $profile));
         Yii::app()->end();
     }
     if (Yii::app()->user->id) {
         $this->redirect(Yii::app()->controller->module->profileUrl);
     } else {
         if (isset($_POST['RegistrationForm'])) {
             $model->attributes = $_POST['RegistrationForm'];
             $profile->attributes = isset($_POST['Profile']) ? $_POST['Profile'] : array();
             if ($model->validate() && $profile->validate()) {
                 $soucePassword = $model->password;
                 $model->activkey = UserModule::encrypting(microtime() . $model->password);
                 $model->password = UserModule::encrypting($model->password);
                 $model->verifyPassword = UserModule::encrypting($model->verifyPassword);
                 $model->superuser = 0;
                 $model->status = 1;
                 if ($model->save()) {
                     $profile->user_id = $model->id;
                     $profile->save();
                     //if (Yii::app()->controller->module->sendActivationMail) {
                     //$activation_url = $this->createAbsoluteUrl('/user/activation/activation',array("activkey" => $model->activkey, "email" => $model->email));
                     //UserModule::sendMail($model->email,UserModule::t("You registered from {site_name}",array('{site_name}'=>Yii::app()->name)),UserModule::t("Please activate you account go to {activation_url}",array('{activation_url}'=>$activation_url)));
                     //}
                     // Add them to Subscribe system
                     if ($_POST['subscribe']) {
                         $email = $model->email;
                         $subscription = Subscribers::model()->find('email = :email', array(':email' => $email));
                         if (isset($subscription->id)) {
                         } else {
                             $subscription = new Subscribers();
                             $subscription->email = $email;
                             $subscription->activation = $subscription->generateActivation($email);
                             $subscription->subscribed = 1;
                             $subscription->confirmed = 0;
                             $subscription->ip_address = $_SERVER['REMOTE_ADDR'];
                             if ($subscription->save()) {
                                 $url = 'http://' . $_SERVER['HTTP_HOST'] . '/e/' . $subscription->activation;
                                 $unsub_url = 'http://' . $_SERVER['HTTP_HOST'] . '/unsub/' . $subscription->activation;
                                 $sbj = "Confirmation - XXX Coupon Daily P**n Deals";
                                 $to = array($subscription->email);
                                 $reply_hash = 'XXX Coupon Confirmation <*****@*****.**>';
                                 $mail = $this->ses;
                                 //Yii::import('application.extensions.sesmail.*');
                                 //require_once('vendors/aws-sdk/sdk.class.php');
                                 //$mail = new YiiSesMail;
                                 $mail->view = 'confirm';
                                 $mail->setBody(array('url' => $url, 'ip_address' => $subscription->ip_address, 'unsub_url' => $unsub_url));
                                 $mail->send($reply_hash, $to, $sbj);
                             }
                         }
                     }
                     if (!empty($_POST['RegistrationForm']['redirect'])) {
                         Yii::app()->user->setFlash('success', "Okay, you're set.  We are sending you off to your offer now.  Thanks for joining us!");
                         $this->redirect(urldecode($_POST['RegistrationForm']['redirect']));
                     } else {
                         Yii::app()->user->setFlash('success', "Okay, you're set.  Thank you for registering with us.  Enjoy the offers!");
                         $this->redirect('/');
                     }
                     /*if ((Yii::app()->controller->module->loginNotActiv||(Yii::app()->controller->module->activeAfterRegister&&Yii::app()->controller->module->sendActivationMail==false))&&Yii::app()->controller->module->autoLogin) {
                     				$identity=new UserIdentity($model->username,$soucePassword);
                     				$identity->authenticate();
                     				Yii::app()->user->login($identity,0);
                     				$this->redirect(Yii::app()->controller->module->returnUrl);
                     		} else {
                     			if (!Yii::app()->controller->module->activeAfterRegister&&!Yii::app()->controller->module->sendActivationMail) {
                     				Yii::app()->user->setFlash('registration',UserModule::t("Thank you for your registration. Contact Admin to activate your account."));
                     			} elseif(Yii::app()->controller->module->activeAfterRegister&&Yii::app()->controller->module->sendActivationMail==false) {
                     				Yii::app()->user->setFlash('registration',UserModule::t("Thank you for your registration. Please {{login}}.",array('{{login}}'=>CHtml::link(UserModule::t('Login'),Yii::app()->controller->module->loginUrl))));
                     			} elseif(Yii::app()->controller->module->loginNotActiv) {
                     				Yii::app()->user->setFlash('registration',UserModule::t("Thank you for your registration. Please check your email or login."));
                     			} else {
                     				Yii::app()->user->setFlash('registration',UserModule::t("Thank you for your registration. Please check your email."));
                     			}
                     			$this->refresh();
                     		}*/
                 }
             } else {
                 $profile->validate();
             }
         }
         $this->render('/registration/registration', array('model' => $model, 'profile' => $profile));
     }
 }
Esempio n. 7
0
 protected function addSubscriber()
 {
     $model = new Subscribers();
     $model->email = $this->email;
     $model->save();
 }
<?php

$subscriber = new Subscribers();
$subscriber->email = '*****@*****.**';
$subscriber->created_at = new Phalcon\Db\RawValue('now()');
$subscriber->save();