select($login); //On parse les résultats $this->login = $data["login"]; $this->pwd = $data["pwd"]; $this->nom = $data["nom"]; $this->prenom = $data["prenom"]; $this->email = $data["email"]; $this->date_inscription = $data["dateinscription"]; } else { //Sinon, on à toutes les infos //Chargement des données $this->login = $login; $this->pwd = $password; $this->nom = $nom; $this->prenom = $prenom; $this->email = $mail; $this->date_inscription = time(); } //On ne charge pas les parties pour éviter la surcharge mémoire $this->games = NULL; } /** * @brief Retourne le login du joueur * @return string */ public function getLogin() { return $this->login; } /** * @brief Retourne le hash du mot de passe du joueur */ public function getPassword() { return $this->pwd; } /** * @brief Définie le mot de passe du joueur * @note la converion en hash MD5 est automatiquement réalisée */ public function setPassword($password) { $this->pwd = md5($password); } /** * @brief Obtient le nom du joueur * @return string */ public function getNom() { return $this->nom; } /** * @brief Définie le nom du joueur * @return $nom nom du joueur */ public function setNom($nom) { $this->nom = $nom; } /** * @brief Obtient le prénom du joueur * @return string */ public function getPrenom() { return $this->prenom; } /** * @brief Définie le prénom du joueur * @arg $prenom prénom du joueur */ public function setPrenom($prenom) { $this->prenom = $prenom; } /** * @brief Obtient les parties jouées par le joueur * @return tableau de game ou FALSE si rien */ public function getGames() { //Si il n'y a pas de données enregistrées, on fait une requête if ($this->games == NULL) { //On fait les inclusions nécessaire include_once "./dao/game_dao.php"; include_once "./metier/game.php"; //On instancie un nouvel objet $dao = new game_dao(); //On récupère les logiciel $result = $dao->selectByLogin($this->login); //Mise en place d'une variable pour sauvegarder les résultats $tmp = array(); $i = 0; //On parse les résultats foreach ($result as $row) { $tmp[$i] = new game($row["id"], $row["user_login"], $row["length"], NULL); } //On sauvegarde les résultats dans l'attribut spécifique $this->games = $tmp; } //On renvoie les résultats return $this->games; } /** * @brief Obtient l'email de l'utilisateur * @return string */ public function getMail() { return $this->email; } /** * @brief Définie l'email de l'utilisateur * @arg $mail email de l'utilisateur * @note la vérification se fera en javascript */ public function setMail($mail) { $this->email = $mail; } /** * @brief Obtient si l'objet est NULL * @return bool */ public function isNull() { if ($this->login != NULL) { return FALSE; } else { return TRUE; } } /* * @brief Sauvegarde un utilisateur dans la base de données */ public static function saveUser($user) { //On include le DAO pour savegarder l'utilisateur include_once './dao/user_dao.php'; //On instancie un nouvel objet $dao = new user_dao(); //On demande la sauvegarde if (!$dao->update($user)) { $dao->insert($user); } } public static function saveUserNoPassword($user) { //On include le DAO pour savegarder l'utilisateur include_once './dao/user_dao.php'; //On instancie un nouvel objet $dao = new user_dao(); //On demande la sauvegarde $dao->updateNoPassword($user); } public static function exist($login) { //On include le DAO pour savegarder l'utilisateur include_once './dao/user_dao.php'; //On instancie un nouvel objet $dao = new user_dao(); $tmp = $dao->select($login); if ($tmp == NULL) { return FALSE; } else { return TRUE; } } } ?>