| Server IP : 103.48.194.25 / Your IP : 216.73.216.74 Web Server : Apache/2.4.6 (CentOS) OpenSSL/1.0.2k-fips PHP/7.4.33 System : Linux VMHostDefault 3.10.0-1160.42.2.el7.x86_64 #1 SMP Tue Sep 7 14:49:57 UTC 2021 x86_64 User : sieuthimay ( 1016) PHP Version : 8.2.20 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /var/www/zomuaban.com/public_html/site/libraries/ |
Upload File : |
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class EmailSend {
public function __construct() {
$CI = & get_instance();
$CI->load->helper('email'); # to valid mail
$CI->load->helper('url'); # to use base_url
$CI->load->helper('text');
$CI->load->helper('site_url_helper');
$CI->load->helper('site_helper');
$CI->load->library('phpmailer/amazonses');
loadlang('email');
}
# Send Email cho Owner khi có User COMMENT hoặc LIKE
public function sendMail2FeedBack($pData) {
$CI = & get_instance();
# BƯỚC 1: valid email có hợp lệ hay không
if (!validEmail($pData->email)) return false;
# BƯỚC 2: Xác định tên của user
$pData->uName = isset($pData->uName) && $pData->uName != '' && $pData->uName != lang('anonymous')? $pData->uName:email2name($pData->email);
# DEBUG : Nếu đang test > gửi mail cho
if (DEBUG)$pData->email = 'khanhnguyen3268@gmail.com';
# BƯỚC 3 : Tạo nội dung
$subject = lang('subject_mail_on_feedback', substr($pData->title, 0 , 50));
$body = getEmailTemp('cmt-item', $pData );
#echo $body; return;
return $CI->amazonses->sendMail( $pData->email, $pData->uName, $subject, $body );
}
# Gửi mail xác nhận quên mật khẩu
public function sendMaiForgotPass($pData) {
$CI = & get_instance();
# BƯỚC 1: valid email có hợp lệ hay không
if (!validEmail($pData->email)) return false;
# DEBUG : Nếu đang test > gửi mail cho
if (DEBUG)$pData->email = 'khanhnguyen3268@gmail.com';
# BƯỚC 2 : Tạo nội dung
$subject = lang('subject_mail_forgot_pass');
$body = getEmailTemp('forgot-pass', $pData );
#echo $body; return;
return $CI->amazonses->sendMail( $pData->email, email2Name($pData->email), $subject, $body );
}
# Gửi mail khi autoget ad
public function sendMail2Owner($pData) {
$CI = & get_instance();
# BƯỚC 1: valid email có hợp lệ hay không
if (!validEmail($pData->email)) return false;
# DEBUG : Nếu đang test > gửi mail cho
if (DEBUG)$pData->email = 'khanhnguyen3268@gmail.com';
# BƯỚC 2: Xác định tên của user
$pData->uName = isset($pData->uName) && $pData->uName != '' && $pData->uName != lang('anonymous')? $pData->uName:email2name($pData->email);
# BƯỚC 3: Xem user đã tồn tại chưa > Nếu chưa thì tiếp tục. Nếu user đã tồn tại thì ko gửi mail này nữa
$CI->load->model('user_model');
$user = $CI->user_model->get_user_by_email($pData->email);
if(!$user){
# BƯỚC 4: Check email đã gửi trong ngày hay chưa. Nếu tồn tại rồi > không cần gửi nữa (chỉ gửi mail 1ngày/1lần/1email)
$CI->db->where('date', date("Y-m-d")); # trong ngày
$CI->db->where('email', $pData->email); # cùng email
$CI->db->where('campaignId', 1); # cùng campaign 1
$q = $CI->db->get('email_campaign');
if ($q->num_rows() > 0 ) {
#echo 'Đã gửi mail cho user này';
return false;
}
# BƯỚC 4.1 : Xác định category để set mặc định danh mục khi user vào web từ email này
$CI->load->helper('utils_helper');
# Lấy category
$cate = get_cate_by_cid($pData->cid);
if (isset($cate) && $cate-> parentId != 0)$pData->cateId = $cate->parentId;
# BƯỚC 4.2: Tạo validate code
$validate_code = '{"name":"'.$pData->uName.'", "email":"'.$pData->email.'", "cateId":'.$pData->cateId.', "campaignId":1, "date":"'.date("Y-m-d").'"}';
$validate_code = encrypt_decrypt('encrypt', $validate_code);
# BƯỚC 4.3: Thêm một số thông tin để hiển thị tin đăng trong email
$pData->id = 0; # Thêm id sử dụng cho hàm full_prop_item
$pData->price = 0; # Thêm price sử dụng cho hàm full_prop_item
$item = full_item_prop($pData);
$item->link = base_url().'u/xac-nhan-tin-dang?validate=' . $validate_code;
# BƯỚC 4.4: Xác định tiêu đề và nội dung Email
$subject = 'Chào ' . $pData->uName . ' - Xác nhận tin đăng : ' .$pData->title;
$body = getEmailTemp('xacnhan-tindang', $item);
# mở ra khi test ở localhost
#echo $body; return;
# BƯỚC 5: GỬI MAIL > CẨN THẬN KHI TEST
$result = $CI->amazonses->sendMail( $pData->email, $pData->uName, $subject, $body );
# BƯỚC 6: Nếu gửi thành công > insert tin record vào bảng email_campaign
if($result->success){
# Nếu gửi mail thành công > insert vào bảng email_campaign
$CI->db->insert('email_campaign', array( 'email' => $pData->email,
'validate_code' => $validate_code,
'date' => date("Y-m-d"),
'campaignId' => 1
));
return true;
}
}else{
# Trường hợp nếu user đã tồn tại rồi thì sao ???
return false;
}
return false;
}
# Gửi mail khi đăng ký tài khoản
public static function mailOnRegis($pData){
$CI = & get_instance();
# BƯỚC 1: valid email có hợp lệ hay không
if (!validEmail($pData->email)) return false;
# DEBUG : Nếu đang test > gửi mail cho
if(DEBUG)$pData->email = 'khanhnguyen3268@gmail.com';
# BƯỚC 2: Xác định tên của user
$pData->uName = isset($pData->uName) && $pData->uName != '' && $pData->uName != lang('anonymous')? $pData->uName:email2name($pData->email);
# BƯỚC 3: Xác định tiêu đề và nội dung Email
$subject = lang('subject_mail_welcome_website', $pData->uName, siteConf('siteName'));
$body = getEmailTemp('registry', $pData);
# mở ra khi test ở localhost
#echo $body; return;
# BƯỚC 4: GỬI MAIL > CẨN THẬN KHI TEST
$result = $CI->amazonses->sendMail( $pData->email, $pData->uName, $subject, $body );
return $result;
}
# Gửi mail khi đăng ký thành công
public static function mailOnCreateAd($pData){
$CI = & get_instance();
# BƯỚC 1: valid email có hợp lệ hay không
if (!validEmail($pData->email)) return false;
# DEBUG : Nếu đang test > gửi mail cho
if (DEBUG)$pData->email = 'khanhnguyen3268@gmail.com';
# BƯỚC 2: Xác định tên của user
$pData->uName = isset($pData->uName) && $pData->uName != '' && $pData->uName != lang('anonymous')? $pData->uName:email2name($pData->email);
# BƯỚC 3: Xác định tiêu đề và nội dung Email
$subject = lang('subject_mail_on_create_ad', $pData->uName, siteConf('siteName'));
$body = getEmailTemp('on-create-ad', $pData);
# mở ra khi test ở localhost
#echo $body; return;
# BƯỚC 4: GỬI MAIL > CẨN THẬN KHI TEST
$result = $CI->amazonses->sendMail( $pData->email, $pData->uName, $subject, $body );
return $result;
}
# Gửi mail khi một Item bị report
public static function mailOnReportItem($pData){
# CHào {}! Tin đăng {} của bạn đã bị <b>cảnh báo</b> với nội dung {}
# Hãy chỉnh sửa lại tin đăng của bạn để phù hợp với qui định trên {}
# Xem thêm về qui định đăng tin trên {}
$CI = & get_instance();
# BƯỚC 1: valid email có hợp lệ hay không
if (!validEmail($pData->email)) return false;
# DEBUG : Nếu đang test > gửi mail cho
if (DEBUG)$pData->email = 'khanhnguyen3268@gmail.com';
# BƯỚC 2: Xác định tên của user
$pData->uName = isset($pData->uName) && $pData->uName != '' && $pData->uName != lang('anonymous')? $pData->uName:email2name($pData->email);
# BƯỚC 3: Xác định tiêu đề và nội dung Email
$subject = lang($pData->active == -3 ? 'subject_mail_on_ad_remove' :'subject_mail_on_ad_reported', $pData->uName, siteConf('siteName'));
$body = getEmailTemp('on-report-ad', $pData);
# mở ra khi test ở localhost
#echo $body; return;
# BƯỚC 4: GỬI MAIL > CẨN THẬN KHI TEST
$result = $CI->amazonses->sendMail( $pData->email, $pData->uName, $subject, $body );
return $result;
}
#Gửi mail mời tham gia AloGap
public static function invite_to_alogap_from_another($pData){
$CI = & get_instance();
# BƯỚC 1: valid email có hợp lệ hay không
if (!validEmail($pData->email)) return false;
# DEBUG : Nếu đang test > gửi mail cho
#if (DEBUG)$pData->email = 'khanhnguyen3268@gmail.com';
# BƯỚC 2: Xác định tên của user
$pData->uName = isset($pData->uName) && $pData->uName != '' && $pData->uName != lang('anonymous')? $pData->uName:email2name($pData->email);
# BƯỚC 3: Xác định tiêu đề và nội dung Email
$subject = 'Mời đăng tin miễn phí trên AloGap.com';
$body = getEmailTemp('on-invite-join', $pData);
# mở ra khi test ở localhost
# echo $body; return;
# BƯỚC 4: GỬI MAIL > CẨN THẬN KHI TEST
$result = $CI->amazonses->sendMail( $pData->email, $pData->uName, $subject, $body );
return $result;
}
#Gửi mail mời đặt quảng cáo trên AloGap.com
public static function invite_book_banner($pData){
$CI = & get_instance();
# BƯỚC 1: valid email có hợp lệ hay không
if (!validEmail($pData->email)) return false;
# DEBUG : Nếu đang test > gửi mail cho
#if (DEBUG)$pData->email = 'khanhnguyen3268@gmail.com';
# BƯỚC 2: Xác định tên của user
$pData->uName = isset($pData->name) && $pData->name != '' && $pData->name != lang('anonymous')? $pData->name:email2name($pData->email);
# BƯỚC 3: Xác định tiêu đề và nội dung Email
$subject = 'Khuyến mãi 90% đặt quảng cáo và logo trên AloGap.com';
$body = getEmailTemp('on-invite-book-banner', $pData);
$pData->temp = 'on-invite-book-banner';
$body = getView('inc/email-temp/base-email-promotion-12mth', array('param'=>$pData), true);
# mở ra khi test ở localhost
#echo $body; return;
# BƯỚC 4: GỬI MAIL > CẨN THẬN KHI TEST
$result = $CI->amazonses->sendMail( $pData->email, $pData->uName, $subject, $body );
return $result;
}
}
/***** End of PHPMailer AmazonSES .php ***********/