public IEventDetailsPage GetFeaturedEvent() { var page = _context.GetDataSourceItem <IEventDetailsPage>(); Throw.IfNull(page, nameof(page)); return(page); }
// GET: PageStructure public ActionResult Header() { var dataSourceItem = _mvcContext.GetDataSourceItem <ISiteHeader>(); if (dataSourceItem == null && !Sitecore.Context.PageMode.IsExperienceEditorEditing) { return(new EmptyResult()); } return(View(dataSourceItem)); }
public ActionResult CommentSection() { _logger.Debug($"{nameof(CommentSection)} has been called."); var dataSourceItem = _mvcContext.GetDataSourceItem <IComment>(); Throw.IfNull(dataSourceItem, nameof(dataSourceItem)); var model = new CommentSectionViewModel { EventId = Guid.Empty, CommentSettings = dataSourceItem }; var context = RenderingContext.CurrentOrNull; if (!(context is null)) { model.EventId = RenderingContext.Current.ContextItem.ID.Guid; } model.Comments = GetLasts(model.CommentSettings.DisplayedCommentCount, model.EventId); return(View(model)); }
/// <summary> /// Getting 2 variants of ImageText components(Left,Right ) /// </summary> /// <returns>ImageText component variation based on parameter selected from Sitecore</returns> public IImageText GetImageText() { IMvcContext mvcContext = _mvcContext(); IImageText imageText = mvcContext.GetDataSourceItem <IImageText>(); return(imageText ?? _imageText); }
/// <summary> /// Getting 2 variants of Parallax components(background image ) /// </summary> /// <returns>Parallax</returns> public IParallax GetParallax() { IMvcContext mvcContext = _mvcContext(); IParallax parallax = mvcContext.GetDataSourceItem <IParallax>(); return(parallax ?? _parallax); }
/// <summary> /// Getting all Home Carousel component asigned in Sitecore with the Background CSS (eg:explore) /// </summary> /// <returns>Home Carousel content Slides details</returns> public IHomepage_Carousels HomePageCarousels() { IMvcContext mvcContext = _mvcContext(); IHomepage_Carousels homepage_Carousels = mvcContext.GetDataSourceItem <IHomepage_Carousels>(); return(homepage_Carousels ?? _homepage_Carousels); }
public LanguageSelectorViewModel GetViewModel(Language currentLanguage, Item currentItem, Database currentDatabase) { Throw.IfNull(currentLanguage, nameof(currentLanguage)); Throw.IfNull(currentItem, nameof(currentItem)); Throw.IfNull(currentDatabase, nameof(currentDatabase)); var dataSource = _mvcContext.GetDataSourceItem <ILanguageSelectorSettings>(); Throw.IfCondition(dataSource is null, nameof(dataSource), Translate.Text(DictionaryKeys.ErrorMessages.DataSourceNotExist)); var languages = _languageManager.GetLanguages(currentDatabase); var viewModels = languages .Select(x => { var url = _linkManager.GetItemUrl(currentItem, new ItemUrlBuilderOptions { Language = x, LanguageEmbedding = LanguageEmbedding.Always }); return(new LanguageViewModel { DisplayName = GetLanguageDisplayName(x.GetDisplayName()), Link = url }); }); return(new LanguageSelectorViewModel { CurrentLanguageName = GetLanguageDisplayName(currentLanguage.GetDisplayName()), Languages = viewModels, LanguageSelectorSettings = dataSource }); }
/// <summary> /// Getting all Hero component asigned in Sitecore on field (Hero Metrics) /// </summary> /// <returns>HeroBannerList</returns> public IHero GetHero() { IMvcContext mvcContext = _mvcContext(); IHero hero = mvcContext.GetDataSourceItem <IHero>(); return(hero ?? _hero); }
public static T GetDataSourceItem <T>(this IMvcContext context, Action <GetKnownItemBuilder> config) where T : class { var builder = new GetKnownItemBuilder(); config(builder); return(context.GetDataSourceItem <T>(builder)); }
/// <summary> /// Getting all Interactive Map component asigned in Sitecore on field (Interactive Maps) /// </summary> /// <returns>InteractiveMapList</returns> public IInteractive_Map InteractiveMaps() { IMvcContext mvcContext = _mvcContext(); IInteractive_Map interactive_Map = mvcContext.GetDataSourceItem <IInteractive_Map>(); return(interactive_Map ?? _interactive_Map); }
public ISubscriptionForm GetSubscriptionForm() { var subscriptionForm = _context.GetDataSourceItem <ISubscriptionForm>(); Throw.IfNull(subscriptionForm, nameof(subscriptionForm)); return(subscriptionForm); }
public T GetDataSourceItem <T>(IMvcContext context = null) where T : class { if (context == null) { context = _currentContext; } return(context.GetDataSourceItem <T>()); }
public ActionResult FeaturedBooks() { IFeaturedBooks model = null; if (_mvcContext.HasDataSource) { model = _mvcContext.GetDataSourceItem <IFeaturedBooks>(); } return(View(model)); }
public ActionResult Menu() { _logger.Debug($"{nameof(Menu)} has been called."); var dataSource = _mvcContext.GetDataSourceItem <INavigationComponentSettings>(); var contextItem = RenderingContext.Current.ContextItem; var navigationComponent = _navigationService.GetMenu(contextItem, dataSource); return(ExecuteSafe(() => View(navigationComponent))); }
public override IRenderingModelBase GetModel() { NavigationRenderingModel navigationRenderingModel = new NavigationRenderingModel(); this.FillBaseProperties((object)navigationRenderingModel); INavigableList navigableList = mvcContext.GetDataSourceItem <INavigableList>(); if (navigableList != null && navigableList.NavigableItems != null && navigableList.NavigableItems.Any()) { navigationRenderingModel.Navigations = navigableList.NavigableItems.Select(item => ConvertToNavItem(item)).ToList(); } return((IRenderingModelBase)navigationRenderingModel); }
public ActionResult RegisterForm() { _logger.Debug($"{nameof(RegisterForm)} has been called."); var model = new RegistrationPageViewModel { RegistrationPage = _mvcContext.GetContextItem <IRegistrationPage>(), AssetsService = _assetsService, DataSourceId = _mvcContext.GetDataSourceItem <IEmail>()?.Id ?? Guid.Empty }; return(ExecuteSafe(() => View(model))); }
/// <summary> /// Getting all amenities when adding as rendering component /// </summary> /// <returns>Amenities</returns> public IAmenities GetAmenities() { IMvcContext mvcContext = _mvcContext(); IAmenities amenities = mvcContext.GetDataSourceItem <IAmenities>(); _amenities.Page_Amenities = null; //First check the datasource item if empty then get the details from context template item if (amenities == null) { IGeneric_ContentPage generic_ContentPage = mvcContext.GetContextItem <IGeneric_ContentPage>(); if (generic_ContentPage?.Amenities?.Count() > 0) { _amenities.Page_Amenities = generic_ContentPage.Amenities; } } return(amenities?.Page_Amenities != null ? amenities : _amenities); }
/// <summary> /// Getting all Faqs when adding as rendering component /// </summary> /// <returns>Faqs</returns> public IFaqs GetFaqs() { IMvcContext mvcContext = _mvcContext(); IFaqs faqs = mvcContext.GetDataSourceItem <IFaqs>(); _faqs.Page_Faqs = null; //First check the datasource item if empty then get the details from context template item if (faqs == null) { IGeneric_ContentPage generic_ContentPage = mvcContext.GetContextItem <IGeneric_ContentPage>(); if (generic_ContentPage?.Faqs?.Count() > 0) { _faqs.Page_Faqs = generic_ContentPage.Faqs; } } return(faqs?.Page_Faqs != null ? faqs : _faqs); }
///// <summary> ///// Getting all Related pages component asigned in Sitecore when adding as rendering component ///// </summary> ///// <returns>Related Pages details</returns> public IRelated_Pages RelatedPages() { IRelated_Pages related_Pages = null; IMvcContext mvcContext = _mvcContext(); _related_Pages.Pages = null; //First check the datasource item if empty then get the details from context template item related_Pages = mvcContext.GetDataSourceItem <IRelated_Pages>(); if (related_Pages == null) { IGeneric_ContentPage generic_ContentPage = mvcContext.GetContextItem <IGeneric_ContentPage>(); if (generic_ContentPage?.Related_Pages?.Count() > 0) { _related_Pages.Pages = generic_ContentPage.Related_Pages; } } return(related_Pages?.Pages != null ? related_Pages : _related_Pages); }
// GET: Carousel public ActionResult Slider() { SliderModel model = new SliderModel(); if (_mvcContext.HasDataSource) { //Sitecore.Mvc.Presentation.RequestContextExtensions.Current. _mvcContext.GetDataSourceItem <SliderModel>(); var dataSource = RenderingContext.Current.Rendering.Item; //var datasourceItem = Sitecore.Context.Database.GetItem(new Sitecore.Data.ID(dataSourceID)); MultilistField slidesField = dataSource.Fields["{3AC463B0-DE1F-4D98-842A-C750897C24D6}"]; if (slidesField?.Count > 0) { model.Slides = slidesField.GetItems().ToList(); } } return(View(model)); }
public ActionResult SearchComponent() { _logger.Debug($"{nameof(SearchComponent)} has been called."); var dataSource = _mvcContext.GetDataSourceItem <IEventSearchSettings>(); var model = new EventListViewModel { PageNumber = DefaultPageNumber, PageSize = DefaultPageSize, AllTags = _eventSearchService.GetAllTags() }; model.PageSizeOptions = dataSource is null || !dataSource.PageSizeOptions.Any() ? new List <int> { model.PageSize } : dataSource.PageSizeOptions.Select(x => x.Value); return(ExecuteSafe(() => View(model))); }
public ActionResult SchemaOrg() { var viewModel = new SchemaViewModel(); try { var Scope = _sitecoreService.GetDataSourceItem <SchemaScope>(); if (Scope != null && Scope.SchemaProperties != null) { UpdateSchemaProperties(Scope.SchemaProperties); viewModel.Scope = Scope; } } catch (Exception ex) { Log.Error(ex.Message, ex, this); } return(PartialView(viewModel)); }
public ActionResult TileListHorizontal() { var model = _mvcContext.GetDataSourceItem <TileListHorizontalModel>(); return(View(model)); }
public ActionResult ProductList() { var model = _mvcContext.GetDataSourceItem <ProductListModel>(); return(View(model)); }
public ActionResult Footer() { var model = _mvcContext.GetDataSourceItem <FooterModel>(); return(View(model)); }
// Standard Carousel public ActionResult GetCarousel() => _context.GetDataSourceItem <ICarousel>() == null ? null : View(new CarouselViewModel(_context.GetDataSourceItem <ICarousel>()));
public ActionResult DemoArticle() { var dataSource = _mvcContext.GetDataSourceItem <DemoArticle>(); return(View(dataSource)); }
public T GetDataSourceItem <T>(GetKnownOptions options) where T : class { return(_mvcContext.GetDataSourceItem <T>(options)); }
public ActionResult Hero() { var model = _mvcContext.GetDataSourceItem <HeroModel>(); return(View(model)); }