function createTeamFromUserCode($db, $password) { // comment for algorea mode return (object) array("success" => false, "message" => "Mot de passe invalide"); // transform "algorea-foo" into "foo" if (strlen($password) > 8) { $password = substr($password, strlen($password) - 8, 8); return commonLoginTeam($db, $password); } $stmt = $db->prepare("SELECT `ID` FROM `algorea_registration` WHERE `code` = ?"); $stmt->execute(array($password)); $row = $stmt->fetchObject(); if (!$row) { $stmt = $db->prepare("SELECT `ID` FROM `contestant` WHERE `algoreaCode` = ?"); $stmt->execute(array($password)); $row = $stmt->fetchObject(); if (!$row) { return (object) array("success" => false, "message" => "Mot de passe invalide"); } } $_SESSION["userCode"] = $password; if (!openGroup($db, "usr432144", false)) { // TODO: do not hardcode this return (object) array("success" => false, "message" => "Cette épreuve est actuellement fermée."); } else { // TODO: openGroup should return an object... unset($db); exit; } }
loadPublicGroups($db); } if ($action === "loadSessionOrPublicGroups") { if (isset($_SESSION["teamID"]) && !isset($_SESSION["closed"])) { loadSession($db); } else { loadPublicGroups($db); } } else { if ($action === "checkPassword") { if (!isset($_POST["password"])) { echo json_encode(array("success" => false, "message" => "Mot de passe manquant")); } else { $getTeams = $_POST["getTeams"]; $password = strtolower($_POST["password"]); if (!openGroup($db, $password, $getTeams)) { loginTeam($db, $password); } } } else { if ($action === "createTeam") { if (!isset($_POST["contestants"])) { echo json_encode(array("success" => false, "message" => "Informations sur les candidats manquantes")); } else { if (!isset($_SESSION["groupID"])) { echo json_encode(array("success" => false, "message" => "Groupe non chargé")); } else { createTeam($db, $_POST["contestants"]); } } } else {