diff --git a/bureau/class/m_mem.php b/bureau/class/m_mem.php index c1872a84..3e06853c 100644 --- a/bureau/class/m_mem.php +++ b/bureau/class/m_mem.php @@ -237,7 +237,7 @@ class m_mem { * @return boolean TRUE si la session a bien été détruite, FALSE sinon. */ function del_session() { - global $db,$session,$user,$err,$cuid; + global $db,$session,$user,$err,$cuid,$classes; $err->log("mem","del_session"); $session=addslashes($session); setcookie("session","",0,"/"); @@ -263,6 +263,13 @@ class m_mem { $cuid=$db->f("uid"); $db->query("delete from sessions where sid='$session';"); $err->error=0; + + # Invoker le logout dans toutes les autres classes + foreach($classes as $c) { + if (method_exists($GLOBALS[$c],"alternc_del_session")) { + $GLOBALS[$c]->alternc_del_session($dom); + } + } return true; } diff --git a/bureau/class/m_mysql.php b/bureau/class/m_mysql.php index 433663ab..f65ae908 100644 --- a/bureau/class/m_mysql.php +++ b/bureau/class/m_mysql.php @@ -390,6 +390,14 @@ class m_mysql { return true; } + /* ----------------------------------------------------------------- */ + /** Hook function called when a user is logged out. + * We just remove the cookie created in admin/sql_admin.php + */ + function alternc_del_session() { + setcookie("REMOTE_USER",""); + setcookie("REMOTE_PASSWORD",""); + } /* ----------------------------------------------------------------- */ /**