Артур Шевченко

Артур Шевченко

С нами с 24 мая 2019; Место в рейтинге пользователей: #7
Отправить деньги
Артур Шевченко
16 апреля 2021, 23:40
0
Я присоединяюсь к вопросу @Александр Мельник где почитать про это? Про одинарные фигурные скобки знаю, а вот про двойные не встречал инфу.
Артур Шевченко
16 апреля 2021, 23:38
0
Евгений, вот тут общаются разрабы Evolution CMS они приветливые и добрые, спросите там.
Артур Шевченко
16 апреля 2021, 23:36
0
Что это за синтаксис и почему modx его понимает?
Артур Шевченко
16 апреля 2021, 23:35
0
Так попробуй
@EVAL return $modx->runSnippet('pdoResources', array('parents'=>'8', 'depth'=>'1', 'limit' => '0', 'tpl' => '@INLINE {$pagetitle | replace:'
' : ''}=={$id}||','tplLast' => '@INLINE {$pagetitle | replace:'
' : ''}=={$id}' ));
Я не думал, просто переписал вариант @Евгений Webinmd под феном, как советовал @Николай Савин
Артур Шевченко
15 апреля 2021, 09:19
0
С одной стороны да, с другой разная активность имеет разную степень полезности, потому и должна оцениваться по-разному, это мое мнение, не более.
Артур Шевченко
14 апреля 2021, 17:07
+1
Попробуй вызывать сниппет некэшированным.
Артур Шевченко
14 апреля 2021, 13:49
0
tinymce.init({
    selector : '#ticketEditor',
    language_url : 'https://franchiser.ru/assets/project_files/tinymce/js/tinymce/langs/ru.js',
    language: 'ru',
    height: 400,
    relative_urls : false,
    document_base_url: 'https://franchiser.ru/',
    image_dimensions: false,
    remove_trailing_brs: true,
    extended_valid_elements : 'div[class],tr,td[style]',
    plugins: [
        'advlist autolink link image lists code charmap hr anchor',
        'searchreplace wordcount visualblocks visualchars fullscreen insertdatetime nonbreaking',
        'table paste'
    ],
    setup: function(editor) {
        editor.on('change', function(e) {
            var content = editor.getContent();   
            $('textarea#ticketEditor').val(content)
    },
    toolbar: 'undo redo | styleselect | bold italic | alignleft aligncenter alignright alignjustify | ' +
        'bullist numlist | link',
    menubar: 'edit view tools table code anchor',
    content_style: 'body { font-family:Helvetica,Arial,sans-serif; font-size:14px }',
    style_formats: [
        { title: 'Заголовок', block: 'h2' },
        { title: 'Подзаголовок', block: 'h3' },
        { title: 'Абзац', block: 'p'},
        { title: 'Цитата', block: 'blockquote'},
        { title: 'Вводная часть', block: 'div', classes: 'material-entry' },
    ]
});
Артур Шевченко
14 апреля 2021, 09:04
0
Добавь очистку поля и редактора после отправки в скрипты тикета.
Артур Шевченко
14 апреля 2021, 00:56
+1
Сейчас нет. Утром да.
Артур Шевченко
14 апреля 2021, 00:51
0
content пустой, отсюда и ошибка. Посмотри в доках к редактору должен быть колбэк на изменение, попробуй в нём брать текущее значение в редакторе и вставлять в value своего элемента textarea, по-моему я так делал.
Артур Шевченко
14 апреля 2021, 00:37
0
Какое значение у атрибута name поля к которому ты подключил редактор?
Артур Шевченко
14 апреля 2021, 00:28
0
А ты в консоли смотрел какие данные отправляются?
Артур Шевченко
13 апреля 2021, 22:02
0
Если интересная и есть время поковыряться, то почему бы и нет. Если сделаешь, напиши как сделал, кому-то может пригодиться.
Артур Шевченко
13 апреля 2021, 21:45
0
Печаль. Я бы сказал, что либо давай на фронте, либо сорян, я не могу потому как я на самом деле не знаю как это делать, это же стандартный интерфейс, если в исходниках что-то править, то при обновлении затрется, а ради такой мелочи городить свой нанокомпонент ну не знаю… Хотя может быть есть простой способ, но мне он неизвестен.
Артур Шевченко
13 апреля 2021, 20:48
0
Ну тогда, я бы сделал редактирование в самой новости)))
Артур Шевченко
13 апреля 2021, 20:30
0
Если кому-нибудь интересно, я бы через фронт сделал)))
Артур Шевченко
13 апреля 2021, 19:58
+1
Отправку можно делать так
<?php
if(!isset($chunk)){
    $modx->log(1, 'Письмо не отправлено. Не передеан чанк');
    return false;
}

if(!isset($to)){
    $modx->log(1, 'Письмо не отправлено. Не передеан email получателя');
    return false;
}else{
    $to = explode (',',$to);
}

if(!isset($subject)){$subject = 'noreply@'.$_SERVER['HTTP_HOST'];}
if(!isset($from)){$from = 'noreply@'.$_SERVER['HTTP_HOST'];}
if(!isset($reply)){$reply = $from;}
if(!isset($fromName)){$fromName = $modx->getOption('site_name');}
if(!isset($params)){
    $params = array();
}elseif(!is_array($params)){
    $params = json_decode($params, 1);
}
$modx->getService('mail', 'mail.modPHPMailer');
$pdoTools = $modx->getService('pdoTools');
$modx->getService('mail', 'mail.modPHPMailer');

$message = $pdoTools->getChunk($chunk, $params);
$modx->mail->set(modMail::MAIL_BODY,$message);
$modx->mail->set(modMail::MAIL_FROM, $from);
$modx->mail->set(modMail::MAIL_FROM_NAME, $fromName);
$modx->mail->set(modMail::MAIL_SUBJECT, $subject);
foreach($to as $t){
    $modx->mail->address('to',$t);
}
$modx->mail->address('reply-to', $reply);
if(isset($attachment)){
    $modx->mail->attach($attachment);
}

$modx->mail->setHTML(true);
if (!$modx->mail->send()) {
    $modx->log(1,'При отправке письма произошла ошибка: '.$modx->mail->mailer->ErrorInfo);
}

$modx->mail->reset();
НО всё что я написал это лишь моё предположение, возможно в цикле отправлять и не получится.
Артур Шевченко
13 апреля 2021, 19:47
+1
Пишешь обычный сниппет, в котором из глобального массива $_POST получаешь поле в котором у тебя выбранный город, это если он указан в отправляемой форме, если нет, то бери из массива get, в общем тебе нужен город. Учитывая, что Город это ресурс-коллекция, то лучше чтобы ты получал не название, а id. Потом через getIterator получаешь доверие ресурсы и по ним запускаешь цикл, в котором делаешь отправку писем, в modx есть для этого встроенные средства. Когда закончишь верни из сниппета true. И потом в вызов поставь вместо стандартного хука email название своего сниппета.
Артур Шевченко
13 апреля 2021, 18:43
0
Кроме того проблема в том, что я не знаю как отправить письма через FormIt персонально, а не в таком виде «mail1@mail.com,mail3@mail.com,mail3@mail.com,». Чтобы бы другие получатели не видели кому еще отправлено письмо.
Учитывая это, пиши свой хук, который будет в цикле рассылку делать.
Артур Шевченко
13 апреля 2021, 17:49
+1
Код формы? Как выглядит вывод AjaxForm? Форма для поиска и форма, данные из которой нужно рассылать, это разные формы?