Илья Уткин

Илья Уткин

С нами с 15 декабря 2012; Место в рейтинге пользователей: #9
Илья Уткин
20 декабря 2015, 19:18
0
cron — это просто способ вызывать какой-то скрипт периодически, например, раз в полчаса.

Правильнее было бы, конечно, создать плагин, который срабатывал при редактировании вопроса. Но в компоненте никаких событий не вызывается… Хотя надо бы вызывать) Может, и сделаю как-нибудь, а пока только так…
Илья Уткин
20 декабря 2015, 18:58
1
0
По поводу таблицы в админке — попробуйте установить customExtra, в настройках указать, сколько и каких полей вам надо, а так же — какие из чекбоксов вам нужны.

Потом все названия полей, чекбоксов, кнопок и др. можно поменять в Управлении словарями.

Отправку вопросов доработать — здесь есть пример, как сделать добавление строк в эту таблицу.

По поводу отправки писем — проще всего, наверное, написать скрипт, который будет находить все новые вопросы с ответами, отправлять уведомления и убирать галочку Новый, чтобы повторов не было. Ну и этот скрипт вызывать по cron
Илья Уткин
18 декабря 2015, 09:37
+2


Создаёте сниппет saveFields
foreach ($_POST as $k => $v) {
  $_SESSION['form'][$k] = $v;
}

Вызываете его перед отправкой почты, а после — делаете редирект
[[!FormIt?  
    &hooks=`saveFields,email,redirect`  
    &emailTo=`test@test.ru`  
    &emailSubject=`Заказ обратного звонка`
    &emailTpl=`tpl.mail.contact`
    &redirectTo=`5`
]]

На странице с ID 5 данные формы будут доступны. Достаточно вызывать сниппет, например, fieldsToPlaceholders
$modx->toPlaceholders($_SESSION['form']);
Илья Уткин
18 декабря 2015, 00:18
1
0
Попробуйте поставить customExtra и сохранять формы в нем.

В форме заявок нужно добавить хук, назовём его, к примеру saveRequest
[[!FormIt?  
    &hooks=`saveRequest,email,redirect`  
    &emailTo=`your@mail.ru`  
    &emailSubject=`Заказ обратного звонка`
    &emailTpl=`tpl.mail.contact`
    &redirectTo=`5`
]]

В сниппете создадим объект и сохраним его
<?php
$modx->addPackage('customextra', $modx->getOption('core_path').'components/customextra/model/');
$request = $modx->newObject('customExtraItem');
$request->set('name', $_POST['name']);
$request->set('string1', $_POST['contact']);
$request->set('description', $_POST['text']);
$request->save();
return true;



ilyaut.ru/addons/very-easy-to-add-custom-objects-in-modx/
Илья Уткин
17 декабря 2015, 09:17
+2
Не прокатило, да, Ваня? Поставил стоимость полляма, а вдруг кто-то не посмотрит и заплатит, да? Тогда всё мероприятие окупится с лихвой…

Везде развод! =)))
Илья Уткин
14 декабря 2015, 21:19
0
Надо будет в скайпе завтра списаться
Илья Уткин
14 декабря 2015, 20:22
0
Обзорная экскурсия после 18:00? Темно же будет… Может, просто в баре посидеть, выпить кружечку хорошего пива… Но у меня обратный поезд отходит в 21:44, так что я на афтер-пати смогу быть только до 20:00—20:30.

Зато приезжаю рано утром, так что по городу буду гулять до мероприятия =))
Илья Уткин
13 декабря 2015, 21:35
0
Параллельно с youtube посмотри возможности Ivideon, кстати
Илья Уткин
13 декабря 2015, 13:38
1
+5
[[*content:showCode]]

Сниппет showCode:

Илья Уткин
12 декабря 2015, 19:49
0
Вообще, я-то свою проблему решил — я не спорю, я только предлагаю. Если разработчик считает, что это правильное поведение, значит, так и есть. У каждого инструмента своя область применения. Так что если ты говоришь, что не надо Jevix менять, значит не надо.
Илья Уткин
12 декабря 2015, 19:46
0
Щас подробнее распишу.

Вот есть у меня объект, modExtraItem, который пользователи могут добавлять на сайт/редактировать.

Я знаю, что пользователь может ввести скобки, поэтому объект я вывожу таким сниппетом:



Если вывести так, то выводится нормально — Fenom не обрабатывает такие скобки
[[getModExtraItem? &id=`5` &tpl=`tpl.item`]]

Но я хочу еще и типографить поля этого объекта. Я не стал писать свой сниппет для этого, потому что я наглый и ленивый, а взял существующий — Jevix.
[[getModExtraItem:Jevix? &id=`5` &tpl=`tpl.item`]]

Оп, и теги Fenom стали обрабатываться, потому что Jevix такой добрый заменил
Илья Уткин
12 декабря 2015, 18:14
0

А мне хочется, чтобы выводились именно кодом, а не преобразовывались в символы
Илья Уткин
12 декабря 2015, 17:54
0
Я сам щас с телефона))) Вот этот метод как отключить? github.com/bezumkin/modx-jevix/blob/master/core/components/jevix/model/jevix/jevix.core.php#L1312 Зачем он в типографе? =((
Илья Уткин
12 декабря 2015, 17:43
0
Вот-вот, зачем типограф это делает? Я хочу отключить этот функционал…
Илья Уткин
12 декабря 2015, 17:40
0
Нит) У сниппета добавить параметр htmlEntityDecode, по умолчанию равен true, а если поставить false, Jevix перестанет преобразовывать & #125 в {
Илья Уткин
12 декабря 2015, 17:24
0
Хотя бы добавить параметр, выключающий преобразование последовательностей в сущности…
Илья Уткин
12 декабря 2015, 17:13
0
Ну он же еще и скрипты вырезает и теги разные нехорошие =)))

Но я не настаиваю.
Илья Уткин
12 декабря 2015, 17:00
0
Может, лучше Jevix обновить? Все-таки фильтрация — его дело, да и фильтровать надо не только ресурсы, но и, например, поля пользователя в личных кабинетах…