We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 1208
    • 79 Posts
    Вопрос такой. Есть сайт, у него есть каталог "secret", к которому должны иметь доступ только залогиненые пользователи. всех же прочих должно пинать на главную страницу, ибо нефиг шарится по чужому нутру) Есть вариант прописывать при авторизации Куки и проверять по ним, но как в макете определить, является ли данная страница частью скрытого контента или нет.
    Да и наверняка это какими-то уже готовыми решениями делается...
    Прошу прощения за возможный боян.

    апд. нашел вариант с группами пользователей и контента. Теперь вопросб подойдет ли снипп Weblogin для организация авторизации пользователей или лучше писать свое?
    • Quote from: almaron at Mar 16, 2010, 06:45 AM

      апд. нашел вариант с группами пользователей и контента. Теперь вопросб подойдет ли снипп Weblogin для организация авторизации пользователей или лучше писать свое?
      Подойдет. Но лучше писать свое smiley
        Разработка сайтов и программных модулей на MODX.
        Опыт работы на MODx с 2005 года. Высокое качество.
        Компания Baltic Design Colors: http://www.bdcolors.ru.
        • 1208
        • 79 Posts
        Не могли бы вы обозначить основные моменты такого скрипта? Возможно, какие-то функции API, чтобы не писать в лоб то, что система и так позволяет сделать?
        Я посмотрел код WebLogin, но просто раз уж писать самому, то копаться в чужом коде только себе дороже.
        Если вам не трудно конечно.
        • Quote from: almaron at Mar 16, 2010, 10:49 AM

          Не могли бы вы обозначить основные моменты такого скрипта? Возможно, какие-то функции API, чтобы не писать в лоб то, что система и так позволяет сделать?
          Я посмотрел код WebLogin, но просто раз уж писать самому, то копаться в чужом коде только себе дороже.
          Если вам не трудно конечно.
          Ну я бы все равно в первую очередь попробовал готовый сниппет в действии. Если уж что-то не устраивает, тогда бы искал другие решения (в том числе - делать свое).

          А основные моменты... ну, если коротко, то нужно организовать: 1) регистрация пользователей, 2) авторизация пользователей, 3) восстановление пароля. Это самые-самые важные моменты.

          Можно еще добавить сюда, например, подтверждение регистрации по мейлу и редактирование личного профиля на сайте.

          Работы на самом деле немало, поэтому реально заранее подумайте, сможете ли охватить все, достаточно ли опыта и времени. Ну и wiki Вам будет в помощь http://wiki.modxcms.com/index.php/API:DocumentParser smiley
            Разработка сайтов и программных модулей на MODX.
            Опыт работы на MODx с 2005 года. Высокое качество.
            Компания Baltic Design Colors: http://www.bdcolors.ru.
            • 1208
            • 79 Posts
            Спасибо за терпеливость.
            Нет, никакого восстановления пароля, никакого редактирования личных данных и прочего. максимум что нужно - форма авторизации по логину/паролю и регистрации, с которой данные будут уходить на e-mail админу и в базу.
              • 1208
              • 79 Posts
              И все таки решил писать самостоятельно. Скажите, что нужно выполнить, чтобы modx понял, что страницу запрашивает авторизованный пользователь? Эта инфа должна хранится в COOKie или в сессии или еще как-то? Или это реализуется средствами API? Прошу еще раз простить за возможно дилетантские вопросы, но просто чего-то источники точного ответа не дают.
              • Quote from: almaron at Mar 17, 2010, 12:33 PM

                Эта инфа должна хранится в COOKie или в сессии или еще как-то?
                Ну раз Вы решили делать все самостоятельно, то Вы и определяете все механизмы. Но обычно данные хранятся в сессии. В куки можно класть какой-то уникальный идентификатор, который позволяет определять пользователя без повторной авторизации. Но это, вобщем-то, прописные истины smiley
                  Разработка сайтов и программных модулей на MODX.
                  Опыт работы на MODx с 2005 года. Высокое качество.
                  Компания Baltic Design Colors: http://www.bdcolors.ru.
                  • 1208
                  • 79 Posts
                  Тогда как система сможет определить, запрашивает ли закрытую страницу зарегистрированный и залогиненный web-пользователь или простой мимо проходящий?
                  или это на всех защищенных страницах придется вписывать вручную. Но опять же, если пользоваться $modx->IsLogedIn, то она вряд ли с потолка данные берет.
                  • Quote from: almaron at Mar 17, 2010, 01:58 PM

                    Тогда как система сможет определить, запрашивает ли закрытую страницу зарегистрированный и залогиненный web-пользователь или простой мимо проходящий?
                    или это на всех защищенных страницах придется вписывать вручную. Но опять же, если пользоваться $modx->IsLogedIn, то она вряд ли с потолка данные берет.
                    Могу ошибаться, но по-моему проверяется значение переменной сессии $_SESSION[’webInternalKey’]. В нем хранится ID веб-пользователя.
                      Разработка сайтов и программных модулей на MODX.
                      Опыт работы на MODx с 2005 года. Высокое качество.
                      Компания Baltic Design Colors: http://www.bdcolors.ru.
                      • 1208
                      • 79 Posts
                      Возвращаясь к проблеме. Написать собственный обработчик не получилось. Видимо, не получается у меня что-то, что должно бы. Поставил снова WebLogin, следую руководству, пароль-логин спрашивает, обрабатывает, вроде, даже на страницу нужную пинает, но доступа к закрытому содержимому не дает.

                      Стал выяснять в чем дело (путем вывода данных сессии), ничерта там не добавилось. Мож я чего не так делаю опять? подскажите кто-нибудь плиз!
                      Чанк формы выглядит так:
                      <form method="post" name="loginfrm" action="[+action+]"> 
                          	<input type="text" class="tt" name="username" tabindex="1"  value="[+username+]" onkeypress="return webLoginEnter(document.loginfrm.password);"><br> 
                             	<input type="password" class="tt" name="password" tabindex="2"  onkeypress="return webLoginEnter(document.loginfrm.cmdweblogin);" value=""><br> 
                           	<input type="submit" class="bb" value="Войти" name="cmdweblogin">    
                        </form> 


                      Вызов Weblogin делается так:
                      [[WebLogin? &loginhomeid=`2,1` &tpl=`weblogin_tpl`]]

                      2 - секретная страница (при вводе правильных данных ссылка идет на нее, но контент грузится с главной)
                      1 - главная

                      Что еще там настроить надо?