function login($login, $password, &$session = null) { $args = array("login" => $login); $query = "\tSELECT *\n\t\t\t\t\tFROM accounts\n\t\t\t\t\tJOIN persons ON acc_person_id = per_id\n\t\t\t\t\tLEFT JOIN ticketers ON acc_id = tic_account_id\n\t\t\t\t\tWHERE (acc_login = :login OR per_mail = :login) AND 1 = 1 "; $statement = $this->pdo->prepare($query); $statement->execute($args); $results = $statement->fetchAll(); foreach ($results as $index => $line) { foreach ($line as $key => $value) { if (is_int($key)) { unset($results[$index][$key]); } } } if (count($results)) { $account = $results[0]; // error_log($account["acc_password"] . " vs " . AccountBo::computePassword($password)); if ($account["acc_password"] == AccountBo::computePassword($password)) { if (is_array($session)) { SessionUtils::login($session, $account); } return $account; } } return false; }
require_once "engine/bo/UserBo.php"; require_once "engine/utils/SessionUtils.php"; $data = array(); $userBo = UserBo::newInstance($config); $user = $userBo->getUser(); $password = $_REQUEST["password"]; //if ($user["password"] == $password) { if ($userBo->checkRootPassword($password)) { if ($_REQUEST["newPassword"]) { if ($_REQUEST["newPassword"] != $_REQUEST["confirmNewPassword"]) { $data["status"] = "renew_password"; $data["message"] = "notSameNewPassword"; } else { $userBo->setPassword($password, $_REQUEST["newPassword"]); $data["status"] = "ok"; SessionUtils::login($_SESSION); } } else { if ($password == $config["parpaing"]["default_password"]) { $data["status"] = "renew_password"; $data["message"] = "defaultPassword"; } else { $data["status"] = "ok"; SessionUtils::login($_SESSION); } } } else { $data["status"] = "ko"; $data["message"] = "badPassword"; } echo json_encode($data);