add newsletter changes

This commit is contained in:
2016-05-26 08:50:10 +02:00
parent 07d5041126
commit 1fed67a650
16 changed files with 335 additions and 34 deletions

View File

@@ -12,6 +12,7 @@ use common\components\WarnMailModel;
use common\components\Helper;
use common\models\Newsletter;
use common\models\Log;
use yii\helpers\Html;
class TicketController extends Controller {
public function actionIndex() {
@@ -48,6 +49,8 @@ class TicketController extends Controller {
$query = new Query ();
$query->distinct ( true );
$query->select ( [
'customer.id_customer as customer_id_customer',
'customer.newsletter_token as customer_newsletter_token',
'customer.email as customer_email',
'customer.name as customer_name',
'ticket_type.name as ticket_type_name',
@@ -61,16 +64,20 @@ class TicketController extends Controller {
'ticket.status' => Ticket::STATUS_ACTIVE ,
'customer.warn_mail_ticket_expire_enabled' => Customer::$ENABLED
] );
$query->andWhere ( [
'ticket.end' => new Expression ( 'DATE_ADD(CURDATE(),INTERVAL ' . $dayCount . ' DAY)' )
] );
$query->andWhere([
['<','ticket.usage_count' ,'ticket.max_usage_count']
'<','ticket.usage_count' , new Expression('ticket.max_usage_count')
]);
$recepients = $query->all ();
\Yii::info ( "Bérlet lejár figyelmeztetés küldése: " . $dayCount . " nap múlva "
. count ( $recepients ) . " vendég bérlete jár le."
);
@@ -79,26 +86,31 @@ class TicketController extends Controller {
foreach ( $recepients as $recepient ) {
$recepientEmail = $recepient['customer_email'];
if ( !empty($recepientEmail)){
$model = new WarnMailModel(
[
'day' => $dayCount,
'company' => Helper::getCompanyName(),
'ticketTypeName' => $recepient['ticket_type_name'],
'ticketTypePriceBrutto' => $recepient['ticket_type_price_brutto'],
'customerName' => $recepient['customer_name']
]
);
$message = \Yii::$app->mailer->compose ( 'warn_expire', [
'model' => $model,
] );
$message
->setFrom ( [ "noreply@fitnessadmin.hu" => Helper::getCompanyName() ] )
->setTo ( $recepientEmail )
->setSubject ( "Értesítés - " . Helper::getCompanyName()." - Bérleted ".$dayCount." nap múlva lejár" )
->send ();
$model = new WarnMailModel(
[
'day' => $dayCount,
'company' => Helper::getCompanyName(),
'ticketTypeName' => $recepient['ticket_type_name'],
'ticketTypePriceBrutto' => $recepient['ticket_type_price_brutto'],
'customerName' => $recepient['customer_name'],
'idCustomer' => $recepient['customer_id_customer'],
'newsletterToken' => $recepient['customer_newsletter_token'],
]
);
$message = \Yii::$app->mailer->compose ( 'warn_expire', [
'model' => $model,
] );
$message
->setFrom ( [ "noreply@fitnessadmin.hu" => Helper::getCompanyName() ] )
->setTo ( $recepientEmail )
->setSubject ( "Értesítés - " . Helper::getCompanyName()." - Bérleted ".$dayCount." nap múlva lejár" )
->send ();
}
}
}
}
@@ -129,7 +141,10 @@ class TicketController extends Controller {
$q2 = new Query();
$q2->distinct();
$q2->select(['customer.email as customer_email','customer.name as customer_name']);
$q2->select(['customer.email as customer_email','customer.name as customer_name'
,'customer.id_customer as customer_id_customer'
,'customer.newsletter_token as customer_newsletter_token'
]);
$q2->from("customer");
$q2->innerJoin("ticket","ticket.id_card = customer.id_customer_card");
// $q2->andWhere(['status' => Customer::STATUS_ACTIVE ]);
@@ -160,6 +175,11 @@ class TicketController extends Controller {
$mailBody = $newsletter->body;
$mailBody = strtr($mailBody, $replacePairs );
$mailBody .="<hr>";
$mailBody .="Leiratkozás hírlevélről:";
$mailBody .= Html::a("Leiratkozom",Helper::getWebUrl() ."/frontend/web/index.php?r=site/newsletter-unsubscribe&id=".$customer['customer_id_customer']."&token=".$customer['customer_newsletter_token']);
$mailSubject = $newsletter->subject;
$mailSubject = strtr($mailSubject, $replacePairs );