示例#1
0
 public static function login($request, $context)
 {
     //print_r($request);
     if (!empty($request['user']) && !empty($request['pass'])) {
         $req = utilisateurTable::getUserByLoginAndPass($request['user'], $request['pass']);
         //print_r($req);
         if (!empty($req)) {
             $context->setSessionAttribute('is_logged', 1);
             $context->setSessionAttribute('id', $req[0]['id']);
             context::redirect("././ApiTest.php?action=user");
         }
         return context::ERROR;
     }
     return context::ACCESS;
 }
示例#2
0
 public static function params($request, $context)
 {
     try {
         $u = context::getSessionAttribute("utilisateur");
         // Enregistrer le profil public
         if (key_exists("enregistrerProfil", $request)) {
             $u->statut = htmlspecialchars($request["statut"], $flags = ENT_QUOTES | ENT_HTML401);
             $u->prenom = $request["prenom"];
             $u->nom = $request["nom"];
             if (key_exists("avatar", $_FILES) && $_FILES["avatar"]["size"] > 0) {
                 $path = mainController::uploadImage("avatar", mainController::REPERTOIRE_AVATAR, $u->id);
                 if (empty($path)) {
                     // Si on n'arrive pas à stocker l'image, on ne s'arrête pas.
                     context::setSessionAttribute("erreur", new Exception("Il y a eu une erreur pour télécharger l'avatar."));
                 } else {
                     $u->avatar = $path;
                 }
             }
             if (is_null($u->save())) {
                 throw new Exception("Il y a eu une erreur pour enregistrer le profil public.");
             } else {
                 context::setSessionAttribute("succes", "Le profil à bien été modifié.");
                 return context::SUCCESS;
             }
         } else {
             if (key_exists("enregistrerSecurite", $request)) {
                 // On contrôle le mot de passe actuel
                 $returnLogin = utilisateurTable::getUserByLoginAndPass($u->identifiant, $request['passwordActuel']);
                 if (is_null($returnLogin)) {
                     throw new Exception("Le mot de passe actuel n'est pas correct!");
                 }
                 // On contrôle que les nouveaux mot de passe soient égales et pas vides
                 if (empty($request["passwordNouveau"])) {
                     throw new Exception("Le nouveau mot de passe est vide.");
                 }
                 if ($request["passwordNouveau"] != $request["passwordRepete"]) {
                     throw new Exception("Les nouveaux mots de passe ne sont pas égales.");
                 }
                 // Enfin, on stocke le nouveau mot de passe dans la base
                 $u->pass = sha1($request["passwordNouveau"]);
                 if (is_null($u->save())) {
                     throw new Exception("Il y a eu une erreur pour enregistrer les paramètres de sécurité");
                 } else {
                     context::setSessionAttribute("succes", "Le nouveau mot de passe à bien été modifié.");
                     return context::SUCCESS;
                 }
             } else {
                 return context::SUCCESS;
             }
         }
     } catch (Exception $e) {
         context::setSessionAttribute("erreur", $e);
         return context::ERROR;
     }
 }