public HttpResponseMessage Post([FromBody] AuthenticationRecord userAuthData) { try { if (Authenticate(userAuthData) == true) //user istnieje, haslo sie zgadza { var user = _unitOfWork.UsersRepository.GetUserByEmail(userAuthData.Email); if (TokenBase.VerifyUserToken(user) == true) //jesli token juz istnieje i jest ważny - zwracamy go { var token = TokenBase.GetUserToken(user); return(Request.CreateResponse(HttpStatusCode.OK, token.GetString)); } //token nie istnieje - tworzymy go i zwracamy return(Request.CreateResponse(HttpStatusCode.OK, TokenBase.AddNewToken(user).GetString)); } else { HttpError err = new HttpError("Authentication Failed!"); return(Request.CreateResponse(HttpStatusCode.Unauthorized, err)); } } catch (Exception) { HttpError err = new HttpError("Error while authentication"); return(Request.CreateResponse(HttpStatusCode.InternalServerError, err)); } }