Файловый менеджер - Редактировать - /var/www/axolotl/data/www/axolotls.ru/www/bitrix/modules/sender/lib/internals/commonajax/actionpreview.php
Назад
<?php /** * Bitrix Framework * @package bitrix * @subpackage sender * @copyright 2001-2012 Bitrix */ namespace Bitrix\Sender\Internals\CommonAjax; use Bitrix\Fileman\Block\EditorMail; use Bitrix\Main; use Bitrix\Main\Config\Option; use Bitrix\Main\Localization\Loc; use Bitrix\Sender\Integration\Crm\Connectors\Helper; use Bitrix\Sender\Internals\QueryController as Controller; use Bitrix\Sender\Message\Tracker; use Bitrix\Sender\Security; Loc::loadMessages(__FILE__); /** * Class ActionPreview * @package Bitrix\Sender\Internals\CommonAjax */ class ActionPreview extends CommonAction { const NAME = 'preview'; /** * On request event handler. * * @param Main\HttpRequest $request Request. * @param Controller\Response $response Response. */ public static function onRequest(Main\HttpRequest $request, Controller\Response $response) { $content = $response->initContentHtml(); Main\Loader::includeModule('fileman'); $canEditPhp = Security\User::current()->canEditPhp(); $canUseLpa = Security\User::current()->canUseLpa(); $tracker = (new Tracker(Tracker::TYPE_UNSUB)) ->setModuleId('sender') ->setFields(array( 'RECIPIENT_ID' => 0, 'MAILING_ID' => 0, 'EMAIL' => 'test@example.com', 'CODE' => 'test@example.com', 'TEST' => 'Y' )) ->setHandlerUri(Option::get('sender', 'unsub_link')); $html = $request->getPostList()->getRaw('content'); preg_match_all("/#([0-9a-zA-Z_.]+?)#/", $html, $personalizeFields); $fieldsData = []; if(is_object($GLOBALS["USER"]) && isset($personalizeFields[1])) { foreach ($personalizeFields[1] as $field) { $fieldArray = explode(".", $field); if(count($fieldArray) > 1) { $document = Helper::getData( $fieldArray[0], [$GLOBALS["USER"]->GetID()] ); if(!isset($document[1])) { continue; } $document = $document[1]; $fieldsData[$field] = $document && isset($document[$fieldArray[1]]) ? $document[$fieldArray[1]] :''; } } } $previewParams = array( 'CAN_EDIT_PHP' => $canEditPhp, 'CAN_USE_LPA' => $canUseLpa, 'SITE' => $request->get('site_id') ?: SITE_ID, 'HTML' => ($html && Main\Text\Encoding::detectUtf8($html)) ? Main\Text\Encoding::convertEncoding( $html, 'UTF-8', SITE_CHARSET ) : $html , 'FIELDS' => array_merge($fieldsData, array( 'SENDER_CHAIN_CODE' => 'sender_chain_item_0', 'UNSUBSCRIBE_LINK' => $tracker->getLink() )), ); $html = EditorMail::getPreview($previewParams); $content->set($html); } }
| ver. 1.4 |
Github
|
.
| PHP 7.4.8 | Генерация страницы: 0 |
proxy
|
phpinfo
|
Настройка