| @@ -1,75 +1,0 @@ | ||
| 1 | -<?php | |
| 2 | - | |
| 3 | -namespace AcyMailing\Controllers; | |
| 4 | - | |
| 5 | -use AcyMailing\Classes\QueueClass; | |
| 6 | -use AcyMailing\Helpers\QueueHelper; | |
| 7 | -use AcyMailing\Core\AcymController; | |
| 8 | -use AcyMailing\Controllers\Queue\Campaigns; | |
| 9 | -use AcyMailing\Controllers\Queue\Scheduled; | |
| 10 | -use AcyMailing\Controllers\Queue\Detailed; | |
| 11 | - | |
| 12 | -class QueueController extends AcymController | |
| 13 | -{ | |
| 14 | - use Campaigns; | |
| 15 | - use Scheduled; | |
| 16 | - use Detailed; | |
| 17 | - | |
| 18 | - public function __construct() | |
| 19 | - { | |
| 20 | - parent::__construct(); | |
| 21 | - | |
| 22 | - $this->breadcrumb[acym_translation('ACYM_QUEUE')] = acym_completeLink('queue'); | |
| 23 | - $this->setDefaultTask('campaigns'); | |
| 24 | - } | |
| 25 | - | |
| 26 | - public function scheduleReady(): void | |
| 27 | - { | |
| 28 | - $queueClass = new QueueClass(); | |
| 29 | - $queueClass->scheduleReady(); | |
| 30 | - } | |
| 31 | - | |
| 32 | - public function continuesend(): void | |
| 33 | - { | |
| 34 | - if ($this->config->get('queue_type') == 'onlyauto') { | |
| 35 | - acym_setNoTemplate(); | |
| 36 | - acym_display(acym_translation('ACYM_ONLYAUTOPROCESS'), 'warning'); | |
| 37 | - | |
| 38 | - exit; | |
| 39 | - } | |
| 40 | - | |
| 41 | - $newcrontime = time() + 120; | |
| 42 | - if ($this->config->get('cron_next') < $newcrontime) { | |
| 43 | - $newValue = new \stdClass(); | |
| 44 | - $newValue->cron_next = $newcrontime; | |
| 45 | - $this->config->save($newValue); | |
| 46 | - } | |
| 47 | - | |
| 48 | - $mailid = acym_getCID('id'); | |
| 49 | - | |
| 50 | - $totalSend = acym_getVar('int', 'totalsend', 0); | |
| 51 | - if (empty($totalSend)) { | |
| 52 | - $query = 'SELECT COUNT(queue.user_id) FROM #__acym_queue AS queue LEFT JOIN #__acym_campaign AS campaign ON queue.mail_id = campaign.mail_id WHERE (campaign.id IS NULL OR campaign.active = 1) AND queue.sending_date < '.acym_escapeDB( | |
| 53 | - acym_date('now', 'Y-m-d H:i:s', false) | |
| 54 | - ); | |
| 55 | - if (!empty($mailid)) { | |
| 56 | - $query .= ' AND queue.mail_id = '.intval($mailid); | |
| 57 | - } | |
| 58 | - $totalSend = acym_loadResult($query); | |
| 59 | - } | |
| 60 | - | |
| 61 | - $alreadySent = acym_getVar('int', 'alreadysent', 0); | |
| 62 | - | |
| 63 | - $queueHelper = new QueueHelper(); | |
| 64 | - $queueHelper->id = $mailid; | |
| 65 | - $queueHelper->report = true; | |
| 66 | - $queueHelper->total = (int)$totalSend; | |
| 67 | - $queueHelper->start = $alreadySent; | |
| 68 | - $queueHelper->pause = (int)$this->config->get('queue_pause', 0); | |
| 69 | - $queueHelper->fromManual = true; | |
| 70 | - $queueHelper->process(); | |
| 71 | - | |
| 72 | - acym_setNoTemplate(); | |
| 73 | - exit; | |
| 74 | - } | |
| 75 | -} | |