public async Task <IActionResult> SelectMeetingDate(int?id, string user, MeetingDateViewModel meetingDate) { if (id == null || user == null) { return(NotFound()); } if (ModelState.IsValid) { var claim = await claimRepository.GetFoundItemClaimById(id); if (user != claim.ApplicationUserId) { return(View()); } var meeting = new Meeting { FoundItem = claim.FoundItem, UserSelectedDate = (DateTime)meetingDate.FirstDate, USerSelectedDate2 = (DateTime)meetingDate.SecondDate, LocalGovernmentId = meetingDate.LGAId }; meetingRepository.Create(meeting); meetingRepository.Save(); var firstdate = ((DateTime)meetingDate.FirstDate).ToShortDateString(); var seconddate = ((DateTime)meetingDate.SecondDate).ToShortDateString(); var link = Url.Action("ConfirmDate", "Meeting", new { area = "User", id = claim.Id, firstDate = firstdate, secondDate = seconddate }, Request.Scheme); await System.IO.File.WriteAllTextAsync("ConfirmDate.txt", link); var message = new Dictionary <string, string> { { "FName", " User" }, { "EmailClaimLink", link } }; await emailNotifier.SendEmailAsync(claim.ApplicationUser.Email, "Meeting Arrangement", message, "SetUpMeeting"); return(RedirectToAction("Success", "Account")); } return(RedirectToAction("SelectMeetingDate")); }
// GET: Movies // Requires using Microsoft.AspNetCore.Mvc.Rendering; public async Task <IActionResult> Index(string meetingDate, string searchString) { // Use LINQ to get list of genres. IQueryable <DateTime> meetingQuery = from m in _context.PlannedMeeting orderby m.Meeting select m.Meeting; var plannedMeetings = from m in _context.PlannedMeeting select m; if (!String.IsNullOrEmpty(meetingDate)) { plannedMeetings = plannedMeetings.Where(x => x.Meeting == DateTime.Parse(meetingDate)); } var meetingDateVM = new MeetingDateViewModel(); meetingDateVM.meetings = new SelectList(await meetingQuery.Distinct().ToListAsync()); meetingDateVM.plannedMeetings = await plannedMeetings.ToListAsync(); return(View(meetingDateVM)); }