Редирект после авторизации на ту же страницу где и был посетитель

Главные вкладки

Аватар пользователя Avel_Mink Avel_Mink 25 июля 2010 в 19:44

Сразу не бейте ногами, так как на эту тему было уже много разговоров и обсуждений и я их все прочел, но так и не нашел решения маленького нюанса. Как мы знаем по умолчанию после авторизации посетителя перекидывает на его персональную страницу (что собственно не очень удобно). Но есть такой прекрасный модуль Login Destination (http://content-management-systems.info/drupal/project/login_destination), но, к сожалению, с помощью него мы можем перекинуть посетителя на статичную страницу (главная или др.). Мне же нужно чтобы после успешной авторизации посетитель оставался на той же странице, на которой он был до авторизации. То есть, например, аноним открыл какую-нить новость Х и вдруг решил залогиниться, нам надо чтоб и после авторизации он остался на этой новости Х. В вышеупомянутом модуле есть такая функция как URL и PHP -сниппеты. Я так подозреваю, что с помощью оных можно написать такую функцию, которая бы удовлетворяла мои требования, но я к сожаления далек от языков программирования, поэтому прошу помощи у Вас. Заранее спасибо

Комментарии

Аватар пользователя Avel_Mink Avel_Mink 25 июля 2010 в 22:08

"Sinkora" wrote:
/user/login?destination='Сюда вставляем текущую страницу'

мне надо чтоб динамически (ну то есть автоматически) подставлялась текущая страница, а не статически надо было ее каждый раз вставлять

Аватар пользователя Avel_Mink Avel_Mink 25 июля 2010 в 22:10

"RxB" wrote:
hook_user() и фсё получится

моя твоя не понимать, я вообще не знаком ни с php ни с java. Я знаю немного html и css. Изучать полностью язык ради одной функции нет ни желания ни времени. Распишите пожалуйста подробно, чо куда пихать

Аватар пользователя Sinkora Sinkora 25 июля 2010 в 22:37

"Avel_Mink" wrote:
мне надо чтоб динамически (ну то есть автоматически) подставлялась текущая страница, а не статически надо было ее каждый раз вставлять

Я это как раз и имел в виду.

Аватар пользователя Avel_Mink Avel_Mink 26 июля 2010 в 13:37

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

То есть например посетитель находиться на странице http://мой_сайт/news/newsХ
мне надо же php-сниппет, который возвращает адрес текущей ссылки, а именно часть "news/newsX"

Напишите кому не трудно. Буду благодарен

Аватар пользователя Виктор Степаньков ака RxB Виктор Степаньк... 26 июля 2010 в 20:50
function myfirstepsupermoduleidonotusesearchololololo_user($op, &$edit, &$account, $category = NULL){
  if($op == "login"){
      drupal_goto(drupal_get_destination());
}

}

как-то так, вставить в модуль myfirstepsupermoduleidonotusesearchololololo
Автор данного кусочка отказывается от всяких гарантий и не несёт ответственно за прямой и косвенный ущерб, в том числе и моральный, причинённый данным кусочком кода

Аватар пользователя Avel_Mink Avel_Mink 27 июля 2010 в 5:53

"Ромка" wrote:
Avel_Mink, чем вас модуль login_destination не устроил? Он умеет решать поставленную вами задачу.

каким образом ? я все настройки перелазил, без дополнительного сниппета нет редиректа на текущую страницу, в лучшем случае на главную или еще какую-то статичную страницу

Аватар пользователя Avel_Mink Avel_Mink 27 июля 2010 в 5:58

"RxB" wrote:
как-то так, вставить в модуль myfirstepsupermoduleidonotusesearchololololo

не совсем понял куда его вставлять ?
мне нужен код который возвращает текстовое значение текущей страницы пользователя