/// <summary> /// Finds the language of this page /// </summary> /// <param name="site">Site</param> /// <param name="page">Page to get language for</param> /// <returns>Language</returns> public static string GetLanguage(IContextSite site, IContextPage page) { const string LANG_VAR = "lang"; var lang = page.Data.GetOrDefault <string>(LANG_VAR); if (string.IsNullOrEmpty(lang)) { lang = site.Configuration.GetOrDefault <string>(LANG_VAR); } return(lang); }
/// <summary> /// Build the menu based on predefined parameter /// </summary> /// <param name="menuOptName">Name of the menu parameter</param> /// <param name="site">Site</param> /// <param name="data">Metadata or configuration</param> /// <returns>Predefined menu</returns> public static IEnumerable <IContextPage> BuildPredefinedMenu(string menuOptName, IContextSite site, IContextMetadata data) { List <object> menu; if (data.TryGet(menuOptName, out menu) && menu != null) { var allPages = PageHelper.GetAllPages(site.MainPage); var menuPagesList = new List <MenuPage>(); ParsePages(menu, menuPagesList, allPages, data); return(menuPagesList); } else { return(null); } }
public ErrorItemResolver(IContextSite contextSite) { _contextSite = contextSite ?? throw new ArgumentNullException(nameof(contextSite)); }