Example #1
0
<?php

$config = new \ZendVN\Config\Config();
if (!empty($this->arrParams['itemSkin'])) {
    $arrConfigBackground = \Zend\Json\Json::decode($this->arrParams['itemSkin']->config_background);
    $curentBackground = UPLOAD_URL . '/skin/' . $arrConfigBackground->curentBackground->background;
    $fixed = $arrConfigBackground->curentBackground->style;
}
echo '<meta http-equiv="content-type" content="text/html; charset=utf-8" />';
echo $this->headTitle()->setSeparator(" - ")->append($config->title());
echo $this->headMeta()->appendName('description', $config->description())->prependName('keywords', $config->keyword())->appendHttpEquiv('REFRESH', '600');
echo $this->headLink(array('rel' => 'shortcut icon', 'type' => 'image/vnd.microsoft.icon', 'href' => TEMPLATE_URL . '/home/images/favicon.png'))->prependStylesheet(TEMPLATE_URL . '/home/css/theme.css');
echo $this->headScript()->prependFile(TEMPLATE_URL . '/home/js/jquery.js');
 public function sendAction()
 {
     $render = $this->getServiceLocator()->get('Zend\\View\\Renderer\\PhpRenderer');
     $headMeta = $render->headMeta();
     // Thêm Http quiv ở vị trí đầu tiên
     $headMeta->prependHttpEquiv('Content-Type', 'text/html; charset=utf-8');
     if (!empty($this->_arrParam['id'])) {
         $item = $this->getTable()->getItem($this->_arrParam, array('task' => 'get-item'));
         $config = new \ZendVN\Config\Config();
         //Điều kiện gửi được chiến dịch là còn số lần gửi và chiến dịch đó đang hoạt động
         if ($config->limitSendEmailMarketing() - $item->count != 0 && $item->status == 1) {
             $arrEmail = explode(",", $item->email);
             $title = $item->name;
             $content = $this->_viewHelper->cmsReplaceString($item->content);
             //Thực hiện gửi mail
             foreach ($arrEmail as $email) {
                 $mailService = $this->getServiceLocator()->get('AcMailer\\Service\\MailService');
                 $mailService->setSubject($title)->setBody($content);
                 // This can be a string, HTML or even a zend\Mime\Message or a Zend\Mime\Part
                 //kiem tra xem co file dinh kem khong
                 /*if(!empty($item->file)){
                       $pathAttachment = UPLOAD_PATH .'/upload/email-attachment/'.$item->file;//duong dan file dinh kem
                       $mailService->addAttachments(array(
                           $pathAttachment,
                       ));
                   }*/
                 $message = $mailService->getMessage();
                 $message->addTo($email);
                 $result = $mailService->send();
                 if ($result->isValid()) {
                     $messages = 'Message sent. Congratulations!';
                 } else {
                     if ($result->hasException()) {
                         $messages = sprintf('An error occurred. Exception: \\n %s', $result->getException()->getTraceAsString());
                     } else {
                         $messages = sprintf('An error occurred. Message: %s', $result->getMessage());
                     }
                 }
             }
             //Cập nhật data
             //--------Lượt gửi-------------------------------------------
             $count = $item->count;
             if (empty($count)) {
                 $add = 1;
                 $data = array('id' => $item->id, 'count' => $add);
                 $this->getTable()->saveItem($data, array('task' => 'edit'));
             } else {
                 $add = $count + 1;
                 $data = array('id' => $item->id, 'count' => $add);
                 $this->getTable()->saveItem($data, array('task' => 'edit'));
             }
             $this->flashMessenger()->addSuccessMessage('Gửi chiến dịch email thành công');
         } else {
             $this->flashMessenger()->addErrorMessage('Gửi chiến lược Email không hợp lệ');
         }
     }
     $this->redirect()->toUrl('/admin/emailmarketing/');
     return $this->getResponse();
 }
 public function validateRegisterAction()
 {
     $registerHomeForm = $this->serviceLocator->get('FormElementManager')->get('registerHomeForm');
     if ($this->getRequest()->isPost()) {
         $data = $this->getRequest()->getPost();
         $registerHomeForm->setData($data);
         if ($registerHomeForm->isValid()) {
             $arrInfoServiceAccount = array('service_account' => 'Tài khoản thường', 'normal' => 10, 'vip' => 10, 'hot' => 10, 'free' => 10, 'chinhchu' => 10, 'date_start' => '21-12-2014', 'date_end' => '21-12-2014');
             $config = new \ZendVN\Config\Config();
             if ($config->activeAccountEmail() == 1) {
                 $active_code = mt_rand() . mt_rand() . mt_rand() . mt_rand() . mt_rand();
                 //Kích hoạt qua email cẩn phải có mã kích hoạt
                 $status = 0;
                 //Sau khi kích hoạt tài khoản mới hoạt động được
             } else {
                 //Nếu không phải kích hoạt qua email thì không cần mã kích hoạt
                 $active_code = '';
                 $status = 1;
                 //tài khoản hoạt động được luôn
             }
             //Chống tấn công XSS
             $purifier = new \HTMLPurifier_HTMLPurifier();
             $data = array('username' => $purifier->purify($this->_viewHelper->cmsReplaceString($this->_arrPost['username'])), 'password' => md5($this->_arrPost['password']), 'email' => $purifier->purify($this->_viewHelper->cmsReplaceString($this->_arrPost['email'])), 'avatar' => '', 'fullname' => $purifier->purify($this->_viewHelper->cmsReplaceString($this->_arrPost['fullname'])), 'city_id' => 1, 'website' => '', 'phone' => $purifier->purify($this->_viewHelper->cmsReplaceString($this->_arrPost['phone'])), 'active_code' => $active_code, 'status' => $status, 'group_id' => 4, 'register_ip' => $_SERVER['REMOTE_ADDR'], 'register_date' => date('d/m/y h:i:s'), 'diachi' => '', 'info_service_account' => \Zend\Json\Json::encode($arrInfoServiceAccount));
             $lastInsertId = $this->getTable()->saveItem($data, array('task' => 'add'));
             if ($config->activeAccountEmail() == 1) {
                 $AccountActiveLink = \ZendVN\Url\CurrentDomain::get() . $this->url()->fromRoute('MVC_HomeRouter/active', array('module' => 'home', 'controller' => 'user', 'action' => 'active', 'id' => $lastInsertId, 'code' => $active_code));
                 $this->sendMail($this->_arrPost['fullname'], 'Bất động sản', $this->_arrPost['email'], $this->_arrPost['password'], $AccountActiveLink);
                 $result['messages']['success'] = 'Một email vừa được gửi tới ' . $this->_arrPost['email'] . ' Với một mã kích hoạt. Bạn vui lòng kiểm tra email để kích hoạt tài khoản';
             } else {
                 $result['messages']['success'] = 'Chúc mừng bạn đã đăng kí thành công';
             }
             $result['status'] = 'success';
         } else {
             $result['status'] = 'error';
             $result['messages']['fullname'] = current($registerHomeForm->getMessages('fullname'));
             $result['messages']['username'] = current($registerHomeForm->getMessages('username'));
             $result['messages']['password'] = current($registerHomeForm->getMessages('password'));
             $result['messages']['confirmpassword'] = current($registerHomeForm->getMessages('confirm-password'));
             $result['messages']['email'] = current($registerHomeForm->getMessages('email'));
             $result['messages']['phone'] = current($registerHomeForm->getMessages('phone'));
             $result['messages']['captcha'] = '';
             if (current($registerHomeForm->getMessages('captcha')) != '') {
                 $result['messages']['captcha'] = 'Mã an toàn không chính xác';
             }
         }
     }
     echo \Zend\Json\Json::encode($result);
     return $this->getResponse();
 }