/**
  * This method performs login functionality
  * @param LoginData $userLoginData
  * @throws CustomException if nickname not found or password does not match or other login error occurred
  */
 public function login(LoginData $userLoginData)
 {
     $userDAO = new UserDAO();
     if ($userDAO->doNicknameExistInDB($userLoginData->getNickname())) {
         if (password_verify($userLoginData->getPassword(), $userDAO->getUserPasswordFromDB($userLoginData->getNickname()))) {
             session_regenerate_id();
             $_SESSION['tastyRecipeUser'] = $userDAO->getUserIdFromDB($userLoginData);
         } else {
             throw new CustomException("Password do not match with username you entered! :( Try again!");
         }
     } else {
         throw new CustomException("We could not find the nickname you entered. :( Make sure you enter right nickname! ");
     }
 }