public async Task <string> UpdateAsync(AboutUser model) { context.AboutUsers.Update(model); await context.SaveChangesAsync(); return(model.UserId); }
public async Task <string> CreateAsync(AboutUser model, string userId) { context.AboutUsers.Add(model); await context.SaveChangesAsync(); return(userId); }
public IActionResult Index() { var email = HttpContext.User?.Identity.Name; var user = _userManager.Users.First(x => x.Email == email); if (user != null) { AboutUser aboutUser = _mapper.Map <AboutUser>(user); return(View(aboutUser)); } return(View(null)); }
public async Task <IActionResult> Edit(AboutUser model) { if (ModelState.IsValid) { var email = GetEmail(); var user = GetUser(email); user = _mapper.Map(model, user); await _userManager.UpdateAsync(user); return(Redirect("/Account")); } return(View(model)); }
public async Task <ActionResult> Register(RegisterRequestModel model) { var user = new ApplicationUser { Email = model.Email, UserName = model.UserName }; var result = await userManager.CreateAsync(user, model.Password); if (result.Succeeded) { var aboutUser = new AboutUser { UserId = user.Id, }; var userId = await userService.CreateAsync(aboutUser, user.Id); return(StatusCode(201, userId)); } return(BadRequest(result.Errors)); }
public async Task <HttpResponseMessage> Get() { try { string[] testUsers = new string[] { "*****@*****.**", "*****@*****.**", "*****@*****.**", "*****@*****.**", "*****@*****.**", "*****@*****.**", "*****@*****.**", "*****@*****.**", "*****@*****.**" }; string baseFileLoc = "C:/Users/tgs03_000/Downloads/SkinSelfies"; //if (Directory.Exists(baseFileLoc)) //{ // Directory.Delete(baseFileLoc, true); //} if (!Directory.Exists(baseFileLoc)) { Directory.CreateDirectory(baseFileLoc); } List <Task> allTasks = new List <Task>(); List <string> nullEmails = new List <string>(); foreach (string userEmail in testUsers) { ServiceData.Models.User user = _userRepository.Search(u => u.Email == userEmail).FirstOrDefault(); DirectoryInfo userDir = Directory.CreateDirectory(Path.Combine(baseFileLoc, userEmail)); if (user == null) { nullEmails.Add(userEmail); continue; } AboutUser userDetails = new AboutUser { Id = user.Id, Email = user.Email, Name = user.Name, Dob = user.BirthDate }; File.WriteAllText(Path.Combine(userDir.FullName, "AboutUser.txt"), JsonConvert.SerializeObject(userDetails, Formatting.Indented)); foreach (ServiceData.Models.UserCondition cond in user.Conditions) { ServiceData.Models.UserCondition fullCond = _conditionRepository.GetById(cond.Id); string condPath = Path.Combine(userDir.FullName, cond.Id.ToString()); DirectoryInfo condDir = Directory.Exists(condPath)? new DirectoryInfo(condPath) : Directory.CreateDirectory(condPath); AboutCondition condDetails = new AboutCondition { Id = user.Id, Name = cond.Condition, SkinRegion = fullCond.SkinRegion.BodyPart.Name + " - " + fullCond.SkinRegion.Name, StartDate = cond.StartDate, NumPhotos = fullCond.Photos.Count() }; File.WriteAllText(Path.Combine(condDir.FullName, "AboutCondition.txt"), JsonConvert.SerializeObject(condDetails, Formatting.Indented)); foreach (ServiceData.Models.Photo photo in fullCond.Photos) { string filename = Path.Combine(condDir.FullName, photo.CreatedAt.ToString("yyyy-MM-dd-HH-mm-ss.") + Path.GetExtension(photo.Url)); if (File.Exists(filename)) { continue; } CloudBlobContainer container = await GetBlobContainer(); Stream blobStream = new MemoryStream(); CloudBlob photoBlob = container.GetBlobReference(photo.Url.Replace(ConfidentialData.BlobStorageUrl, "")); KeyVaultKeyResolver cloudResolver = new KeyVaultKeyResolver(ServerUtils.GetToken); IKey rsa = await cloudResolver.ResolveKeyAsync(ConfidentialData.KeyLocation, CancellationToken.None); BlobEncryptionPolicy policy = new BlobEncryptionPolicy(null, cloudResolver); BlobRequestOptions options = new BlobRequestOptions() { EncryptionPolicy = policy }; await photoBlob.DownloadToStreamAsync(blobStream, null, options, null); blobStream.Position = 0; using (var fileStream = File.Create(filename)) { await blobStream.CopyToAsync(fileStream); } } } } string nullString = ""; foreach (string nEmail in nullEmails) { nullString += nEmail + ", "; } return(Request.CreateResponse(HttpStatusCode.OK, "Files located at " + baseFileLoc + " Null emails: " + nullString)); } catch (Exception e) { return(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, e)); } }