public IActionResult OnGet(int?id) { if (id == null) { return(NotFound()); } var now = this.clockService.UtcNow; var spec = Specifications .GetClosedBlinds(now) .AndAlso(x => x.Id == id); spec.FetchStrategy = Strategies .IncludeItemsAndVotes() .Include(x => x.BlindItems.First().BlindVotes.First().CreatedByUser); var blind = blindRepository.Find(spec); if (blind == null) { // TODO better error?? return(NotFound()); } if (!blind.BlindItems.Any(x => x.BlindVotes.Any())) { // TODO better error?? return(NotFound()); } Blind = mapper.Map <BlindDto>(blind); BlindItemScore = mapper.Map <List <BlindItemScoresDto> >(blind.BlindItems).OrderByDescending(x => x.TotalScore).ToList(); return(Page()); }
public async Task <IActionResult> OnPostAsync(int?id) { if (id == null) { return(NotFound()); } var now = this.clockService.UtcNow; var blind = blindRepository.Get((int)id); if (blind == null) { return(NotFound()); } // Kick if its not theirs var userId = this.userManager.GetUserId(User); if (blind.CreatedByUserId != userId) { return(Unauthorized()); } Blind = mapper.Map <BlindDto>(blind); if (Blind != null) { blind.Closed = now.UtcDateTime; context.Attach(blind).State = EntityState.Modified; await context.SaveChangesAsync(); } return(RedirectToPage("./Index")); }
public IActionResult OnGet(int?id) { if (id == null) { return(NotFound()); } // Kick if it has votes var spec = Specifications.GetBlindsWithNoVotes() .AndAlso(x => x.Id == id); var blind = blindRepository.Find(spec); if (blind == null) { // TODO better error?? return(NotFound()); } // Kick if its not theirs var userId = this.userManager.GetUserId(User); if (blind.CreatedByUserId != userId) { return(Unauthorized()); } Blind = mapper.Map <BlindDto>(blind); if (Blind == null) { return(NotFound()); } return(Page()); }
public IActionResult OnGet(int?id) { if (id == null) { return(NotFound()); } var blind = blindRepository.Get((int)id); if (blind == null) { return(NotFound()); } // Kick if its not theirs var userId = this.userManager.GetUserId(User); if (blind.CreatedByUserId != userId) { return(Unauthorized()); } Blind = mapper.Map <BlindDto>(blind); if (Blind == null) { return(NotFound()); } return(Page()); }
public async Task <IActionResult> OnPostAsync(int?id) { if (id == null) { return(NotFound()); } // Kick if it has votes var spec = Specifications.GetBlindsWithNoVotes() .AndAlso(x => x.Id == id); var blind = blindRepository.Find(spec); if (blind == null) { // TODO better error?? return(NotFound()); } // Kick if its not theirs var userId = this.userManager.GetUserId(User); if (blind.CreatedByUserId != userId) { return(Unauthorized()); } Blind = mapper.Map <BlindDto>(blind); if (Blind != null) { context.Blind.Remove(blind); await context.SaveChangesAsync(); } return(RedirectToPage("./Index")); }