Доступ по странице по паролю

Добрый день, знатоки ModX!
Возникла задача закрывать доступ к определенной странице от определенной группы людей, то есть от обычных пользователей.
Как это лучше организовать? Человек регистрируется и получает доступ или зайдя на закрытую страницу он вводит некий пароль после ввода которого его перенаправляет на уже открытую страницу.
Интересует связка каких плагинов и сниппетов может такое осуществить.
Пробовал вход организовать через FormLister, но выводилась ошибка Неверное имя пользователя или пароль.
Заранее премного благодарен!

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

avatar
Обычно для этого делается регистрация пользователей на сайте.
Зарегистрировавшись, они попадают в группу например «Registered», и ваша страница должна быть доступна этой группе.

А как это все делать — на эту тему много материалов было, ну к примеру вот, вот, вот и вот.
avatar
Спасибо. В принципе я так и пытался делать. Проблема возникала с авторизацией в FormLister. Неверное имя пользователя или пароль. Может это связано с тем, что я пользователя создавал без регистрации в админке?
avatar
«В админке» могут авторизовываться пользователи типа «manager», а веб-юзеры там авторизовываться не могут. В Эво есть 2 типа пользователей — менеджеры и веб-юзеры.

Или вообще что вы имели в виду под «я пользователя создавал без регистрации в админке»? не понял.
avatar
Я в админке создал обычного пользователя. И пытался авторизироваться с его доступами через DormLister. В итоге вывелась ошибка. Тоже самое я проделывал и с обычным админом. Может обычному пользователя группу назначить?
avatar
Я не понимаю, что такое «обычный» пользователь. Нет такого в терминологии MODx, да и вообще нет.

Вам нужно подробнее почитать про «Группы пользователей», «Группы ресурсов» и «Связи групп пользователей и ресурсов».
avatar
Обычный пользователь — это грубо говоря, пользователь, у которого нет доступа к административной части сайта.
Про группы я читал. Меня больше всего беспокоит то, что я не смог залогиниться через Form Lister.
avatar
Вот здесь все про Formlister
docs.evo.im/04_extras/formlister.html
А здесь готовые примеры
docs.evo.im/04_extras/formlister/500_examples.html
Вам нужно:
1. Создать группу пользователей, например, web.
2. Создать группу ресурсов, например, тоже web.
3. Связать их между собой.
4. Пользователю, которого вы создали в админке, нужно указать группу web на вкладке Права пользователей.
5. У ресурсов тоже появится дополнительная вкладка Права доступа. У Вашей скрытой страницы (которая только для зарегистрированных) на этой вкладке тоже нужно указать группу ресурсов web.
6. И еще потребуется на сайте страница с ошибкой 403 — на эту страницу будут перебрасываться незарегистрированные (зарегистрированные, но не авторизованные) пользователи при попытке посетить скрытую для них страницу.
avatar
Именно так :) только мне лень было все расписывать так подробно.
avatar
Методом тыка, понял, что нужно создать web-пользователя ) А как сделать так, чтобы можно было в любой момент разлогиниться? Нужно делать проверку какую-то или же страницу Личный кабинет, что-то вроде такого?
avatar
Я же не знаю ваших задач. Если по-хорошему — нужно создавать личный кабинет, что бы пользователь мог сам и регистрироваться, и иметь свой профиль, и много чего еще вплоть до удаления своего профиля с сайта.

Но если предусмотрено, что пользователей будет создавать админ сайта сам и им регистрация не нужна, как и все прочее, то для разлогинивания можно просто поставить сниппет LoginWidget, смотрите здесь в комментариях. Обратите внимание, что должен быть подключен плагин userHelper (по-умолчанию он отключен).

По созданию личного кабинета можете еще посмотреть здесь и здесь.
avatar
Супер. Благодаря таким людям как Вы и Aharito начинаешь понимать многие вещи! Спасибо огромное! Остался поистине мелкий вопрос. Как скрыть не всю страницу, а, например, чанк, какую-то строку? Я так понимаю, нужно копать в сторону Personalize?
avatar
Можно тем же сниппетом LoginWidget — у него как раз два чанка: один для зарегистрированного пользователя, второй для НЕ зарегистрированного пользователя.
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.