buildGlobal($args); } elseif ($type == "cat") { //On a demandé un objet pour une catégorie $this->buildCat($args); } } /** * @brief Fonction d'auto construction pour un classement global * @arg $args tableau contenant seulement le login */ public function buildGlobal($args) { //Inclusion des fichiers nécessaire include_once 'dao/point_manager.php'; include_once 'metier/user.php'; include_once "dao/dao.php"; include_once "dao/bdd.php"; //Mise en place des données $login = $args["login"]; //Chargement des données utilisateur $this->user = new user($login); //Chargement de toutes les parties du joueur $games = point_manager::getGamesByLogin($login); //On établit le nombre total de point pour le joueur ainsi que le temps //total $this->point = 0; $this->length = 0; //Pour toutes les parties, on additionne les points foreach ($games as $game) { $this->point+= point_manager::getGamePoint($game[0]); $length = point_manager::getLengthByGame($game); $this->length += $length[0]; } //On calcul le nombre total de partie jouées $this->nb_game = count($games); } /* * @brief Fonction d'autoconstruction pour un classement par catégorie * @arg $args tableau contenant le login et la catégorie */ public function buildCat($args) { //Inclusion des fichiers nécessaires require_once 'metier/user.php'; require_once 'dao/point_manager.php'; require_once 'dao/bdd.php'; //Mise en place des variables standard pour la fonctions $login = $args["login"]; $cat = $args["cat"]; //On crée un nouvel utilisateur $this->user = new user($login); //Chargement de toutes les parties selon la catégorie du joueur $games = point_manager::getGameByLoginByCat($login, $cat); //Initialisation des variables locales de l'objet $this->length = 0; $this->nb_game = 0; $this->point = 0; //On boucle pour chaque parties foreach ($games as $game) { $this->point+=point_manager::getGamePoint($game["id"]); // $this->length+= point_manager::getLengthByGame($game["id"]); } //Mise en place du nombre de parties $this->nb_game = count($games); } /** * @brief Obtient l'utilisateur courant * @return objet user */ public function getUser() { return $this->user; } /** * @brief Obtient le nombre de point * @return int */ public function getPoint() { return $this->point; } /** * @brief Obtient la durée d'une partie * @return int (temps en milliseconde) */ public function getLength() { return $this->length; } /** * @brief Obtient le nombre de parties jouées * @return int */ public function getNbGame() { return $this->nb_game; } } ?>