function insertNewPlayer($name, $score, $game) { $Joueur = array("_id" => getNextID(), "pseudo" => $name, "jeux" => array(array("scores" => $score, "name" => $game, "badges" => array()))); returnConnection()->Maets->Joueurs->insert($Joueur); } $urlExploded = explode("/", $_SERVER['REQUEST_URI']); if (count($urlExploded) == 3 && strtolower($urlExploded[1]) == 'scores') { $nomDuJeu = $urlExploded[count($urlExploded) - 1]; $data = json_decode(file_get_contents("php://input"), true); $user = $data['player']; $score = $data['score']; //$user = '******'; //$score = 665; $result = returnConnection()->Maets->Joueurs->findOne(array("pseudo" => $user)); if (is_null($result)) { insertNewPlayer($user, $score, $nomDuJeu); } else { $scoreJeu = 0; $lesJeux = $result['jeux']; if (!is_null($lesJeux)) { foreach ($lesJeux as $jeu) { if ($jeu['name'] == $nomDuJeu) { $scoreJeu = $jeu['scores']; } } } if (!in_array($nomDuJeu, $result)) { if ($scoreJeu < $score) { returnConnection()->Maets->Joueurs->update(array("pseudo" => $user, "jeux.name" => $nomDuJeu), array('$set' => array("jeux.\$.scores" => $score))); } } else {
function insertNewPlayer($name, $badge, $game) { $Joueur = array("_id" => getNextID(), "pseudo" => $name, "jeux" => array(array("scores" => 0, "name" => $game, "badges" => array(array("name" => $badge))))); returnConnection()->Maets->Joueurs->insert($Joueur); } $urlExploded = explode("/", $_SERVER['REQUEST_URI']); if (count($urlExploded) == 3 && strtolower($urlExploded[1]) == 'stats') { $nomDuJeu = $urlExploded[count($urlExploded) - 1]; $data = json_decode(file_get_contents("php://input"), true); $user = $data['player']; $badge = $data['badge']; $player = getUser($user); if (is_null($player)) { //Si l'utilisateur n'existe pas, on insert echo 'insert'; insertNewPlayer($user, $badge, $nomDuJeu); } else { //Si l'utilisateur existe, on regarde si il a déjà joué au jeu $lesJeux = $player['jeux']; $trouve = false; if (!is_null($lesJeux)) { foreach ($lesJeux as $jeu) { if ($jeu['name'] == $nomDuJeu) { $trouve = true; } } } if (!$trouve) { echo 'ajout jeu et badge'; //Si le joueur a jamais jouer au jeu alors on ajoute le badge associé returnConnection()->Maets->Joueurs->update(array("pseudo" => $user), array('$push' => array("jeux" => array("scores" => 0, "name" => $nomDuJeu, "badges" => array(array("name" => $badge))))));