X-Git-Url: http://git.dj3c1t.com/?a=blobdiff_plain;f=mw%2Fapp%2Fmods%2Fusers%2Fidentification.php;h=db3b68c2d6dd4f609a0c7e9c2df9c01a897f7594;hb=5dfe5e84a7007ddd9737707ce15f0155e6415066;hp=c7bd19a15ebc41a0909f6c69616a2d44671ccf58;hpb=568c721d53fb84b5e9b3facb2addccaf6deb35f9;p=mtweb diff --git a/mw/app/mods/users/identification.php b/mw/app/mods/users/identification.php index c7bd19a..db3b68c 100644 --- a/mw/app/mods/users/identification.php +++ b/mw/app/mods/users/identification.php @@ -6,27 +6,62 @@ } function login(&$env){ - $data = $env->data(); - if($data->login(trim($_POST['login']), trim($_POST['pass']))){ - $env->redirect( - isset($_POST["from"]) ? urldecode($_POST["from"]) : $env->url(), - "Vous êtes maintenant identifié en tant que ".$_POST['login'] - ); + if($_POST){ + $data = $env->data(); + if($data->login(trim($_POST['login']), trim($_POST['pass']))){ + $redirect_action = "index"; + $redirect_params = array(); + if(isset($_SESSION["action_after_login"])){ + $redirect_action = $_SESSION["action_after_login"]; + unset($_SESSION["action_after_login"]); + } + if(isset($_SESSION["params_after_login"])){ + if(!($redirect_params = @unserialize($_SESSION["params_after_login"]))) $redirect_params = array(); + unset($_SESSION["params_after_login"]); + } + $env->redirect( + $env->url($redirect_action, $redirect_params), + "Vous êtes maintenant identifié en tant que ".$_POST['login'] + ); + } + else $env->message("Idantifiants incorrects"); } - else $env->message("Identifiants incorrects"); } function logout(&$env){ $data = $env->data(); if($data->logout()){ $env->redirect( - $env->url(), - "Vous n'êtes plus identifié sur le site" + $env->url("users/identification/check_logout"), + "Deconnexion en cours...", + 0 ); } else $env->message("Erreur lors de la deconnection. il se peut que vous soyez encore identifié"); } + function check_logout(&$env){ + if($env->user()){ + $env->erreur("deconnexion impossible. vous êtes toujours identifié sur le site."); + } + else{ + $redirect_action = "index"; + $redirect_params = array(); + if(isset($_SESSION["action_after_logout"])){ + $redirect_action = $_SESSION["action_after_logout"]; + unset($_SESSION["action_after_logout"]); + } + if(isset($_SESSION["params_after_logout"])){ + if(!($redirect_params = @unserialize($_SESSION["params_after_logout"]))) $redirect_params = array(); + unset($_SESSION["params_after_logout"]); + } + $env->redirect( + $env->url($redirect_action, $redirect_params), + "Vous n'êtes plus identifié sur le site" + ); + } + } + } ?> \ No newline at end of file