fixed mail cannon performance

This commit is contained in:
Ulf Gebhardt 2018-10-12 12:03:47 +02:00
parent 8b790c9b3c
commit 76e8102619
2 changed files with 7 additions and 4 deletions

View File

@ -132,10 +132,10 @@ class saimod_mail extends \SYSTEM\SAI\sai_module{
} }
public static function send_list($email_id,$list){ public static function send_list($email_id,$list){
$list_handle = \SQL\CONTACT_EMAIL_LIST_SELECT_LIST::QQ(array($list)); $list_handle = \SQL\CONTACT_EMAIL_LIST_SELECT_LIST::QA(array($email_id,$list));
while($row = $list_handle->next()){ foreach($list_handle as $row){
\set_time_limit(30); \set_time_limit(30);
self::send_mail($row['email'], $email_id, $list) ? 1 : 0; self::send_mail($row['email'], $email_id, $list);
\sleep(1); \sleep(1);
} }
return \SYSTEM\LOG\JsonResult::ok(); return \SYSTEM\LOG\JsonResult::ok();

View File

@ -4,6 +4,9 @@ namespace SQL;
class CONTACT_EMAIL_LIST_SELECT_LIST extends \SYSTEM\DB\QP { class CONTACT_EMAIL_LIST_SELECT_LIST extends \SYSTEM\DB\QP {
public static function get_class(){return \get_class();} public static function get_class(){return \get_class();}
public static function mysql(){return public static function mysql(){return
'SELECT email FROM contact_email_list WHERE list = ?;'; 'SELECT contact_email_list.email, email_sent.email as done FROM contact_email_list'.
' LEFT JOIN email_sent ON contact_email_list.email = email_sent.email AND email_sent.id = ?'.
' WHERE list = ?'.
' HAVING done IS NULL;';
} }
} }