public HttpResponseMessage UpdateUser(int id, [FromBody] UserInfo userInfo) { try { var oRequest = new ORequest(); if (!oRequest.IsAuthorized(AccessTokenManager.ScopeUsers)) { return(Request.CreateErrorResponse(HttpStatusCode.Unauthorized, "Unauthorized")); } if (userInfo == null) { return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, "Could not read user from body")); } if (!DataProvider.UserDao.ApiIsExists(id)) { return(Request.CreateResponse(HttpStatusCode.NoContent, "User is not found")); } DataProvider.UserDao.ApiUpdateUser(id, userInfo); var oResponse = new OResponse(userInfo); return(Request.CreateResponse(oResponse)); } catch (Exception ex) { LogUtils.AddErrorLog(ex); return(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, ex)); } }
public IHttpActionResult UploadAvatar(int id) { try { var oRequest = new ORequest(AccessTokenManager.ScopeUsers); if (!oRequest.IsApiAuthorized) { return(Unauthorized()); } if (!DataProvider.UserDao.ApiIsExists(id)) { return(NotFound()); } var userInfo = DataProvider.UserDao.ApiGetUser(id); foreach (string name in HttpContext.Current.Request.Files) { var postFile = HttpContext.Current.Request.Files[name]; if (postFile == null) { return(BadRequest("Could not read image from body")); } var directoryPath = PathUtils.GetUserUploadDirectoryPath(userInfo.UserName); var fileName = PathUtils.GetUserUploadFileName(postFile.FileName); if (!EFileSystemTypeUtils.IsImage(PathUtils.GetExtension(fileName))) { return(BadRequest("image file extension is not correct")); } postFile.SaveAs(PathUtils.Combine(directoryPath, fileName)); userInfo.AvatarUrl = PageUtils.AddProtocolToUrl(PageUtils.GetUserFilesUrl(userInfo.UserName, fileName)); string errorMessage; var user = DataProvider.UserDao.ApiUpdate(id, new UserInfoCreateUpdate { AvatarUrl = userInfo.AvatarUrl }, out errorMessage); if (user == null) { return(BadRequest(errorMessage)); } } var oResponse = new OResponse(userInfo); return(Ok(oResponse)); } catch (Exception ex) { LogUtils.AddErrorLog(ex); return(InternalServerError(ex)); } }
public IHttpActionResult GetLogs(int id) { try { var oRequest = new ORequest(AccessTokenManager.ScopeUsers); if (!oRequest.IsApiAuthorized) { return(Unauthorized()); } var userName = DataProvider.UserDao.GetUserName(id); if (string.IsNullOrEmpty(userName)) { return(NotFound()); } var logs = DataProvider.UserLogDao.ApiGetLogs(userName, oRequest.Skip, oRequest.Top); var oResponse = new OResponse(logs); var count = DataProvider.UserDao.ApiGetCount(); if (oRequest.Count) { oResponse.Count = count; } if (oRequest.Top + oRequest.Skip < count) { oResponse.Next = PageUtils.AddQueryString( PageUtils.RemoveQueryString(oRequest.RawUrl, new List <string> { "top", "skip" }), new NameValueCollection { { "top", oRequest.Top.ToString() }, { "skip", (oRequest.Top + oRequest.Skip).ToString() } }); } return(Ok(oResponse)); } catch (Exception ex) { LogUtils.AddErrorLog(ex); return(InternalServerError(ex)); } }
public IHttpActionResult UploadAvatar(HttpPostedFileBase uploadedFile) { try { var oRequest = new ORequest(); if (!oRequest.IsAuthorized(AccessTokenManager.ScopeUsers)) { return(Unauthorized()); } var users = DataProvider.UserDao.ApiGetUsers(oRequest.Skip, oRequest.Top); var oResponse = new OResponse(users); HttpResponseMessage result = null; var httpRequest = HttpContext.Current.Request; if (httpRequest.Files.Count > 0) { var docfiles = new List <string>(); foreach (string file in httpRequest.Files) { var postedFile = httpRequest.Files[file]; var filePath = HttpContext.Current.Server.MapPath("~/" + postedFile.FileName); postedFile.SaveAs(filePath); docfiles.Add(filePath); } result = Request.CreateResponse(HttpStatusCode.Created, docfiles); } else { result = Request.CreateResponse(HttpStatusCode.BadRequest); } return(ResponseMessage(result)); } catch (Exception ex) { LogUtils.AddErrorLog(ex); return(InternalServerError(ex)); } }
public IHttpActionResult List() { try { var oRequest = new ORequest(AccessTokenManager.ScopeAdministrators); if (!oRequest.IsApiAuthorized) { return(Unauthorized()); } var administrators = DataProvider.AdministratorDao.ApiGetAdministrators(oRequest.Skip, oRequest.Top); var oResponse = new OResponse(administrators); var count = DataProvider.AdministratorDao.ApiGetCount(); if (oRequest.Count) { oResponse.Count = count; } if (oRequest.Top + oRequest.Skip < count) { oResponse.Next = PageUtils.AddQueryString( PageUtils.RemoveQueryString(oRequest.RawUrl, new List <string> { "top", "skip" }), new NameValueCollection { { "top", oRequest.Top.ToString() }, { "skip", (oRequest.Top + oRequest.Skip).ToString() } }); } return(Ok(oResponse)); } catch (Exception ex) { LogUtils.AddErrorLog(ex); return(InternalServerError(ex)); } }
public IHttpActionResult GetUser(int id) { try { var oRequest = new ORequest(); if (!oRequest.IsAuthorized(AccessTokenManager.ScopeUsers)) { return(Unauthorized()); } var user = DataProvider.UserDao.ApiGetUser(id); var oResponse = new OResponse(user); return(Ok(oResponse)); } catch (Exception ex) { LogUtils.AddErrorLog(ex); return(InternalServerError(ex)); } }