public IAsyncResult BeginProcessRequest(HttpContext context, AsyncCallback cb, Object obj) { Boolean useFullValidation = AWS.Utils.WebUtils.GetFromString(ConfigurationManager.AppSettings["full-image-security-validation"], false); String imagePath; String requestPath = context.Request.FilePath; if (useFullValidation) { Boolean isThumbinal = context.Request.QueryString["thumb"] == null ? false:true; requestPath = context.Request.QueryString["id"]; /*else * { * if( (idx = requestPath.LastIndexOf(".")) != -1 ) * requestPath = requestPath.Substring( 0, idx ); * * if( (idx = requestPath.ToLower().LastIndexOf("_thumb")) != -1 ) * { * isThumbinal = true; * requestPath = requestPath.Substring( 0, idx ); * } * else * isThumbinal = false; * }*/ SiteMapProvider prov = AWS.Utils.WebUtils.GetCurrProvider(context.Request); SiteMapNode nd = prov.FindSiteMapNodeFromKey(requestPath); if (nd == null) { imagePath = context.Server.MapPath(requestPath); } else { requestPath = GetClientPath(nd, isThumbinal); if (!prov.SecurityTrimmingEnabled || prov.IsAccessibleToUser(context, nd)) { imagePath = context.Server.MapPath(requestPath); } else { throw new Exception(String.Format("Access to image is denied: '{0}'." + requestPath)); } } } else { imagePath = context.Server.MapPath(requestPath); } MyAsyncRequestState st = new MyAsyncRequestState(context, cb, obj, imagePath); Thread t = new Thread(new ThreadStart(st.ProcessRequest)); t.Start(); return(st); }
private SiteMapNode GetTopNodes() { SiteMapProvider smp = PortalSiteMapProvider.GlobalNavSiteMapProvider; SiteMapNode rootMap = smp.RootNode; return(rootMap); }
public static SiteMapNode GetCurrentNode(SiteMapProvider selectedSiteMapProvider) { // get the node matching the current URL location var currentNode = selectedSiteMapProvider.CurrentNode; // if there is no node matching the current URL path, // remove parts until we get a hit if (currentNode == null) { var url = HttpContext.Current.Request.Url.LocalPath; while (url.Length > 0) { // see if we can find a matching node currentNode = selectedSiteMapProvider.FindSiteMapNode(url); // if we get a hit, stop if (currentNode != null) { break; } // if not, remove the last path item var lastSlashlocation = url.LastIndexOf("/"); if (lastSlashlocation < 0) { break; // protects us from malformed URLs } url = url.Remove(lastSlashlocation); } } return(currentNode); }
private static void Initialise() { if (!_initialised) { lock (SyncLock) { if (!_initialised) { try { // Create the collections. _excludedWildcards = new List <string>(); _excludedExtensions = new List <string>(); // Iterate over all nodes. _siteMapProvider = SiteMap.Provider; var siteMapNode = _siteMapProvider.RootNode as NavigationSiteMapNode; if (siteMapNode != null) { Initialise(siteMapNode); } } catch (Exception ex) { throw new ApplicationException("Failed to load navigation manager configuration from the site map.", ex); } _initialised = true; } } } }
protected UnboundSiteMapProvider CloneNodes(SiteMapProvider srcProvider, int levelCount) // levelCount >= 1 { UnboundSiteMapProvider provider = new UnboundSiteMapProvider(); AddRecursive(provider, provider.RootNode, srcProvider.RootNode, levelCount); return(provider); }
private SiteMapNode GetSiteMapRootNodeOfCurrentWeb() { SiteMapProvider smp = PortalSiteMapProvider.GlobalNavSiteMapProvider; SiteMapNode rootMap = smp.RootNode; return(rootMap); }
public static SiteMapNode FindByKey(this SiteMapProvider provider, string key) { if (key.IsEmpty()) { return(null); } if (HttpContext.Current != null) { // The standard implementation requires HttpContext. return(provider.RootNode.GetAllNodes().OfType <SiteMapNode>().FirstOrDefault(n => n.ResourceKey == key)); } else { var root = AppDomain.CurrentDomain.GetPath("Web.SiteMap").AsFile().Get(x => x.Exists() ? x : null) .Get(x => x.ReadAllText().To <XDocument>().Root); if (root != null) { root.RemoveNamespaces(); } var node = root?.Descendants().OrEmpty().FirstOrDefault(x => x.GetValue <string>("@resourceKey") == key); if (node == null) { return(null); } return(new SiteMapNode(provider, key, node.GetValue <string>("@url"), node.GetValue <string>("@title"), node.GetValue <string>("@description"))); } }
public FileSiteMapNode(SiteMapProvider provider, string url) : base(provider, url) { Url = url; Title = VirtualPathUtility.GetFileName(url); FileExtension = VirtualPathUtility.GetExtension(url).TrimStart('.'); }
public mojoSiteMapNode( SiteMapProvider provider, string key, string url) : base(provider, key, url) { }
private SiteMapNode GetSiteMapRootNodeofCurrentWeb() { SiteMapProvider siteMapProvider = PortalSiteMapProvider.CombinedNavSiteMapProvider; SiteMapNode rootNode = siteMapProvider.RootNode; return(rootNode); }
public PortalViewContext(ISettingDataAdapter settings, ISiteMarkerDataAdapter siteMarkers, ISnippetDataAdapter snippets, IWebLinkSetDataAdapter webLinks, IAdDataAdapter ads, IPollDataAdapter polls, IEntityUrlProvider urlProvider, SiteMapProvider siteMapProvider = null, string portalName = null, RequestContext requestContext = null) { if (settings == null) { throw new ArgumentNullException("settings"); } if (siteMarkers == null) { throw new ArgumentNullException("siteMarkers"); } if (snippets == null) { throw new ArgumentNullException("snippets"); } if (urlProvider == null) { throw new ArgumentNullException("urlProvider"); } if (webLinks == null) { throw new ArgumentNullException("webLinks"); } if (ads == null) { throw new ArgumentNullException("ads"); } if (polls == null) { throw new ArgumentNullException("polls"); } SiteMapProvider = siteMapProvider ?? (SiteMap.Enabled ? SiteMap.Provider : null); PortalName = portalName; RequestContext = requestContext; Settings = settings; SiteMarkers = siteMarkers; Snippets = snippets; UrlProvider = urlProvider; WebLinks = webLinks; Ads = ads; Polls = polls; _currentSiteMapNode = new Lazy <SiteMapNode>(GetCurrentSiteMapNode, LazyThreadSafetyMode.None); _currentSiteMapNodeAncestors = new Lazy <SiteMapNode[]>(GetCurrentSiteMapNodeAncestors, LazyThreadSafetyMode.None); _entity = new Lazy <IPortalViewEntity>(GetEntity, LazyThreadSafetyMode.None); _user = new Lazy <IPortalViewEntity>(GetUser, LazyThreadSafetyMode.None); _website = new Lazy <IPortalViewEntity>(GetWebsite, LazyThreadSafetyMode.None); _websiteAccessPermissionProvider = new Lazy <IWebsiteAccessPermissionProvider>(GetWebsiteAccessPermissionProvider, LazyThreadSafetyMode.None); }
//protected void Page_Load(object sender, EventArgs e) //{ // //} /// <summary> /// /// </summary> /// <param name="e"></param> protected override void OnPreRender(EventArgs e) { //get current sitemap node to determine page icon and title SiteMapProvider objSiteMapProvider = SiteMap.Providers["RootSiteMapProvider"]; System.Diagnostics.Debug.Assert(objSiteMapProvider != null); SiteMapNode objCurrentNode = objSiteMapProvider.CurrentNode; if (objCurrentNode != null) //This is for defaultErr.aspx which is not referenced as a node { //set page icon and title Page.Header.Title = Resources.Web.glossary.App_Name + " - " + objCurrentNode.Title; if (string.IsNullOrEmpty(PageTitle.Text)) { PageTitle.Text = objCurrentNode.Title; } if (string.IsNullOrEmpty(PageTitle.ImageUrl)) { PageTitle.ImageUrl = Icons.GetIcon32(objCurrentNode["image"]); } } //Display errors of postback events if (Page.Session[Constants.LastError] != null) //&& Page.IsPostBack { InfoBox.Type = InfoBoxType.Error; InfoBox.Text = BODisplay.Encode(Session[Constants.LastError]); Session[Constants.LastError] = null; } //Required to avoid "Script controls may not be registered before PreRender." base.OnPreRender(e); }
/// <exclude /> public SiteMapNode FindSiteMapNodeFromKey(SiteMapProvider provider, string key) { var pageId = new Guid(key); var page = PageManager.GetPageById(pageId); return(page != null ? new CmsPageSiteMapNode(provider, page) : null); }
private void LoadBreadCrumb() { SiteMapProvider siteMapProvider = SiteMap.Providers["cms"]; SiteMapNodeCollection collection = new SiteMapNodeCollection(); string stt2s = siteMapProvider.RootNode.Title; SiteMapNode currentNode = siteMapProvider.CurrentNode; if (currentNode == null) { currentNode = siteMapProvider.RootNode; } string stts = currentNode.Url; string stt1s = Page.Request.Url.AbsolutePath; if (string.Compare(currentNode.Url, Page.Request.Url.AbsolutePath, true) == 0) { collection.Add(currentNode); } while (currentNode.ParentNode != null) { currentNode = currentNode.ParentNode; collection.Add(currentNode); } StringBuilder html = new StringBuilder(); html.Append("<ul class='page-breadcrumb breadcrumb'>"); for (int count = collection.Count - 1; count > -1; count--) { string title = collection[count].Title; if (count == 0) { if ((collection[count].Url == "/Admin/UserRoles.aspx")) { html.AppendFormat("<li>{1}</li>", collection[count].Url, title); } else { html.AppendFormat("<li><a href=\"{0}\">{1}</a></li>", collection[count].Url, title); } } else if (count == collection.Count - 1) { html.AppendFormat("<li><i class=\"icon-home\"></i><a href=\"{0}\">Home</a> <i class='fa fa-angle-right'></i></li>", collection[count].Url); } else { html.AppendFormat("<li><a href=\"{0}\">{1}</a><i class='fa fa-angle-right'></i></li>", collection[count].Url, title); } } html.Append("</ul>"); this.ltrlBreadCrumb.Text = html.ToString(); }
private void WriteFullSiteMap(SiteMapProvider provider) { _writer.WriteStartElement("urlset", _ns); WriteElement(provider.RootNode); _writer.WriteEndElement(); }
private void WriteFullSiteMap(XmlWriter writer, SiteMapProvider provider) { writer.WriteStartElement("urlset", SiteMapNamespace); WriteElement(writer, provider.RootNode, new HashSet <string>()); writer.WriteEndElement(); }
public CSiteMapNode( SiteMapProvider provider, string key, string url, string title) : base(provider, key, url, title) { }
public mojoSiteMapNode( SiteMapProvider provider, string key, string url, string title, string description) : base(provider, key, url, title, description) { }
public TridionSiteMapNode(SiteMapProvider provider, string key, string uri, string url, string title, string description, IList roles, NameValueCollection attributes, NameValueCollection explicitResourceKeys, string implicitResourceKey) : base(provider, key, url, title, description, roles, attributes, explicitResourceKeys, implicitResourceKey) { if (url.StartsWith("tcm:")) { Url = MakeDummyUrl(url); } Uri = uri; }
/// <summary> /// Initializes a new instance of the <see cref="CmsPageSiteMapNode"/> class. /// </summary> /// <param name="provider">The provider.</param> /// <param name="page">The page.</param> public CmsPageSiteMapNode(SiteMapProvider provider, IPage page) : base(provider, page.Id.ToString(), PageUrls.BuildUrl(page), page.MenuTitle, page.Description) { Page = page; DocumentTitle = page.Title; LastModified = page.ChangeDate; Priority = 5; Culture = page.DataSourceId.LocaleScope; }
private static void SetCachedProvider(string cultureID, SiteMapProvider provider) { HttpRuntime.Cache.Insert( ProviderCachePrefix + "_" + UrlManager.IsFacebook() + cultureID, provider, null, Cache.NoAbsoluteExpiration, Cache.NoSlidingExpiration, CacheItemPriority.AboveNormal, // Site map is costly to construct null); }
private void CreateMenu() { SiteMapProvider provider = SiteMap.Provider; ListMenu lm = new ListMenu { ULClass = "clear" }; this.CreateMenuRecursively(provider.RootNode.ChildNodes, lm.Items); litNavbar.Text = lm.ToString(); }
public IEnumerable <SiteMapNode> GetVirtualNodes(SiteMapProvider provider) { List <SiteMapNode> list = new List <SiteMapNode>(); var siteMapNode = new SiteMapNode( provider, Guid.NewGuid().ToString(), string.Empty, DummySiteMapNodeTitle, "description"); list.Add(siteMapNode); return(list); }
/// <summary> /// Creates a new MvcSiteMapProvider HtmlHelper. /// </summary> /// <param name="helper">The helper.</param> /// <param name="providerName">Name of the sitemap provider.</param> /// <returns> /// A <see cref="MvcSiteMapHtmlHelper"/> instance /// </returns> public static MvcSiteMapHtmlHelper MvcSiteMap(this HtmlHelper helper, string providerName) { SiteMapProvider provider = SiteMap.Providers[providerName]; if (provider == null) { throw new UnknownSiteMapProviderException( string.Format(Resources.Messages.UnknownSiteMapProvider, providerName)); } return(new MvcSiteMapHtmlHelper(helper, provider)); }
public static SiteMapProvider GetProvider(string cultureID) { SiteMapProvider provider = GetCachedProvider(cultureID); if (provider == null) { provider = new VevoSiteMapProvider(cultureID); SetCachedProvider(cultureID, provider); } return(provider); }
public SiteMapDrop(IPortalLiquidContext portalLiquidContext, SiteMapProvider siteMap) : base(portalLiquidContext) { if (siteMap == null) { throw new ArgumentNullException("siteMap"); } SiteMap = siteMap; _current = new Lazy <SiteMapNodeDrop>(() => GetDrop(SiteMap.CurrentNode), LazyThreadSafetyMode.None); _root = new Lazy <SiteMapNodeDrop>(() => GetDrop(SiteMap.RootNode), LazyThreadSafetyMode.None); }
/// <summary> /// Constructs a new site map node. /// </summary> /// <param name="provider">Provider used to construct this site map node.</param> /// <param name="key">Unique key.</param> /// <param name="url">Url to render.</param> /// <param name="title">Title of page.</param> /// <param name="description">Description of page.</param> /// <param name="rewriteUrl">Url to use for url rewriting.</param> /// <param name="lastModified">Last modification date.</param> protected CrmSiteMapNode( SiteMapProvider provider, string key, string url, string title, string description, string rewriteUrl, DateTime lastModified) : base(provider, key, url, title, description) { RewriteUrl = rewriteUrl; LastModified = lastModified; }
protected override void OnInit(EventArgs e) { base.OnInit(e); SiteMapProvider siteMapProvider = SiteMap.Providers[_siteMapProvider]; if (siteMapProvider == null) { return; } InitPortalSiteMapProvider(siteMapProvider); }
/// <exclude /> public SiteMapNode FindSiteMapNodeFromKey(SiteMapProvider provider, string key) { if (Guid.TryParse(key, out var pageId)) { var page = PageManager.GetPageById(pageId); if (page != null) { return(new CmsPageSiteMapNode(provider, page)); } } return(null); }
private void InitPortalSiteMapProvider(SiteMapProvider siteMapProvider) { if (siteMapProvider is PortalSiteMapProvider) { _provider = siteMapProvider as PortalSiteMapProvider; _provider.DynamicChildLimit = 0; _provider.EncodeOutput = true; _provider.IncludeAuthoredLinks = _includeAuthoredLinks; _provider.IncludeHeadings = _includeHeadings; _provider.IncludePages = GetIncludeOption(_includePages); _provider.IncludeSubSites = GetIncludeOption(_includeSubSites); } }
// Constructors public SiteMapResolveEventArgs(HttpContext context, SiteMapProvider provider) { }
public void Add(SiteMapProvider provider) { }
public void AddArray(SiteMapProvider[] providerArray) { }
public SiteMapNode(SiteMapProvider provider, string key, string url, string title, string description) { }
public SiteMapNode(SiteMapProvider provider, string key, string url, string title, string description, System.Collections.IList roles, System.Collections.Specialized.NameValueCollection attributes, System.Collections.Specialized.NameValueCollection explicitResourceKeys, string implicitResourceKey) { }
public SiteMapNode(SiteMapProvider provider, string key, string url) { }
/// <summary> /// Initializes a new instance of the SiteMapNode class /// </summary> /// <param name="provider">Провайдер карты сайта</param> /// <param name="key">Ключ ветви</param> public SiteMapNode(SiteMapProvider provider, String key) : base(provider, key) { }
private void PrepareSynchronizationPath(PXTreeSyncEventArgs e, SiteMapProvider prov) { List<string> path = new List<string>(); System.Text.StringBuilder result = new System.Text.StringBuilder(); SiteMapNode node = prov.FindSiteMapNodeFromKey(e.SyncNodeKey); while (node != null && node.ParentNode != prov.RootNode) { path.Add(node.Key); node = node.ParentNode; } for (int i = path.Count - 1; i >= 0; i--) { result.Append(path[i]); result.Append('|'); } if (result.Length != 0) result = result.Remove(result.Length - 1, 1); e.NodePath = result.ToString(); }