Exemple #1
0
 public static function startNewSession($username, $password, $gcm_id)
 {
     $success = true;
     //test if the username and password are correct
     if (user::isLogin($username, $password)) {
         //retrieve user info
         $user_info = user::getUserByUsername($username);
         $e = user::setGCM($user_info['id'], $gcm_id);
         $success = $success && $e;
         //check if user has existing session:
         if (session::does_user_have_session($user_info['id'])) {
             //remove the session
             $session_info = session::get_last_session_for_user_id($user_info['id']);
             session::delete_session_by_id($session_info['id']);
         }
         //generate a unique hash
         $newHash = md5(random::generateString(10));
         while (!session::is_unique_hash($newHash)) {
             $newHash = md5(random::generateString(10));
         }
         //create a session
         $res = session::add_new_session($user_info['id'], $newHash, "0");
         $success = $success && $res;
         if (!$success) {
             Execute::$lastErrorMessage = "failed to add new changes to database";
             Report::error(__METHOD__ . "," . __LINE__, "failed to new cahnges to database");
         }
         return $success;
     } else {
         Execute::$lastErrorMessage = "trying to login with an incorrect username or password";
         Report::warning(__METHOD__ . "," . __LINE__, "trying to login with an incorrect username or password");
         return false;
         //trying to log in with an incorrect username or password
     }
 }
Exemple #2
0
 public static function salt()
 {
     return random::generateString(5);
 }