From a26b26ae6999fc844802d615e960decbf4c37b72 Mon Sep 17 00:00:00 2001 From: Torsten Oppermann <torsten@sgalinski.de> Date: Thu, 4 Jan 2018 15:28:55 +0100 Subject: [PATCH] [TASK] Add is_blacklisted flag to queue entries --- Classes/Domain/Model/Mail.php | 19 +++++++++++++++++++ .../TCA/tx_sgmail_domain_model_mail.php | 13 ++++++++++--- ext_tables.sql | 1 + 3 files changed, 30 insertions(+), 3 deletions(-) diff --git a/Classes/Domain/Model/Mail.php b/Classes/Domain/Model/Mail.php index b3e346c9..e02f2930 100644 --- a/Classes/Domain/Model/Mail.php +++ b/Classes/Domain/Model/Mail.php @@ -109,6 +109,11 @@ class Mail extends AbstractEntity { */ protected $lastSendingTime = 0; + /** + * @var boolean + */ + protected $isBlacklisted = FALSE; + /** * @return string */ @@ -309,4 +314,18 @@ class Mail extends AbstractEntity { public function setLanguage($language) { $this->language = $language; } + + /** + * @return bool + */ + public function isBlacklisted() { + return $this->isBlacklisted; + } + + /** + * @param bool $isBlacklisted + */ + public function setIsBlacklisted(bool $isBlacklisted) { + $this->isBlacklisted = $isBlacklisted; + } } diff --git a/Configuration/TCA/tx_sgmail_domain_model_mail.php b/Configuration/TCA/tx_sgmail_domain_model_mail.php index 0c733810..f3f6fdae 100644 --- a/Configuration/TCA/tx_sgmail_domain_model_mail.php +++ b/Configuration/TCA/tx_sgmail_domain_model_mail.php @@ -32,7 +32,7 @@ return [ 'tstamp' => 'tstamp', 'crdate' => 'crdate', 'cruser_id' => 'cruser_id', - 'searchFields' => 'mail_subject, mail_body, to_address, from_address, from_name, bcc_addresses, cc_addresses, extension_key, template_name, sending_time, last_sending_time, language', + 'searchFields' => 'is_blacklisted, mail_subject, mail_body, to_address, from_address, from_name, bcc_addresses, cc_addresses, extension_key, template_name, sending_time, last_sending_time, language', 'dividers2tabs' => TRUE, 'delete' => 'deleted', 'enablecolumns' => [ @@ -42,11 +42,11 @@ return [ 'iconfile' => 'EXT:sg_mail/Resources/Public/Icons/ModuleIconTCA.svg' ], 'interface' => [ - 'showRecordFieldList' => 'hidden, mail_subject, mail_body, to_address, from_address, priority, from_name, bcc_addresses, cc_addresses, extension_key, template_name, sending_time, last_sending_time, language', + 'showRecordFieldList' => 'hidden, is_blacklisted, mail_subject, mail_body, to_address, from_address, priority, from_name, bcc_addresses, cc_addresses, extension_key, template_name, sending_time, last_sending_time, language', ], 'types' => [ '1' => [ - 'showitem' => 'hidden;;1, priority, to_address, from_address, mail_subject, mail_body, from_name, bcc_addresses, cc_addresses, extension_key, template_name, sending_time, last_sending_time, language' + 'showitem' => 'hidden;;1, is_blacklisted, priority, to_address, from_address, mail_subject, mail_body, from_name, bcc_addresses, cc_addresses, extension_key, template_name, sending_time, last_sending_time, language' ], ], 'columns' => [ @@ -57,6 +57,13 @@ return [ 'type' => 'check', ], ], + 'is_blacklisted' => [ + 'exclude' => TRUE, + 'label' => 'LLL:EXT:sg_mail/Resources/Private/Language/locallang_db.xlf:tx_sgmail_domain_model_mail.is_blacklisted', + 'config' => [ + 'type' => 'check', + ], + ], 'mail_subject' => [ 'exclude' => TRUE, 'label' => 'LLL:EXT:sg_mail/Resources/Private/Language/locallang_db.xlf:tx_sgmail_domain_model_mail.mail_subject', diff --git a/ext_tables.sql b/ext_tables.sql index e56a5c47..7bb7aa8f 100644 --- a/ext_tables.sql +++ b/ext_tables.sql @@ -16,6 +16,7 @@ CREATE TABLE tx_sgmail_domain_model_mail ( sending_time int(11) unsigned DEFAULT '0' NOT NULL, last_sending_time int(11) unsigned DEFAULT '0' NOT NULL, language varchar(255) DEFAULT '' NOT NULL, + is_blacklisted tinyint(4) unsigned DEFAULT '0' NOT NULL, tstamp int(11) unsigned DEFAULT '0' NOT NULL, crdate int(11) unsigned DEFAULT '0' NOT NULL, -- GitLab