BasketTask.php 2.92 KB
<?php

/**
 * Created by PhpStorm.
 * User: Alex Savenko
 * Date: 09.12.2016
 * Time: 13:34
 */

/**
 * Class BasketTask
 * @property \models $models
 *
 */
class BasketTask extends \Phalcon\CLI\Task
{
    public static $from = 'Semena subscription <semenainua@gmail.com>';

    public function mainAction(){
        echo '***main action***'.PHP_EOL;
        echo '@var static $from = '.self::$from.PHP_EOL;
    }

    public function sendAction(){

        echo '*** start send action ***'.PHP_EOL;

        $abandoned_users = $this->models->getBasket()->getAbandonedUsers();

        foreach ($abandoned_users as $item) {

                $user_id = $item['user_id'];
                $user = $this->models->getCustomers()->getOneData($user_id);
                if (!empty($user[0]['email'])) {

                    $email =  $user[0]['email'];

                    $mail = new PHPMailer();
                    //Tell PHPMailer to use SMTP
                    $mail->isSMTP();
                    //Enable SMTP debugging
                    // 0 = off (for production use)
                    // 1 = client messages
                    // 2 = client and server messages
                    $mail->SMTPDebug = 0;
                    //Ask for HTML-friendly debug output
                    $mail->Debugoutput = 'html';
                    //Set the hostname of the mail server
                    $mail->Host = 'smtp.gmail.com';
                    $mail->CharSet = 'UTF-8';
                    // use
                    // $mail->Host = gethostbyname('smtp.gmail.com');
                    // if your network does not support SMTP over IPv6
                    //Set the SMTP port number - 587 for authenticated TLS, a.k.a. RFC4409 SMTP submission
                    $mail->Port = 587;
                    //Set the encryption system to use - ssl (deprecated) or tls
                    $mail->SMTPSecure = 'tls';
                    //Whether to use SMTP authentication
                    $mail->SMTPAuth = true;
                    //Username to use for SMTP authentication - use full email address for gmail
                    $mail->Username = "arctic.semenainua@gmail.com";
                    //Password to use for SMTP authentication
                    $mail->Password = "arctic0411";

                    //Set who the message is to be sent from
                    $mail->setFrom('arctic.semenainua@gmail.com', 'semena.in.ua');
                    //Set who the message is to be sent to
                    $mail->addAddress($email);
                    //Set the subject line
                    $mail->Subject = 'test';
                    //Read an HTML message body from an external file, convert referenced images to embedded,
                    //convert HTML into a basic plain-text alternative body

                    $mail->msgHTML('test');
                    $mail->send();

                    return 'Sended test msg';

                }

        }

    }

}