public IActionResult Delete(int id) { IActionResult _result = new ObjectResult(false); GenericResult _removeResult = null; try { Photo _photoToRemove = this._photoRepository.GetSingle(id); this._photoRepository.Delete(_photoToRemove); this._photoRepository.Commit(); _removeResult = new GenericResult() { Succeeded = true, Message = "Photo removed." }; } catch (Exception ex) { _removeResult = new GenericResult() { Succeeded = false, Message = ex.Message }; _loggingRepository.Add(new Error() { Message = ex.Message, StackTrace = ex.StackTrace, DateCreated = DateTime.Now }); _loggingRepository.Commit(); } _result = new ObjectResult(_removeResult); return _result; }
public async Task<IActionResult> Login([FromBody] LoginViewModel user) { IActionResult _result = new ObjectResult(false); GenericResult _authenticationResult = null; try { Infrastructure.Services.MembershipContext _userContext = _membershipService.ValidateUser(user.Username, user.Password); if (_userContext.User != null) { IEnumerable<Role> _roles = _userRepository.GetUserRoles(user.Username); List<Claim> _claims = new List<Claim>(); foreach (Role role in _roles) { Claim _claim = new Claim(ClaimTypes.Role, "Admin", ClaimValueTypes.String, user.Username); _claims.Add(_claim); } await HttpContext.Authentication.SignInAsync(CookieAuthenticationDefaults.AuthenticationScheme, new ClaimsPrincipal(new ClaimsIdentity(_claims, CookieAuthenticationDefaults.AuthenticationScheme)), new Microsoft.AspNet.Http.Authentication.AuthenticationProperties { IsPersistent = user.RememberMe }); _authenticationResult = new GenericResult() { Succeeded = true, Message = "Authentication succeeded" }; } else { _authenticationResult = new GenericResult() { Succeeded = false, Message = "Authentication failed" }; } } catch (Exception ex) { _authenticationResult = new GenericResult() { Succeeded = false, Message = ex.Message }; _loggingRepository.Add(new Error() { Message = ex.Message, StackTrace = ex.StackTrace, DateCreated = DateTime.Now }); _loggingRepository.Commit(); } _result = new ObjectResult(_authenticationResult); return _result; }
public IActionResult Register([FromBody] RegistrationViewModel user) { IActionResult _result = new ObjectResult(false); GenericResult _registrationResult = null; try { if (ModelState.IsValid) { User _user = _membershipService.CreateUser(user.Username, user.Email, user.Password, new int[] { 1 }); if (_user != null) { _registrationResult = new GenericResult() { Succeeded = true, Message = "Registration succeeded" }; } } else { _registrationResult = new GenericResult() { Succeeded = false, Message = "Invalid fields." }; } } catch (Exception ex) { _registrationResult = new GenericResult() { Succeeded = false, Message = ex.Message }; _loggingRepository.Add(new Error() { Message = ex.Message, StackTrace = ex.StackTrace, DateCreated = DateTime.Now }); _loggingRepository.Commit(); } _result = new ObjectResult(_registrationResult); return _result; }