8namespace Bitrix\Sender\Internals\Model;
11use Bitrix\Main\Entity;
12use Bitrix\Main\Localization\Loc;
14use Bitrix\Sender\FileTable;
15use Bitrix\Sender\MailingChainTable;
16use Bitrix\Sender\Message\iBase;
18Loc::loadMessages(__FILE__);
53 return 'b_sender_mailing_chain';
63 'data_type' =>
'integer',
64 'autocomplete' =>
true,
67 'CAMPAIGN_ID' =>
array(
68 'data_type' =>
'integer',
69 'column_name' =>
'MAILING_ID',
73 'MESSAGE_CODE' =>
array(
74 'data_type' =>
'string',
76 'default_value' =>
function ()
78 return iBase::CODE_MAIL;
81 'MESSAGE_ID' =>
array(
82 'data_type' =>
'string',
85 'TEMPLATE_TYPE' =>
array(
86 'data_type' =>
'string',
88 'TEMPLATE_ID' =>
array(
89 'data_type' =>
'string',
92 'POSTING_ID' =>
array(
93 'data_type' =>
'integer',
96 'data_type' =>
'integer',
98 'CREATED_BY' =>
array(
99 'data_type' =>
'integer',
101 'UPDATED_BY' =>
array(
102 'data_type' =>
'integer',
104 'DATE_INSERT' =>
array(
105 'data_type' =>
'datetime',
108 'DATE_UPDATE' =>
array(
109 'data_type' =>
'datetime',
113 'data_type' =>
'string',
115 'default_value' => static::STATUS_NEW,
117 'REITERATE' =>
array(
118 'data_type' =>
'boolean',
119 'default_value' =>
'N',
120 'values' =>
array(
'N',
'Y')
122 'IS_TRIGGER' =>
array(
123 'data_type' =>
'boolean',
124 'default_value' =>
'N',
125 'values' =>
array(
'N',
'Y')
128 'data_type' =>
'boolean',
129 'default_value' =>
'N',
130 'values' =>
array(
'N',
'Y')
132 'LAST_EXECUTED' =>
array(
133 'data_type' =>
'datetime',
136 'data_type' =>
'string',
137 'title' => Loc::getMessage(
'SENDER_ENTITY_MAILING_CHAIN_FIELD_TITLE_TITLE1'),
138 'save_data_modification' =>
array(
'\Bitrix\Main\Text\Emoji',
'getSaveModificator'),
139 'fetch_data_modification' =>
array(
'\Bitrix\Main\Text\Emoji',
'getFetchModificator'),
142 'AUTO_SEND_TIME' =>
array(
143 'data_type' =>
'datetime',
145 'DAYS_OF_WEEK' =>
array(
146 'data_type' =>
'string',
148 'DAYS_OF_MONTH' =>
array(
149 'data_type' =>
'string',
151 'MONTHS_OF_YEAR' =>
array(
152 'data_type' =>
'string',
154 'TIMES_OF_DAY' =>
array(
155 'data_type' =>
'string',
157 'TIME_SHIFT' =>
array(
158 'data_type' =>
'integer',
161 'ERROR_MESSAGE' =>
array(
162 'data_type' =>
'string',
165 'SEARCH_CONTENT' =>
array(
166 'data_type' =>
'text',
167 'save_data_modification' =>
array(
'\Bitrix\Main\Text\Emoji',
'getSaveModificator'),
168 'fetch_data_modification' =>
array(
'\Bitrix\Main\Text\Emoji',
'getFetchModificator'),
172 'data_type' => MessageTable::class,
173 'reference' =>
array(
'=this.MESSAGE_ID' =>
'ref.ID'),
176 'data_type' =>
'Bitrix\Sender\MailingTable',
177 'reference' =>
array(
'=this.CAMPAIGN_ID' =>
'ref.ID'),
179 'CURRENT_POSTING' =>
array(
180 'data_type' =>
'Bitrix\Sender\PostingTable',
181 'reference' =>
array(
'=this.POSTING_ID' =>
'ref.ID'),
184 'data_type' =>
'Bitrix\Sender\PostingTable',
185 'reference' =>
array(
'=this.ID' =>
'ref.MAILING_CHAIN_ID'),
187 'CREATED_BY_USER' =>
array(
188 'data_type' =>
'Bitrix\Main\UserTable',
189 'reference' =>
array(
'=this.CREATED_BY' =>
'ref.ID'),
191 'WAITING_RECIPIENT' =>
array(
192 'data_type' =>
'boolean',
193 'default_value' =>
'N',
194 'values' =>
array(
'N',
'Y')
245 $fileQuery = MessageFieldTable::getById([
246 'MESSAGE_ID' =>
$fields[
'MESSAGE_ID'],
247 'CODE' =>
'ATTACHMENT',
250 if($row = $fileQuery->fetch())
252 $files = explode(
",", $row[
'VALUE']);
261 '=FILE_ID' => (
int)$file,
262 '!=ENTITY_ID' =>
$fields[
'MESSAGE_ID'],
271 \CFile::Delete((
int)$file);
278 $messageQuery = MessageFieldTable::getById([
279 'MESSAGE_ID' =>
$fields[
'MESSAGE_ID'],
283 if($row = $messageQuery->fetch())
288 MessageTable::delete(
$fields[
'MESSAGE_ID']);
static getList(array $parameters=array())
static syncFiles(int $entityId, int $entityType, string $template, bool $deleteFiles=true, bool $onDeleteEntity=false)
static onDelete(Entity\Event $event)
static onBeforeUpdate(Entity\Event $event)
static onAfterAdd(Entity\Event $event)
static onAfterUpdate(Entity\Event $event)
static onAfterDelete(Entity\Event $event)
static onDelete(Entity\Event $event)
static onBeforeUpdate(Entity\Event $event)
static onAfterAdd(Entity\Event $event)
static onAfterUpdate(Entity\Event $event)
static onAfterDelete(Entity\Event $event)
</td ></tr ></table ></td ></tr >< tr >< td class="bx-popup-label bx-width30"><?=GetMessage("PAGE_NEW_TAGS")?> array( $site)