Esempio n. 1
0
        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"));
        }
Esempio n. 2
0
        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));
        }
Esempio n. 3
0
        public IActionResult CreateLesson()
        {
            DailyLessonViewModel model = GetDailyLessonViewModel();

            model.Date = DateTime.Now;

            return(View(model));
        }
Esempio n. 4
0
        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);
        }