public IActionResult Index(int id, [FromQuery] int pageRouteId, [FromQuery] int approvalId) { if (TempData[notificationMessageKey] != null) { switch (TempData[notificationTypeKey]) { case notificationSuccess: _toastNotification.AddSuccessToastMessage(TempData[notificationMessageKey].ToString()); break; case notificationWarning: _toastNotification.AddWarningToastMessage(TempData[notificationMessageKey].ToString()); break; case notificationError: _toastNotification.AddErrorToastMessage(TempData[notificationMessageKey].ToString()); break; } } ViewBag.pageRouteId = pageRouteId; ViewBag.pageRouteVersionId = id; ViewBag.approvalId = approvalId; var pageSectionVersion = _pageMinistryVersionsRepository.GetByPageRouteId(pageRouteId); if (pageSectionVersion == null) { pageSectionVersion = new PageMinistryVersion(); pageSectionVersion.PageRouteId = pageRouteId; return(View(pageSectionVersion)); } var pageRouteVer = _pageRouteVersionRepository.GetByPageRoute(pageRouteId); return(View(pageSectionVersion)); }
public IEnumerable <PhotoArchiveListViewModel> GetPhotoArchiveByPageRouteId(int pageRouteId) { var pageRouteVersionId = 0; var pageRouteVersion = _pageRouteVersionRepository.GetByPageRoute(pageRouteId); if (pageRouteVersion != null) { pageRouteVersionId = pageRouteVersion.Id; } var queryright = (from nw in _db.PhotoArchive.Where(d => !d.IsDeleted && d.PageRouteId == pageRouteId) from nwv in _db.PhotoArchiveVersions.Where(d => d.PhotoArchiveId == nw.Id && d.VersionStatusEnum != VersionStatusEnum.Ignored) .OrderByDescending(d => d.Id).Take(1).Where(x => !x.IsDeleted) select new PhotoArchiveListViewModel { Id = nw.Id, VerId = nwv.Id, EnPhotoArchiveName = (nw == null || nwv.VersionStatusEnum == VersionStatusEnum.Draft || nwv.VersionStatusEnum == VersionStatusEnum.Submitted) ? nwv.EnPhotoArchiveName : nw.EnPhotoArchiveName, ArPhotoArchiveName = (nw == null || nwv.VersionStatusEnum == VersionStatusEnum.Draft || nwv.VersionStatusEnum == VersionStatusEnum.Submitted) ? nwv.ArPhotoArchiveName : nw.ArPhotoArchiveName, EnPhotoArchiveDesc = (nw == null || nwv.VersionStatusEnum == VersionStatusEnum.Draft || nwv.VersionStatusEnum == VersionStatusEnum.Submitted) ? nwv.EnPhotoArchiveDesc : nw.EnPhotoArchiveDesc, ArPhotoArchiveDesc = (nw == null || nwv.VersionStatusEnum == VersionStatusEnum.Draft || nwv.VersionStatusEnum == VersionStatusEnum.Submitted) ? nwv.ArPhotoArchiveDesc : nw.ArPhotoArchiveDesc, IsActive = (nw == null || nwv.VersionStatusEnum == VersionStatusEnum.Draft || nwv.VersionStatusEnum == VersionStatusEnum.Submitted) ? nwv.IsActive : nw.IsActive, ImageUrl = (nw == null || nwv.VersionStatusEnum == VersionStatusEnum.Draft || nwv.VersionStatusEnum == VersionStatusEnum.Submitted) ? nwv.ImageUrl : nw.ImageUrl, Order = (nw == null || nwv.VersionStatusEnum == VersionStatusEnum.Draft || nwv.VersionStatusEnum == VersionStatusEnum.Submitted) ? nwv.Order : nw.Order, SeoTitleEN = (nw == null || nwv.VersionStatusEnum == VersionStatusEnum.Draft || nwv.VersionStatusEnum == VersionStatusEnum.Submitted) ? nwv.SeoTitleEN : nw.SeoTitleEN, SeoTitleAR = (nw == null || nwv.VersionStatusEnum == VersionStatusEnum.Draft || nwv.VersionStatusEnum == VersionStatusEnum.Submitted) ? nwv.SeoTitleAR : nw.SeoTitleAR, SeoDescriptionEN = (nw == null || nwv.VersionStatusEnum == VersionStatusEnum.Draft || nwv.VersionStatusEnum == VersionStatusEnum.Submitted) ? nwv.SeoDescriptionEN : nw.SeoDescriptionEN, SeoDescriptionAR = (nw == null || nwv.VersionStatusEnum == VersionStatusEnum.Draft || nwv.VersionStatusEnum == VersionStatusEnum.Submitted) ? nwv.SeoDescriptionAR : nw.SeoDescriptionAR, SeoOgTitleEN = (nw == null || nwv.VersionStatusEnum == VersionStatusEnum.Draft || nwv.VersionStatusEnum == VersionStatusEnum.Submitted) ? nwv.SeoOgTitleEN : nw.SeoOgTitleEN, SeoOgTitleAR = (nw == null || nwv.VersionStatusEnum == VersionStatusEnum.Draft || nwv.VersionStatusEnum == VersionStatusEnum.Submitted) ? nwv.SeoOgTitleAR : nw.SeoOgTitleAR, SeoTwitterCardEN = (nw == null || nwv.VersionStatusEnum == VersionStatusEnum.Draft || nwv.VersionStatusEnum == VersionStatusEnum.Submitted) ? nwv.SeoTwitterCardEN : nw.SeoTwitterCardEN, SeoTwitterCardAR = (nw == null || nwv.VersionStatusEnum == VersionStatusEnum.Draft || nwv.VersionStatusEnum == VersionStatusEnum.Submitted) ? nwv.SeoTwitterCardAR : nw.SeoTwitterCardAR, EnPhotoArchiveType = (nw == null || nwv.VersionStatusEnum == VersionStatusEnum.Draft || nwv.VersionStatusEnum == VersionStatusEnum.Submitted) ? nwv.EnPhotoArchiveType : nw.EnPhotoArchiveType, ArPhotoArchiveType = (nw == null || nwv.VersionStatusEnum == VersionStatusEnum.Draft || nwv.VersionStatusEnum == VersionStatusEnum.Submitted) ? nwv.ArPhotoArchiveType : nw.ArPhotoArchiveType, CreatedById = (nw == null || nwv.VersionStatusEnum == VersionStatusEnum.Draft || nwv.VersionStatusEnum == VersionStatusEnum.Submitted) ? nwv.CreatedById : nw.CreatedById, VersionStatusEnum = nwv.VersionStatusEnum ?? VersionStatusEnum.Draft, ChangeActionEnum = nwv.ChangeActionEnum ?? ChangeActionEnum.New, }); var queryleft = (from nwv in _db.PhotoArchiveVersions.Where(d => !d.IsDeleted && d.VersionStatusEnum != VersionStatusEnum.Ignored && d.PageRouteVersionId == pageRouteVersionId) where !_db.PhotoArchive.Any(d => d.Id == nwv.PhotoArchiveId) select new PhotoArchiveListViewModel { Id = 0, VerId = nwv.Id, EnPhotoArchiveName = nwv.EnPhotoArchiveName, ArPhotoArchiveName = nwv.ArPhotoArchiveName, EnPhotoArchiveDesc = nwv.EnPhotoArchiveDesc, ArPhotoArchiveDesc = nwv.ArPhotoArchiveDesc, IsActive = nwv.IsActive, ImageUrl = nwv.ImageUrl, Order = nwv.Order, SeoTitleEN = nwv.SeoTitleEN, SeoTitleAR = nwv.SeoTitleAR, SeoDescriptionEN = nwv.SeoDescriptionEN, SeoDescriptionAR = nwv.SeoDescriptionAR, SeoOgTitleEN = nwv.SeoOgTitleEN, SeoOgTitleAR = nwv.SeoOgTitleAR, SeoTwitterCardEN = nwv.SeoTwitterCardEN, SeoTwitterCardAR = nwv.SeoTwitterCardAR, EnPhotoArchiveType = nwv.EnPhotoArchiveType, ArPhotoArchiveType = nwv.ArPhotoArchiveType, VersionStatusEnum = nwv.VersionStatusEnum ?? VersionStatusEnum.Draft, ChangeActionEnum = nwv.ChangeActionEnum ?? ChangeActionEnum.New, CreatedById = nwv.CreatedById }); return(queryright.Union(queryleft).OrderByDescending(d => d.VerId).ToList()); }
public IEnumerable <PageNewsListViewModel> GetPageNewsByPageRouteId(int pageRouteId) { var pageRouteVersionId = 0; var pageRouteVersion = _pageRouteVersionRepository.GetByPageRoute(pageRouteId); if (pageRouteVersion != null) { pageRouteVersionId = pageRouteVersion.Id; } //join betwen version and non version pageNews tables //takes the value from version if non version is not exsit, version status is draft or submited var queryright = (from nw in _db.PageNews.Where(d => !d.IsDeleted && d.PageRouteId == pageRouteId) from nwv in _db.PageNewsVersions.Where(d => d.PageNewsId == nw.Id && !d.IsDeleted && d.VersionStatusEnum != VersionStatusEnum.Ignored) .OrderByDescending(d => d.Id).Take(1) select new PageNewsListViewModel { Id = nw.Id, VerId = nwv.Id, EnTitle = (nw == null || nwv.VersionStatusEnum == VersionStatusEnum.Draft || nwv.VersionStatusEnum == VersionStatusEnum.Submitted) ? nwv.EnTitle : nw.EnTitle, EnglishDescription = (nw == null || nwv.VersionStatusEnum == VersionStatusEnum.Draft || nwv.VersionStatusEnum == VersionStatusEnum.Submitted) ? nwv.EnDescription : nw.EnDescription, EnglishShortDescription = (nw == null || nwv.VersionStatusEnum == VersionStatusEnum.Draft || nwv.VersionStatusEnum == VersionStatusEnum.Submitted) ? nwv.EnShortDescription : nw.EnShortDescription, ArTitle = (nw == null || nwv.VersionStatusEnum == VersionStatusEnum.Draft || nwv.VersionStatusEnum == VersionStatusEnum.Submitted) ? nwv.ArTitle : nw.ArTitle, arabicShortDescription = (nw == null || nwv.VersionStatusEnum == VersionStatusEnum.Draft || nwv.VersionStatusEnum == VersionStatusEnum.Submitted) ? nwv.ArShortDescription : nw.ArShortDescription, IsActive = (nw == null || nwv.VersionStatusEnum == VersionStatusEnum.Draft || nwv.VersionStatusEnum == VersionStatusEnum.Submitted) ? nwv.IsActive : nw.IsActive, VersionStatusEnum = nwv.VersionStatusEnum ?? VersionStatusEnum.Draft, Date = (nw == null || nwv.VersionStatusEnum == VersionStatusEnum.Draft || nwv.VersionStatusEnum == VersionStatusEnum.Submitted) ? nwv.Date : nw.Date, CreatedById = (nw == null || nwv.VersionStatusEnum == VersionStatusEnum.Draft || nwv.VersionStatusEnum == VersionStatusEnum.Submitted) ? nwv.CreatedById : nw.CreatedById, ChangeActionEnum = nwv.ChangeActionEnum ?? ChangeActionEnum.New, }); //get the rest of version from pageNews which not included in previous join var queryleft = (from nwv in _db.PageNewsVersions.Where(d => !d.IsDeleted && d.VersionStatusEnum != VersionStatusEnum.Ignored && d.PageRouteVersionId == pageRouteVersionId) where !_db.PageNews.Any(d => d.Id == nwv.PageNewsId) select new PageNewsListViewModel { Id = 0, VerId = nwv.Id, EnTitle = nwv.EnTitle, EnglishDescription = nwv.EnDescription, EnglishShortDescription = nwv.EnShortDescription, ArTitle = nwv.ArTitle, arabicShortDescription = nwv.ArShortDescription, IsActive = nwv.IsActive, VersionStatusEnum = nwv.VersionStatusEnum ?? VersionStatusEnum.Draft, ChangeActionEnum = nwv.ChangeActionEnum ?? ChangeActionEnum.New, CreatedById = nwv.CreatedById, Date = nwv.Date }); //join the right and the left queries return(queryright.Union(queryleft).OrderByDescending(d => d.Date).ToList()); }
public IEnumerable <PageEventViewModel> GetPageEventByPageRouteId(int pageRouteId) { var pageRouteVersionId = 0; var pageRouteVersion = _pageRouteVersionRepository.GetByPageRoute(pageRouteId); if (pageRouteVersion != null) { pageRouteVersionId = pageRouteVersion.Id; } //join between version and non version PageEvents take the value from non version if //the version wasn't exist or was draft or submited var queryright = (from nw in _db.PageEvents.Where(d => !d.IsDeleted && d.PageRouteId == pageRouteId) from nwv in _db.PageEventVersions.Where(d => d.PageEventId == nw.Id && !d.IsDeleted && d.VersionStatusEnum != VersionStatusEnum.Ignored) .OrderByDescending(d => d.Id).Take(1) select new PageEventViewModel { Id = nw.Id, VerId = nwv.Id, EnTitle = (nw == null || nwv.VersionStatusEnum == VersionStatusEnum.Draft || nwv.VersionStatusEnum == VersionStatusEnum.Submitted) ? nwv.EnTitle : nw.EnTitle, EnDescription = (nw == null || nwv.VersionStatusEnum == VersionStatusEnum.Draft || nwv.VersionStatusEnum == VersionStatusEnum.Submitted) ? nwv.EnDescription : nw.EnDescription, ArTitle = (nw == null || nwv.VersionStatusEnum == VersionStatusEnum.Draft || nwv.VersionStatusEnum == VersionStatusEnum.Submitted) ? nwv.ArTitle : nw.EnTitle, ArDescription = (nw == null || nwv.VersionStatusEnum == VersionStatusEnum.Draft || nwv.VersionStatusEnum == VersionStatusEnum.Submitted) ? nwv.ArDescription : nw.ArDescription, IsActive = (nw == null || nwv.VersionStatusEnum == VersionStatusEnum.Draft || nwv.VersionStatusEnum == VersionStatusEnum.Submitted) ? nwv.IsActive : nw.IsActive, VersionStatusEnum = nwv.VersionStatusEnum ?? VersionStatusEnum.Draft, EventStartDate = (nw == null || nwv.VersionStatusEnum == VersionStatusEnum.Draft || nwv.VersionStatusEnum == VersionStatusEnum.Submitted) ? nwv.EventStartDate : nw.EventStartDate, EventEndDate = (nw == null || nwv.VersionStatusEnum == VersionStatusEnum.Draft || nwv.VersionStatusEnum == VersionStatusEnum.Submitted) ? nwv.EventEndDate : nw.EventEndDate, Order = (nw == null || nwv.VersionStatusEnum == VersionStatusEnum.Draft || nwv.VersionStatusEnum == VersionStatusEnum.Submitted) ? nwv.Order : nw.Order, EnAddress = (nw == null || nwv.VersionStatusEnum == VersionStatusEnum.Draft || nwv.VersionStatusEnum == VersionStatusEnum.Submitted) ? nwv.EnAddress : nw.EnAddress, ArAddress = (nw == null || nwv.VersionStatusEnum == VersionStatusEnum.Draft || nwv.VersionStatusEnum == VersionStatusEnum.Submitted) ? nwv.ArAddress : nw.ArAddress }); //get the rest from PageEventVersions that wasn't included in previous join var queryleft = (from nwv in _db.PageEventVersions.Where(d => !d.IsDeleted && d.VersionStatusEnum != VersionStatusEnum.Ignored && d.PageRouteVersionId == pageRouteVersionId) where !_db.PageEvents.Any(d => d.Id == nwv.PageEventId) select new PageEventViewModel { Id = 0, VerId = nwv.Id, EnTitle = nwv.EnTitle, EnDescription = nwv.EnDescription, ArTitle = nwv.ArTitle, ArDescription = nwv.ArDescription, IsActive = nwv.IsActive, VersionStatusEnum = nwv.VersionStatusEnum ?? VersionStatusEnum.Draft, Order = nwv.Order, EventStartDate = nwv.EventStartDate, EventEndDate = nwv.EventEndDate, EnAddress = nwv.EnAddress, ArAddress = nwv.ArAddress }); return(queryright.Union(queryleft).OrderByDescending(d => d.VerId).ToList()); }