Вопросы по JotX

Всем привет!
Встала задача встроить JotX, использую режим &config=`tree-ajax-rtn` и
&placeholders=`1` &output=`0`

Есть вопросы:

1) Как отключить рейтинг комментария? Просто закомментить в шаблоне? или есть более правильный способ отключить через параметры сниппета, например?
Пробовал так в параметрах вызова сниппета, но не получилось:
&onFirstRun=``
&onReturnOutput=`ajax`

2) Как динамически менять кол-во комментов на странице (напомню, стоит режим Аякс)?

Этот способ меняет кол-во только при обновлении страницы:
[!JotX? &action=`count-comment`!]

При этом если залогинен в админке, то в блоке модерации кол-во опубликованных меняется динамически, как нужно. Может, есть какой-то плейсхолдер для кол-ва, видимый не только админу?

Заранее благодарен.

19 комментариев

avatar
Андрей, я понимаю что и ты уже не молод, но не стыдно тебе со старушками развлекаться?:) Вместо того чтобы пытаться разобраться с трупами не лучше было бы написать альтернативу ему?)) Ну или попинать людей, которые обещались выпустить альтернативу...)
avatar
Писать альтернативу долго, тут не разработка, а доработки сайта, задачу надо решать достаточно быстро. А альтернативу я месяц буду писать ))

А попинать людей — так это тоже долго, может быть годы ))
avatar
И чего стыдного? Если старушка работает исправно, не тупит, не глючит, не просит еще килограмм зависимостей — то почему отказываться от такого решения. Нет, это не значит что надо застыть во времени. Но и просто ради моды, для меня сомнительно. Пинать разработчиков? Ну тоже так себе занятие. А если они сейчас сильно заняты, то получается ты лезешь со своими хотелками не вовремя. И они могут рассердиться и плюнуть со всем на альтернативу.
avatar
Для каких-то локальных задач, когда нужны комментарии ради того что бы они были — вполне себе нормальное решение. Однако когда встают вопросы кастомизации или более современные подходы к ним, то тут оно начинает буксовать.
А касательно «пинать разработчиков» — так это шпилька товарищу, который еще в октябре прошлого года писал что делает древовидные комментарии с использованием DL...)
avatar
Спасибо за разъяснения про «шпильку». Так товарищу и надо < — это шутка.
avatar
А касательно «пинать разработчиков» — так это шпилька товарищу, который еще в октябре прошлого года писал что делает древовидные комментарии с использованием DL...
И сделал.
avatar
Я совсем запутался. Разработчик сделал — молодец! А «шпилька» кому и за что!? Меня не надо пинать. Я добрый.
avatar
Видимо, разработчик сделал, но никто об этом не знал, потому что он не сообщил и в сообщество не выложил.
avatar
И сделал.
О, круто! А где можно посмотреть?)
avatar
Ждем-с, может Temus что-нибудь скажет.
avatar
Про рейтинг — да, убрать из шаблона.
Количество комментариев — непонятно, где оно, и почему должно динамически меняться. Есть плейсхолдер [+jot.nav.total+] но в древовидных он только первый уровень считает, так что не подойдёт. Если на сайте одни анонимы пишут, то [+comment.userpostcount+] будет количество комментариев показывать. Ну и есть [+jot.html.count-comments+] для &action=`count-comments`
avatar
Кол-во комментариев было сделано так. Комментарии древовидные, режим "ajax-tree". В самом начале шаблона стоят вызовы сниппетов:
[!JotX? &config=`tree-ajax` &upc=`2` &placeholders=`1` &output=`0`!]
[!JotX? &action=`count-comments` &placeholders=`1` &output=`0`!]

В том месте, где нужны комменты, стоят стандартные плейсхолдеры, а перед ними плейсхолдер кол-ва:
<h2>Комментарии ([+jot.html.count-comments+])</h2>
[+jot.html.moderate+]
[+jot.html.comments+]
[+jot.html.form+]

В такой конфигурации, при добавлении комментария хоть гостем, хоть суперадмином, он автоматом публикуется — но кол-во (плейсхолдер [+jot.html.count-comments+]) не меняется. Оно меняется только при перезагрузке страницы.

В то же время, если я залогинен в админке, то в блоке модерации, в строчке «показать опубликованные сообщения», кол-во комментариев при добавлении меняется сразу, то есть корректно.
avatar
Попробовал в вышеописанной схеме вместо [+jot.html.count-comments+] поставить сначала [+jot.nav.total+], потом [+comment.userpostcount+].

Первый — [+jot.nav.total+] — действительно показывает кол-во комментов первого уровня, но и он не меняет своего значения при добавлении коммента как 1-го, так и нижних уровней (ответов).

Второй же плейсхолдер — [+comment.userpostcount+] — не «показывает» вообще ничего.

Задача: Я хотел бы добиться, чтобы при добавлении комментария через Аякс и его автоматической публикации в режиме ajax-tree сразу же менялось и подсчитанное кол-во. Аналогично тому, как это делается в блоке модерации, в строке «показать опубликованные сообщения».

avatar
[+comment.userpostcount+] только в блоке комментариев работает, это не глобальный плейсхолдер.
По задаче с обновлением количества комментариев — вот исправил несколько файлов. Будет сразу работать и обновляться [+jot.html.count-comments+], второй вызов сниппета не нужен.
avatar
Благодарю за ответы и за труд.

[+comment.userpostcount+] только в блоке комментариев работает, это не глобальный плейсхолдер.
— Да, я стал разбирать код и это уже понял.

По задаче с обновлением количества комментариев — вот исправил несколько файлов. Будет сразу работать и обновляться [+jot.html.count-comments+]
— Отлично, спасибо, буду тестить!

второй вызов сниппета не нужен.
— Видимо, вы имеете в виду вызов с параметром &action=`count-comments` не нужен? потестю.
avatar
Потестил, полет нормальный.

Только я одному удивляюсь… тысячи людей многие годы пользовались JotX. Неужели ни у кого не возникло вопроса — " как динамически обновлять кол-во комментов"?

Или возникло, но просто лень писать было? психологически интересно.
avatar
Кстати, есть один нюанс, к-рый может приводить к непоняткам. Вот здесь и здесь у вас Ajax «цепляется» по селектору класса.

Я сегодня при CSS-оформлении формы менял классы, «родные» jot-классы убрал, и — прощай, Аякс. Где-нибудь бы написать, что такие-то классы нужно обязательно оставить, и что они не влияют на оформление, а только для функционала.
avatar
Исправил рейтинг и аякс, убрал оттуда классы.
avatar
Ещё пара багов. Точнее не баги, а из-за старости косячки.

1) Здесь и здесь хром выдавал предупреждение Mixed content, так как вызывается через HTTP.

После смены на HTTPS стал выдавать варнинг о возможной блокировке из-за кроссдоменного запроса через document.write.

Я пока выкрутился просто — создал в jot/plugins папку jquery/1.7/, в которую и скачал jquery, и поставил вызов оттуда.

2) Иногда Хром пишет о блокировке синхронного Аякс-запроса, видимо это из-за старого Jquery 1.7. Сменить на более новый и потестить пока не успел.

P.S. Сменил на 1.11 — вроде все Ок.
Комментарий отредактирован 2019-07-26 04:21:06 пользователем Aharito
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.