Вопросы

MODx, JWT, API, внешние пользователи, авторизация/регистрация

Добрый день уважаемые форумчане!
Вводные:
-MODx rev 2.7.3
-Nginx
-Единственный кто должен авторизовываться на сайте из БД MODx это администратор сайта

Задача:
Регистрация/авторизация пользователей а так же брать, класть ордерсы во внешнюю бд.
В БД Modx не должно быть авторизуемых пользователей, так как к внешней бд по API происходит авторизация из другого сайта (что бы данные пользователя были едины и не дублировались)

Что было сделано:
Регистрация — реализовано — PDO запрос (работает, но нужен перевод на API)
Получение/создание ордерсов для авторизованного пользователя — так же PDO запрос в БД (работает, но нужен перевод на API)
Установил jwtSession — но не увидел примеров использования
Установил modJWT — но так же не увидел примеров использования

Вопрос:
Как я могу авторизовываться в MODx по JWT передав по API связку ключ/пароль, получив токен, и хранить его, и считать, что если есть токен, то сессия имеется, и всё хорошо?
ID пользователя будет зашит в сам ответ JWT в токен, по этому можно будет понимать какой это пользователь для
будущих запросов на API.
Чем возможно решить задачу? если не JWT то чем?

Кратко:
Никита
08 октября 2020, 11:20
modx.pro
992
0

Обновление до 2.8.0-pl == PHP Fatal error: Uncaught --> Smarty Compiler: Syntax error in template

Здравствуйте, обновился до версии 2.8.0-pl, почти все нормально, единственный косяк при редактировании документа, (не контейнер) сервер выдает: HTTP ERROR 500
В логах сервера:
PHP Fatal error: Uncaught --> Smarty Compiler: Syntax error in template «file:/manager/templates/default/element/tv/renders/input/url.tpl»
on line 42 ",listeners: {'keydown': {fn:MODx.fireResourceFormChange, scope:this}}" — Unexpected ": ", expected one of: "}" < — core/model/smarty/sysplugins/smarty_internal_templatecompilerbase.php on line 42
Кто обновился подскажите как все ли нормально? ну и конечно если кто знает в какую сторону копать, тоже хотелось бы услышать.
NGINX, PHP7.2
criminalist
08 октября 2020, 07:53
modx.pro
1 516
+1

Как отловить событие mFilter2

Ребят, подскажите как отловить событие срабатывания фильтра и сортировки mFilter2.
Проблема в том, что использую разметку masonry и после срабатывания mFilter2 верстка падает, поэтому необходимо заново инициировать masonry.
Наверное можно отлавнивать изменение класса «loading» в теге с #mse2_mfilter, но правильнее получиться событие завершения фильтрации и после запустить masonry.

Иван подсказал решение:
Вставить в конец шаблона
{$_modx->regClientScript('
  <script>
    mSearch2.defaultBeforeLoad = mSearch2.beforeLoad;
    mSearch2.defaultAfterLoad = mSearch2.afterLoad;
    
    mSearch2.beforeLoad = function() {
        mSearch2.defaultBeforeLoad();
        this.filters.css({
            opacity: .5,
            pointerEvents: "none",
        });
    };
    
    mSearch2.afterLoad = function() {
        mSearch2.defaultAfterLoad();
        this.filters.css({
            opacity: 1,
            pointerEvents: "auto",
        });
    };
  </script>
', true)}
А дальше по аналогии доработать
Сергей
07 октября 2020, 21:15
modx.pro
1 099
0

Не обрабатываются теги

3
Подскажите, куда копать. Видел и раньше подобные ошибки, но что-то сейчас не могу найти решение.
Роман
07 октября 2020, 19:02
modx.pro
768
0

Что нового в MODX Revolution 2.8.0-pl

Просьба поделиться, что нового в MODX Revolution 2.8.0-pl. Стоит ли обновляться?
Роман
07 октября 2020, 16:15
modx.pro
8 258
0

Как выводить почти одинаковые блоки контента на разных страницах?

Приветствую.
Сразу пример.

На сайте есть продукты
  • продукт 1
  • продукт 2
  • продукт 3
  • продукт 4
  • продукт 5
  • продукт 6
  • продукт n
Есть произовдители:
  • произовдитель 1
  • произовдитель 2
  • произовдитель n
У производителя должно быть каким-то способом создано описание и добавлено в продукт, но как это лучше сделать — вопрос для меня.
weranda
07 октября 2020, 16:14
modx.pro
1
976
0

Задать значение TV параметра из сниппета

Приветствую!

Помогите несведущему… имеется сниппет, который на выходе выдаёт число, а на одной из страниц админки сайта есть поле для ввода значения TV параметра. Подскажите, как поместить в это поле, значение, которое выдаёт сниппет. Раньше работало через @EVAL return $modx->runSnippet('сниппет'), но сейчас так не хочет, как поступить?
MODX Revolution 2.7.3-pl

Заранее спасибо.
bonoman
07 октября 2020, 14:27
modx.pro
808
0

Проблема с кастомной ценой в minishop2

Здравствуйте.
Такая ситуация возникла:
У меня цена формируется в карточке товара с учетом разных дополнительных условий. Потом эта новая цена попадает в корзину через плагин на событие msOnAddToCart
if(!empty($_POST['price'])) {
$tmp = $cart->get();
$tmp[$key]['price'] = $_POST['price'];
$cart->set($tmp);
}
Но, на странице оформления заказа, если «неудачно» нажать кнопку «Сделать заказ» (т.е. если не все обязательные поля заполнены и появляется сообщение об этом), а потом заполнить любое поле input — цена (и, соответственно, вся стоимость) пересчитывается по базовой цене.
При успешном оформлении заказа в заказ тоже попадает базовая цена, а не измененная… вероятно нужен еще какой-то плагин, что бы цена менялась не только в корзине, но и в заказе?
Прошу помочь разобраться.
Игорь
07 октября 2020, 09:06
modx.pro
699
0

Проверка поля select в formit

Добрый день, друзья!
Сделан форму на formit + selectpicker (как с множественным выбором, так и одиночным).
Прописал стандартные события для обработки ошибок, но ничего не работает. Обычные поля проверяются на заполненность. Поля select нет. В чем мб причина? Логи браузера пустые.
Одиночный выбор:
<div class="col-md-6 col-sm-12">
            <label for="age">Age</label>
            <select class="selectpicker form-control" id="age" name="age" data-live-search="true">
                <option value="18">18</option>
                <option value="19">19</option>
                <option value="20">20</option>
                <option value="21">21</option>
                <option value="22">22</option>
                <option value="23">23</option>
                <option value="24">24</option>
                <option value="25">25</option>
                <option value="26">26</option>
                <option value="27">27</option>
                <option value="28">28</option>
                <option value="29">29</option>
                <option value="30">30</option>
                <option value="31">31</option>
                <option value="32">32</option>
                <option value="33">33</option>
                <option value="34">34</option>
                <option value="35">35</option>
                <option value="36">36</option>
                <option value="37">37</option>
                <option value="38">38</option>
                <option value="39">39</option>
                <option value="40">40</option>
            </select>
            <span class="error"></span>
        </div>
Антон
06 октября 2020, 17:05
modx.pro
1 370
0

Требуется помощь при выводе ресурсов по tv полю с датой

Возможно ли вывести ресурсы по датам из tv поля, допустим за сегодня, за завтра (если стоит дата), за после завтра и так далее, в tv поле (множественный выбор) может быть несколько дат, формата типа 01.10.2020||02.10.2020 и так далее?


готовы оплатить любую помощь

Как вариант допилить — daruse.ru/vyiborka-materialov-po-date-v-xpdo-modx
Роман
06 октября 2020, 10:45
modx.pro
635
0