Вопросы
Проверка на отсутствие картинки в MigX
Знаю два вида проверки:
1)
Первое срабатывает даже если строки нет вообще, второе если строка есть, но в ней нет пути до картинки.
Просто интересно, а есть ли способ проверки, когда путь до картинки есть, а самой картинки нет? То есть проверка на isnot=`` пройдет успешно. ModX в таком случае выводит свою стандартную заглушку. Есть ли возможность вывести свою? А свою «динамическую» (как в п.1)? Если есть, то в какую сторону копать?
1)
[[getImageList:default=`https://dummyimage.com/264x190/faa61a/fff.jpg`?
.....
]]2) Условие в самом чанке в виде if elseПервое срабатывает даже если строки нет вообще, второе если строка есть, но в ней нет пути до картинки.
Просто интересно, а есть ли способ проверки, когда путь до картинки есть, а самой картинки нет? То есть проверка на isnot=`` пройдет успешно. ModX в таком случае выводит свою стандартную заглушку. Есть ли возможность вывести свою? А свою «динамическую» (как в п.1)? Если есть, то в какую сторону копать?
Как запустить сниппет по cron? РЕШЕНО
В ispmanager запускаю php скрипт каждый час.
Команда:
Как лучше реализовать скрипт по cron.
Команда:
php -f /var/www/u1003749/data/www/site.ru/instacron.phpКод в скрипте:<?php
$_SESSION['mgrRole'] = 1; //чтобы корректно работал MODX API
$path = '/var/www/u1003749/data/www/site.ru/';
define('MODX_API_MODE', true);
define('MODX_BASE_PATH', '/var/www/u1003749/data/www/site.ru/');
define('MODX_SITE_URL', 'https://site.ru/');
define('MODX_BASE_URL', 'https://site.ru/');
include_once($path . 'index.php');
global $modx;
if (empty ($modx->config)) {
$modx->getSettings();
}
$modx->runSnippet('outputinstagram*');
?>Приходит такое уведомление на почту о выполнении скрипта:PHP Parse error: syntax error, unexpected '[' in /var/www/u1003749/data/www/ustimi.ru/core/components/clientconfig/model/clientconfig/clientconfig.class.php on line 90В чем может быть проблема?Как лучше реализовать скрипт по cron.
*Meta, которой принадлежат facebook и instagram признана экстремистской в России
Как взаимодействовать из плагина со страницей?
Есть плагин, на событие от minishop2 — msOnGetOrderCost
Как правильно из него взаимодействовать со страницей?
Все что нахожу в документации по плагинам, это —
Но мне нужно уведомить пользователя что сумма его заказа позволяет получить подарок.
Меня бы устроила возможность взаимодействовать со страницей на JS, например выполнить некий скрипт, но опять же через
Как правильно из него взаимодействовать со страницей?
Все что нахожу в документации по плагинам, это —
$modx->event->output('Вас ожидает подарок на следующей странице');однако во всем примерах такой код вызывается как реакция на негативное событие. Ну тоесть не дать добавить товар или что-то еще. То есть всегда когда действие нужно остановить и для этих случае это срабатывает — я вижу красное уведомление jGrowl от минишоп и все ок.Но мне нужно уведомить пользователя что сумма его заказа позволяет получить подарок.
case 'msOnGetOrderCost':
if($cost>=$giftSum){
$modx->event->output('Вас ожидает подарок на следующей странице');
}
break;и про срабатывании я вижу уведомление на красном фоне и остановку всей остальной логики — то есть все цены после этого в корзине становятся равны нулю. (имеется ввиду те, которые должны были обновится)Меня бы устроила возможность взаимодействовать со страницей на JS, например выполнить некий скрипт, но опять же через
$modx->event->output('Вас ожидает подарок на следующей странице');нельзя передать код, только чистый текст, Баг office и html/css
Обнаружил не большой баг в компоненте office.
Если на странице есть стиль background-image: url(images/bg.jpg);
То проверка csrf не проходит с первого раза.
Помогло вылечить, это добавить в {ignore} ......{.ignore}
Если на странице есть стиль background-image: url(images/bg.jpg);
То проверка csrf не проходит с первого раза.
Помогло вылечить, это добавить в {ignore} ......{.ignore}
Почта для домена
Добрый день!
Есть выделенный сервер. Настроена на нем почта через msmtp -> yandex
Все работало прекрасно, но случилось так, что из-за большого наплыва посетителей был превышен лимит на суточную отправку писем. Сразу скажу, что спамом и рекламной рассылкой писем не занимаюсь. Пользователи отправляют результаты прохождения тестов через форму обратной связи. Пользователей было много, отправляли интенсивно => лимит превышен
Собственно, вопрос сейчас в том, как отправлять мою почту так, чтобы либо не подпадать под лимиты Яндекса, либо вообще минуя его, но с минимальными шансами попадания писем в спам
Спасибо за понимание
Есть выделенный сервер. Настроена на нем почта через msmtp -> yandex
Все работало прекрасно, но случилось так, что из-за большого наплыва посетителей был превышен лимит на суточную отправку писем. Сразу скажу, что спамом и рекламной рассылкой писем не занимаюсь. Пользователи отправляют результаты прохождения тестов через форму обратной связи. Пользователей было много, отправляли интенсивно => лимит превышен
Собственно, вопрос сейчас в том, как отправлять мою почту так, чтобы либо не подпадать под лимиты Яндекса, либо вообще минуя его, но с минимальными шансами попадания писем в спам
Спасибо за понимание
Два и более родительских ресурса у документа (дочернего ресурса)
Здравствуйте, скажите пожалуйста, возможно ли, у дочернего ресурса, указать два и более родительских?
Что бы дочерний ресурс «физически» находился в двух (и более) родительских ресурсах одновременно, формировался правильный url и хлебные крошки. Что бы не создавать дубли ресурса.
Например:
Категория-1/Страница
Категория-2/Страница
Категория-товара-99/Товар
Категория-товара-46/Товар
Что бы дочерний ресурс «физически» находился в двух (и более) родительских ресурсах одновременно, формировался правильный url и хлебные крошки. Что бы не создавать дубли ресурса.
Например:
Категория-1/Страница
Категория-2/Страница
Категория-товара-99/Товар
Категория-товара-46/Товар
Как запретить менеджеру добавлять ресурс в группу, к которой у него нет доступа?
Ребята, собственно вопрос в заголовке.
Группы ресурсов используются для организации скидок. Менеджер заходит в товар и отмечает группы соответствующие акции в которой товар участвует.

Группа System используется для ресурсов типа Login и к ней доступ ограничен чтобы скрыть соответствующие ресурсы из дерева.
Так как сделать чтобы эта группа не отображалась у пользователей, у которых нет к ней доступа?
Группы ресурсов используются для организации скидок. Менеджер заходит в товар и отмечает группы соответствующие акции в которой товар участвует.

Группа System используется для ресурсов типа Login и к ней доступ ограничен чтобы скрыть соответствующие ресурсы из дерева.
Так как сделать чтобы эта группа не отображалась у пользователей, у которых нет к ней доступа?
Удаление компонентов modX через api
Доброго времени суток! Может кто в курсе на счет удаления компонентов, используя api modx?
То есть, желательно, чтобы производились аналогичные действия как и при удалении через админку:
То есть, желательно, чтобы производились аналогичные действия как и при удалении через админку:
- Удаляются регистрационные записи из базы
- Удаляются папки из assets/components/ и core/components/
- Удаляются чанки со сниппетами, пространства имен и т.д.
Всплывающие подсказки в форме поиска mSearch2
Добрый день.
На сайте работает mSearch2.
Форма поиска выводится:
Как сделать (где настроить), чтобы все всплывающие подсказки появлялись в нижним регистре?
На сайте работает mSearch2.
Форма поиска выводится:
[[!mSearchForm?
&pageId=`31`
&tplForm=`mSearchForm`
&autocomplete=`queries`
]]При наборе какого-либо текста в форме поиска появляются всплывающие подсказки. Некоторые из них отображаются в верхнем регистре, некоторые в нижнем.Как сделать (где настроить), чтобы все всплывающие подсказки появлялись в нижним регистре?
Вывод ошибки в AjaxForm
Друзья, проверяю форму на заполненность одного поля из двух. Вот вызов сниппета:
{'!AjaxForm' | snippet : [
'snippet'=>'FormIt'
'hooks'=>'spam,email'
'emailFrom'=>'noreply@test.loc'
'form'=>'tpl.callBack'
'emailTpl'=>'tpl.callBackMail'
'emailTo'=>'inbox@mail.local'
'emailSubject'=>'Обратная связь с сайта'
'validate'=>'name:required,phone:oneOfTwoFields,email:email:oneOfTwoFields,link:blank'
'customValidators' => 'oneOfTwoFields'
'validationErrorMessage'=>'Пожалуйста, заполните необходимые поля.'
'successMessage'=>'Ваше обращение отправлено. Мы свяжемся с вами!'
]}А вот сниппет кастомного валидатора:<?php
$success = true;
$phone = trim($_POST['phone']);
$email = trim($_POST['email']);
if (empty($phone) && empty($email)) {
$success = false;
$validator->addError($key, 'Заполните поле Телефон или Email.');
}
return $success;Валидация работает, но не могу понять как выводить во всплывающем окне эту ошибку (когда не заполнены оба поля)? Всегда выводится 'Пожалуйста, заполните необходимые поля.'