Баха Волков
Этого должно быть достаточно
Миша
Мотивация
Anonymous
Как ты
Anonymous
Что делаете
Sergey_K
Кто-то бота пропустил все же...
Anton
Помогите кто-нибудь понять: 2 шаблона в которых одинаково вызывается чанк [[$scripts]] внутри этого чанка есть такой кусок кода: <script>
$(document).ready(function(){
window.tagsmap = {'getTagsColors' | snippet};
... Этот гетТегсКолорс возвращает строку с джейсоном, обёрнутую в {ignore} чтоб феном не ругался на скобочки, так вот, в одном шаблоне всё отрабатывает нормально, а в другом ругается на то, что не может джейсон распарсить как феном. ВТФ? Феном как-то динамически накидывает итерации обработки страницы и одна страница делает на проход фенома больше, или как это вообще работает? Я вообще не могу понять, как один и тот-же код на разных страницах ведёт себя по-разному.
Sentinel
Возможно в том шаблоне есть еще код который обрабатывает fenom, но не должен
Anton
Так в логе ошибка конкретно на это место указывает.
Anton
Если это закомментить, то та-же ошибка будет на следующем аналогичном месте с джейсоном.
Anton
Может есть какой-то секретный способ, как джейсон заэкранировать?
Aleks
Anton
более того, даже этот самый шаблон, но с другими данными работает нормально. Что-то тут не чисто.
Anton
Пробел не всегда есть возможность поставить, у меня джейсон в сниппете генерится с помощью json_encode.
Anton
тем более там супер-навороченный джейсон с миллионом вложенных объектов.
Aleks
Ну сниппет писать так чтобы генерировал с пробелом
Anton
да это бред.
Anton
Просто магия-то в том, что в одном случае этот шаблон нормально отрабатывает, а с другими данными - крашится.
Aleks
Согласен. Большой вопрос почему феном ignore игнорирует
Sentinel
Anton
так говорю, даже этот шаблон для другой страницы норм рендерится.
Anton
Вообще феном во сколько проходов страницу шаблонит?
Sergey_K
Соответственно, внутри со второго уровня уже все будет парситься.
Anton
Как вообще это работает? поочереди все теги фенома обрабатываются, если это чанк, то он в отдельном контексте шаблонится и подставляется?
Anton
На самом деле, это косяк логов модх, конечно, зачастую вообще не понять что и почему сломалось.
Anton
и дебага нету вменяемого)
Sergey_K
Ну у тебя может чанк в чанке быть
Sergey_K
Соотв. второй уровень пропарсится
Sergey_K
Надо уметь их пользовать :)
Anton
ну у меня в чанке вызывается сниппет, который возвращает джейсон обёрнутый игнором, соответственно, когда поверх этого чанка прасится уже шаблон, то он игнор должен нормально отработать и отдать страницу, но ощущение, что там ещё один проход поверх делается какого-то чёрта.
Sergey_K
попробуй игнор убрать везде. и поставить вокруг твоего джейсона
Sergey_K
потом вокруг вызова сниппета
Sergey_K
Короче, двигать на уровень вверх. Вот и поймешь, где фолит.
Anton
короче.
Anton
всё довольно странно
Anton
я нашел причину: там в джейсоне куски хтмл в котором формулы из mathjax и в этих формулах скобочки, я хз, как там работает парсер, но он пытался их распарсить. Если в хтмле поставить пробел после скобки, то всё заработало.
Anton
тоесть получается, что внутри джейсона было что-то в духе {"prop": "text text text {text in brackets} more text"} и это сломало парсер. Хотя весь этот общий кусок джейсона был обёрнут в {ignore}
Sergey_K
https://modzone.ru/blog/2017/10/06/why-doesnt-work-tag-ignore/
Anton
ононо чё. Хм.
Сергей
Уважаемые знатоки, подскажите пожалуйста, как в minishop2 на странице заказа при изменении количества товаров изменять и их стоимость? По аналогии того как меняется сумма заказа
Anton
яваскриптом, если ты о стоимости количество*цена позиции
⚡️Влад
⚡️Влад
Странно что до сих пор из каропки не работает)
Сергей
Джиэсом я и меняю цену на странице, но сначала отрабатывает js а потом уже на сервере обработчик пересчитывает цену в зависимости от количества. По этому получается что js выводит старую цену
Сергей
js ом я беру цену из сессии из корзины
Сергей
мне бы отловить то событие которым дефолтный js меняет сумму заказа и за одно менять стоимость товаров
Dmitriy
кто скажет где в дискорде ссылка на ветку?
🙈 PG
Сергей
https://docs.modx.pro/komponentyi/minishop2/razrabotka/skriptyi-i-stili
Изучал уже эту страницу, копипастю от туда, например
miniShop2.Callbacks.add('Order.getcost.response.success', 'orders_getcost_ok', function(response) {
miniShop2.Message.success('Всё хорошо!');
console.log(response);
});
Захожу на страницу оформления заказа, сразу появляется "Все хорошо!", и дальше никаких признаков жизни при изменении количества(
🙈 PG
🙈 PG
Cart.change.ajax.always к примеру
Сергей
Пробую такой код,
miniShop2.Callbacks.add('Cart.change.response.success', 'asd_cart', function() {
console.log('this')
// return false;
});
нет результатов, такой же код только с add вместо change на странице товаров работает(
🙈 PG
🙈 PG
miniShop2.Callbacks.add('Cart.change.response.success', 'asd_cart', function(data) {
console.log(data)
});
🙈 PG
и в data лежит total_cost
Сергей
🙈 PG
на странице корзины
🙈 PG
или у тебя это одна страница?
Сергей
одна
Сергей
в этом может быть проблема?
🙈 PG
🙈 PG
даже тут можно проверить
🙈 PG
https://minishop2.com/cart
🙈 PG
может он слишком рано у тебя вызывается?
🙈 PG
до инициализации monishop2
Сергей
тогда бы не срабатывал скорее всего вообще, а так он при заходе на страницу говорил что всё хорошо)
🙈 PG
Sergey_K
Sergey_K
тогда проще посмотреть, что там навешано в принуипе
Sergey_K
miniShop2.Callbacks
Sergey_K
в консоли
Миша
Миша
просто со страницы дергая а не откуда то
🙈 PG
Иван
Evgeniy
🙈 PG
А там окажется какой-то travis и push не получится 😂