Beispiel #1
0
 static function authentificationPourRtorrent($keyconnexion)
 {
     if (!is_null($keyconnexion)) {
         $u = \core\Memcached::value($keyconnexion, "user");
         if (is_null($u)) {
             $u = \model\mysql\Utilisateur::authentifierUtilisateurParKeyConnexion($keyconnexion);
             if ($u) {
                 \core\Memcached::value($u->keyconnexion, "user", $u, 60 * 2);
             }
         } else {
             $u = $u->keyconnexion === $keyconnexion ? $u : false;
             if (is_bool($u)) {
                 $u = \model\mysql\Utilisateur::authentifierUtilisateurParKeyConnexion($keyconnexion);
                 if ($u) {
                     \core\Memcached::value($u->keyconnexion, "user", $u, 60 * 2);
                 }
             } else {
                 \core\Memcached::value($u->keyconnexion, "user", $u, 60 * 2);
             }
         }
         \config\Conf::$user["user"] = $u;
         if ($u && !is_null($u)) {
             setcookie("keyconnexion", $u->keyconnexion, strtotime('+1 days'), "/");
             $userscgi = \model\mysql\Rtorrent::getUserscgiDeUtilisateur($u->login);
             if (!$userscgi) {
                 throw new \Exception("Aucun ports scgi sur " . HOST);
             }
             \config\Conf::$userscgi = $userscgi[0]->userscgi;
         }
     }
 }
Beispiel #2
0
 function getKeyconnexion()
 {
     $u = null;
     if (isset($_COOKIE["keyconnexion"])) {
         $u = \core\Memcached::value($_COOKIE["keyconnexion"], "user");
         if (is_null($u)) {
             $u = \model\mysql\Utilisateur::authentifierUtilisateurParKeyConnexion($_COOKIE["keyconnexion"]);
             if ($u) {
                 \core\Memcached::value($_COOKIE["keyconnexion"], "user", $u, 60 * 5);
             }
         } else {
             $u = $u->keyconnexion === $_COOKIE["keyconnexion"] ? $u : false;
         }
         $this->set("seedbox", Rtorrent::getUserscgiDeUtilisateur(\config\Conf::$user["user"]->login));
     }
     if ($u && !is_null($u)) {
         \core\Memcached::value($_COOKIE["keyconnexion"], "user", $u, 60 * 5);
         \config\Conf::$user["user"] = $u;
         $this->set("key", $u->keyconnexion);
     } else {
         $u = \model\mysql\Utilisateur::authentifierUtilisateurParMotDePasse($_REQUEST["login"], $_REQUEST["motdepasse"]);
         if (is_object($u)) {
             $this->set("key", $u->keyconnexion);
             if (!\core\Memcached::value($u->keyconnexion, "user", $u, 60 * 5)) {
                 trigger_error("Impossible de mettre des données dans memcached");
             }
             //setcookie("login", $u->login, strtotime('+1 days'), "/");
             setcookie("keyconnexion", $u->keyconnexion, strtotime('+1 days'), "/");
             \config\Conf::$user["user"] = $u;
         }
     }
     if (is_null(\config\Conf::$user["user"])) {
         $this->set("erreur", 1);
     } else {
         $this->set("seedbox", \model\mysql\Rtorrent::getRtorrentsDeUtilisateur(\config\Conf::$user["user"]->login));
     }
 }