public ActionResult Create(SermonMetaDataCreateViewModel sermonMetaDataCreateViewModel) { if (ModelState.IsValid) { SermonData newSermonData = new SermonData(); newSermonData.SermonDataID = Guid.NewGuid(); newSermonData.Active = true; //newSermonData.SermonDataDataTypesID = 1; sermonMetaDataCreateViewModel.SermonMetaData.SermonDatas.Add(newSermonData); int[] selectedCategories = sermonMetaDataCreateViewModel.SermonCategoryies.Where(x => x.Selected).Select<SelectListItem, int>(x => Convert.ToInt32(x.Value.ToString())).ToArray<int>(); sermonMetaDataCreateViewModel.SermonMetaData.SermonCategories.Clear(); sermonMetaDataCreateViewModel.SermonMetaData.SermonCategories = unitOfWork.SermonCategoryRepository.Get(x => selectedCategories.Contains(x.SermonCategoryID)).ToList(); unitOfWork.SermonMetaDataRepository.Insert(sermonMetaDataCreateViewModel.SermonMetaData); unitOfWork.Save(); foreach (var sermonMetaData in sermonMetaDataCreateViewModel.SermonMetaData.SermonDatas) { var path = Path.Combine(unitOfWork.SermonConfigRepository.SermonDataPath, Path.GetFileName(sermonMetaData.SermonDataID.ToString("D").ToUpperInvariant() + Path.GetExtension(sermonMetaDataCreateViewModel.SermonAudioFile.FileName))); sermonMetaDataCreateViewModel.SermonAudioFile.SaveAs(path); } return RedirectToAction("Index"); } //sermonMetaDataCreateViewModel.SermonMetaData = SermonMetaDataSetupBase(sermonMetaDataCreateViewModel.SermonMetaData); sermonMetaDataCreateViewModel = SermonMetaDataBaseInitialize(sermonMetaDataCreateViewModel.SermonMetaData).ToCreateViewModel(); return View(sermonMetaDataCreateViewModel); }
public ActionResult Edit(SermonMetaDataEditViewModel sermonMetaDataEditViewModel) { if (ModelState.IsValid) { unitOfWork.context.SermonMetaDatas.Attach(sermonMetaDataEditViewModel.SermonMetaData); unitOfWork.context.Entry(sermonMetaDataEditViewModel.SermonMetaData).Collection(x => x.SermonCategories).Load(); if (sermonMetaDataEditViewModel.SermonAudioFile != null && sermonMetaDataEditViewModel.SermonAudioFile.ContentLength > 0) { SermonData newSermonData = new SermonData(); newSermonData.SermonDataID = Guid.NewGuid(); newSermonData.Active = true; sermonMetaDataEditViewModel.SermonMetaData.SermonDatas.Add(newSermonData); var path = Path.Combine(unitOfWork.SermonConfigRepository.SermonDataPath, Path.GetFileName(newSermonData.SermonDataID.ToString("D").ToUpperInvariant() + Path.GetExtension(sermonMetaDataEditViewModel.SermonAudioFile.FileName))); sermonMetaDataEditViewModel.SermonAudioFile.SaveAs(path); } int[] selectedCategories = sermonMetaDataEditViewModel.SermonCategoryies.Where(x => x.Selected).Select<SelectListItem, int>(x => Convert.ToInt32(x.Value.ToString())).ToArray<int>(); sermonMetaDataEditViewModel.SermonMetaData.SermonCategories.Clear(); sermonMetaDataEditViewModel.SermonMetaData.SermonCategories = unitOfWork.SermonCategoryRepository.Get(x => selectedCategories.Contains(x.SermonCategoryID)).ToList(); unitOfWork.SermonMetaDataRepository.Update(sermonMetaDataEditViewModel.SermonMetaData); unitOfWork.Save(); return RedirectToAction("Index"); } //sermonMetaDataEditViewModel.SermonMetaData = SermonMetaDataSetupBase(sermonMetaDataEditViewModel.SermonMetaData); sermonMetaDataEditViewModel = SermonMetaDataBaseInitialize(sermonMetaDataEditViewModel.SermonMetaData).ToEditViewModel(); return View(sermonMetaDataEditViewModel); }
public void AddNewSermon(int sermonMetaDataID) { SermonMetaData sermonMetaData = unitOfWork.SermonMetaDataRepository.GetByID(sermonMetaDataID); SermonData sermonData = new SermonData(); SermonData newSermonData = new SermonData(); newSermonData.SermonDataID = Guid.NewGuid(); newSermonData.Active = true; //newSermonData.SermonDataDataTypesID = 1; }