public async Task <IActionResult> CreateLesson(DailyLessonViewModel viewModel) { if (!ModelState.IsValid) { var model = GetDailyLessonViewModel(); return(View(model)); } else { int lessonType = 0; if (viewModel.LessonType == "Reading") { lessonType = 1; } if (viewModel.LessonType == "Reflection") { lessonType = 2; } if (viewModel.LessonType == "Video") { lessonType = 3; } if (viewModel.LessonType == "Journal") { lessonType = 4; } var optionsBuilder = new DbContextOptionsBuilder <ApplicationDbContext>(); string fileid = string.Empty; if (viewModel.File != null) { fileid = viewModel.File.FileName; } using (var context = new ApplicationDbContext(optionsBuilder.Options, Configuration)) { var lessonContent = new LessonContent { Date = viewModel.Date, FileId = fileid, Description = viewModel.Description, LessonType = lessonType, Title = viewModel.Title }; context.LessonContents.Add(lessonContent); context.SaveChanges(); } if (!string.IsNullOrEmpty(fileid)) { var uploads = Path.Combine(_hostingEnvironment.WebRootPath, "uploads"); var filePath = Path.Combine(uploads, viewModel.File.FileName); using (var fileStream = new FileStream(filePath, FileMode.Create)) { await viewModel.File.CopyToAsync(fileStream); } } } return(RedirectToAction("DailyLessons")); }
public IActionResult DailyLessons() { var lessons = new List <DailyLessonViewModel>(); var optionsBuilder = new DbContextOptionsBuilder <ApplicationDbContext>(); using (var context = new ApplicationDbContext(optionsBuilder.Options, Configuration)) { var dailyLessons = context.LessonContents.ToList(); foreach (var lesson in dailyLessons) { var viewModel = new DailyLessonViewModel { LessonContentId = lesson.LessonContentId, Date = lesson.Date, Description = lesson.Description, Title = lesson.Title, LessonTypeId = lesson.LessonType, FileName = lesson.FileId, }; lessons.Add(viewModel); } } var dlModel = new LessonViewModel { DailyLessons = lessons }; return(View(dlModel)); }
public IActionResult CreateLesson() { DailyLessonViewModel model = GetDailyLessonViewModel(); model.Date = DateTime.Now; return(View(model)); }
private static DailyLessonViewModel GetDailyLessonViewModel() { var model = new DailyLessonViewModel(); var lessonTypes = Enum.GetNames(typeof(LessonType)).ToList(); model.LessonTypes = lessonTypes; var selectListItems = new List <SelectListItem>(); foreach (var type in lessonTypes) { selectListItems.Add(new SelectListItem { Value = type, Text = type }); } model.LessonTypeSelectListItems = selectListItems; return(model); }