Алексей Яковлев

Алексей Яковлев

Был в сети 16 октября 2024, 16:17
Заказы не принимаю
вообще скобки такие есть, в скриптах счетчиков и TicketsConfig их не раз открывает, в других случаях не приметил и вроде все они закрываются. вставил код в пустой шаблон — заработал, так что видимо и впрямь скобка повисла где-то.
Уф, не делайте так люди, а если сделали — ищите по ftp в папке cache/system_settings файл настроек и правьте косяк. Помогло. А началось все с того, что код fenom
{if $_modx->user.id > 0}
    Привет, {$_modx->user.fullname}!
{else}
    Вам нужно авторизоваться.
{/if}
так и выводился, сплошным текстом. pdoTools обновлен, в настройках все про fenom успел повключать, а он не сработал.
О, fenom! Не дорос я еще. Мне б такую же конструкцию, только
if юзер залогинен
	if юзер из группы "Авторы"
		чанк "привет"
	/if
else
	chunk "логинся"
/if
Только в виде, который я могу в шаблон документа вставить, ну или в виде сниппета, со сниппетами вроде научился )
Оказывается пора осваивать группы ресурсов. Сделал группу ресурсов с правами для группы авторов и добавил в нее страницу. Анонимам она не видна, залогинившимся юзерам из группы видна. Жить можно. В идеале я представляю себе надпись во фронтенде «опубликовать текст», которая видна только залогиненным юзерам из нужной группы, а всем остальным, допустим выводится пустой чанк. Ну а за надписью скрывается TicketForm, опять же, доступный только правильным авторам. Но как выводить чанк с такой ссылкой в зависимости от авторизованности юзера? Пока не понятно.
и все же, а если я делаю специальные тикеты, где допустим значение createdby и alias одинаковое, то как мне выбрать с помощью getTickets только такие тикеты? Подскажите, как правильно написать условие для &where?

[[!getTickets?
                    &parents=`596`
                    &tpl=`sidebarAuthors.tpl`
                    &where=`{"createdby":"alias"}`
                ]]
Если я правильно понял, вышеозначенное делает параметр &users в вызове getTickets. Мне бы как-то правильно для getTickets в шаблоне сопоставить какой-нибудь признак юзера (fullname или id), которого выбрал getUsers, c параметром искомой страницы (со списком текстов юзера). Я думал справиться парой fullname=pagetitle или юзер.id = страница.menutitle например. Но чего-то не работает никак, вот и думаю, то ли в синтаксисе дело, то ли путаница. вроде все есть у modx и pdotools а как взять не знаю…
И вот еще заковыка. Пока про выборку юзеров никто не ответил, пытаюсь разобраться с остальным. Вызываю список юзеров
[[!pdoUsers?
                    &parents=`596`
                    &showInactive=`1`
                    &tpl=`sidebarAuthors.tpl`
                    &limit=`50`
                ]]
и вот бьюсь над чанком шаблона, чтобы в нем для ссылки вылавливалась страница, у которой pagetitle совпадает с fullname автора (то есть пытаюсь как могу определить страницу автора со списком текстов в секции). чанк шаблона в общих чертах такой:
<a href="[[~[[!getTickets? &user=`[[+id]]` &parents=`[[+parent]]` &limit=`1` &tpl=`@INLINE {{+id}}`]]]]" title="[[+fullname]]"><img src="[[+photo]]"></a>
Вроде бы надо лишь добавить &where pagetitle найденной страницы = fullname определенного pdoUsers автора, но то ли я в синтаксисе косячу, то ли в самой логике происходящего… Подскажите пожалуйста, как правильно или может проще?
Возможно ли, в таком случае, вызовы HybridAuth и haProfile совместить на одной странице? Как-то хитро вызывать haProfile? Или где-то что-то исправить/настроить? Может надо haProfile вызывать в чанке для уже залогиненного юзера, а не сразу, как я пытался поначалу… Это ж уже другое дело! )
Ура! Юрий дело сказал, а меня только что осенило. За вызовом [[!HybridAuth]] у меня вскоре шел [[!haProfile]]. Попробовал вызов [[haProfile]] — не помогло, а вот когда убрал вызов вовсе — ЗАРАБОТАЛО ВСЕ КАК НАДО. Значит ли это, что вызывать и редактировать профиль надо строго на отдельной странице, где нет комментариев?