modx-pro / Tickets

Tickets system for MODX Revolution
35 stars 51 forks source link

При $allowGuest=1 не было возможности использовать разные шаблоны комментариев #73

Closed andreizanik closed 10 years ago

andreizanik commented 10 years ago

При $allowGuest=1 не было возможности использовать разные шаблоны комментариев для авторизированных пользователей и гостей. !empty($allowGuest) всегда был тру и поэтому $tpl всегда равен $tplCommentAuth. Предполагается что если гостям разрешено комментировать, то ответить они могут и им надо показывать тот же самый шаблон что и авторизированным. Введение нового параметра добавит возможности использовать разные шаблоны при allowGuest=1, без вмешательство в код сниппета. Если же $allowGuest=0, то параметр anotherTemplat не имеет смысла, и поэтому в условии принудительно устанавливаем $anotherTemplate = 0, независимо от того передан ли сниппету anotherTemplate.

bezumkin commented 10 years ago

У пользователей, которые могут писать ответы - один шаблон комментариев, у которых не могут - другой.

Зачем нужен еще третий?

andreizanik commented 10 years ago

Если гости могут писать комментарии они автоматически получают возможность отвечать на чужие комментарии, потому что они видят такой же шаблон как авторизированные пользователи. Если не нужно что бы гости имели возможность писать ответы может понадобиться третий шаблон. Так же при $allowGuest=1 становится бессмысленно передавать параметр tplCommentGuest, т.к. он просто игнорируется.

bezumkin commented 10 years ago

Если гости могут писать комментарии они автоматически получают возможность отвечать на чужие комментарии

Естественно. Так и будет.

Если не нужно что бы гости имели возможность писать ответы может понадобиться третий шаблон.

А если захочется, чтобы гости могли писать ответы только по пятницам и в третьем уровне вложения - еще 10 чанков сделать?

Есть фильтры ввода-вывода, есть CSS, есть события перед созданием комментария. Все можно настроить, при желании.

Так же при $allowGuest=1 становится бессмысленно передавать параметр tplCommentGuest, т.к. он просто игнорируется.

Естественно, если гостю разрешено комментировать, то этот чанк использоваться не будет. А если запрещено - будет.

Для того и нужны условия, чтобы проверить и определить, как работать.