public IList <string> GetDisplayPluginsFor(Enums.DisplayTemplate displayTemplate) { ThemeEntry currentTheme = null; ExtensionDescriptor currentThemeDescriptor = _siteThemeService.GetSiteTheme(); if (currentThemeDescriptor != null) { currentTheme = new ThemeEntry(currentThemeDescriptor); } System.Configuration.Configuration config; try { config = _localConfiguration.GetConfiguration(currentTheme.Descriptor.Path.StartsWith("~/Themes/") ? currentTheme.Descriptor.Path : "" + "~/Themes/" + currentTheme.Descriptor.Path); return(config.AppSettings.Settings["DisplayPluginsFor" + displayTemplate.ToString()].Value.Split(new string[] { ",", ";", "|" }, StringSplitOptions.RemoveEmptyEntries) .Select(s => displayTemplate + " - " + s.Trim()).ToList()); } catch { return(null); } finally { config = null; } }
public IList <dynamic> MapContentToHighlightsItemsViewModel(IEnumerable <ContentItem> queryItems, Enums.DisplayTemplate displayTemplate, string displayPlugin, ViewsInfos viewsInfos) { var order = 0; IList <dynamic> fromQueryItems = new List <dynamic>(); foreach (var queryItem in queryItems) { var title = queryItem.As <TitlePart>(); var body = queryItem.As <BodyPart>(); var bodyText = ""; if (body == null) { try { var mediaContainerPart = queryItem.Parts.Where(w => w.Fields.SingleOrDefault(w1 => w1.GetType() == typeof(TextField)) != null).FirstOrDefault(); TextField textfield = (TextField)mediaContainerPart.Fields.FirstOrDefault(w => w.GetType() == typeof(TextField)); bodyText = textfield.Value; } catch { } } else { bodyText = body.Text; } var mediaUrl = ""; try { var mediaContainerPart = queryItem.Parts.Where(w => w.Fields.SingleOrDefault(w1 => w1.GetType() == typeof(MediaLibraryPickerField)) != null && w.GetType() == typeof(ContentPart)).FirstOrDefault(); MediaLibraryPickerField mediafield = (MediaLibraryPickerField)mediaContainerPart.Fields.FirstOrDefault(w => w.GetType() == typeof(MediaLibraryPickerField)); mediaUrl = mediafield.MediaParts.ToList()[0].MediaUrl; } catch { } string displayUrl = ContentItemExtensions.ItemDisplayUrl(new UrlHelper(new RequestContext( new HttpContextWrapper(HttpContext.Current), new RouteData()), RouteTable.Routes), queryItem); var HLItem = new HighlightsItemViewModel { Title = title != null ? title.Title : "", TitleSize = "", Body = bodyText, ItemOrder = order, LinkTarget = Enums.LinkTargets._self, LinkUrl = displayUrl, GroupShapeName = viewsInfos.SuffixShapeName.Replace("_", ""), LinkText = T("Details").Text, MediaUrl = mediaUrl, Video = false, GroupDisplayTemplate = displayTemplate, GroupDisplayPlugin = displayPlugin, Content = queryItem }; fromQueryItems.Add(HLItem); order++; } return(fromQueryItems); }