/// <summary> /// Gets the package from the page template or from the Current PageSiteNode. /// </summary> /// <returns></returns> private string GetPackageFromPageInfo() { string packageName = null; var context = SystemManager.CurrentHttpContext; if (context.Items.Contains("IsTemplate") && (bool)context.Items["IsTemplate"]) { var templateId = PackageManager.GetEditedContainerKey(context); packageName = this.GetPackageFromTemplateId(templateId); } else if (context.Request.Path.Contains("/Sitefinity/SFNwslttrs")) { var pageNodeId = PackageManager.GetEditedContainerKey(context); packageName = this.GetPackageFromNodeId(pageNodeId); } else if (context.Request.Path.Contains("/Sitefinity/Versioning")) { var pageNodeId = new Guid(context.Request.RequestContext.RouteData.Values["itemId"].ToString()); var page = PageManager.GetManager().GetPageData(pageNodeId); if (page.NavigationNodeId != Guid.Empty) { packageName = this.GetPackageFromNodeId(page.NavigationNodeId.ToString()); } if (packageName == null) { packageName = this.GetPackageFromTemplate(page.Template); } } else { var requestContext = context.Request.RequestContext; var currentNode = requestContext.RouteData.DataTokens["SiteMapNode"] as PageSiteNode; if (currentNode == null) { currentNode = SiteMapBase.GetActualCurrentNode(); } packageName = currentNode != null?this.GetPackageFromNodeId(currentNode.Id.ToString()) : null; } return(packageName); }
/// <summary> /// Gets the package from the page template or from the Current PageSiteNode. /// </summary> /// <returns></returns> private string GetPackageFromPageInfo() { string packageName; var context = SystemManager.CurrentHttpContext; if (context.Items.Contains("IsTemplate") && (bool)context.Items["IsTemplate"]) { var templateId = PackageManager.GetEditedContainerKey(context); packageName = this.GetPackageFromTemplateId(templateId); } else if (context.Request.Path.Contains("/Sitefinity/SFNwslttrs")) { var pageNodeId = PackageManager.GetEditedContainerKey(context); packageName = this.GetPackageFromNodeId(pageNodeId); } else { var currentNode = SiteMapBase.GetActualCurrentNode(); packageName = currentNode != null?this.GetPackageFromNodeId(currentNode.Id.ToString()) : null; } return(packageName); }