public IHttpActionResult Post(tmpCreateToken obj)
{
ILogger _logger = new Logger();
_logger.Log("Post TokenController. Object tmpCreateToken initial: " + obj.Token, "api", 3);
if (obj.Password == PasswordString)
{
Core.DomainModel.Profile profile = _profileRepo.Get(x => x.Id == obj.ProfileId).FirstOrDefault();
if (profile != null)
{
//Create viewmodel and encrypt it
TokenViewModel token = new TokenViewModel();
token.Status = 2;
token.GuId = obj.GuId;
token.TokenString = obj.Token;
token = Encryptor.EncryptToken(token);
bool anyToken = _tokenRepo.Get(x => x.GuId == token.GuId).Any();
if (!anyToken)
{
//Map to datamodel, and add profileid
Token mToken = AutoMapper.Mapper.Map<Token>(token);
mToken.ProfileId = obj.ProfileId;
try
{
_tokenRepo.Insert(mToken);
_uow.Save();
_logger.Log("Post TokenController. Before OK: ", "api", 3);
return Ok();
}
catch (Exception ex)
{
_logger.Log("Post TokenController. Save error. Exception: " + ex.Message, "api", 3);
return new CustomErrorActionResult(Request, "Save Error", ErrorCodes.SaveError,HttpStatusCode.BadRequest);
}
}
else
{
_logger.Log("Post TokenController. Error: Token already exists ", "api", 3);
return new CustomErrorActionResult(Request, "Token allready exists", ErrorCodes.TokenAllreadyExists, HttpStatusCode.BadRequest);
}
}
else
{
_logger.Log("Post TokenController. Error: User not found", "api", 3);
return new CustomErrorActionResult(Request, "User not found", ErrorCodes.UserNotFound, HttpStatusCode.BadRequest);
}
}
else
{
_logger.Log("Post TokenController. Error: Wrong password. Password: " + obj.Password, "api", 3);
return new CustomErrorActionResult(Request, "Wrong Password", ErrorCodes.BadPassword, HttpStatusCode.Unauthorized);
}
}