/// <summary> /// Builds the section to section node. /// </summary> /// <param name="item">The item.</param> /// <returns>section to section node</returns> private static string BuildSectionToSectionNode(SectionToSection item) { if (item == null) { return string.Empty; } return string.Format( "<div class=\"block-name\"><div class=\"name\">{0}</div><div class=\"title\">Base Section Url: {2}, Target Url: {3}</div></div><div class=\"description\">Redirect Code: {4}, Multisites: {6}, Last Use: {5}, ID: {1}</div>", item.Name, item.ID, string.IsNullOrEmpty(item.BaseSection.Value) ? "Empty" : UrlNormalizer.EncodeUrl(UrlNormalizer.CheckPageExtension(UrlNormalizer.Normalize(item.BaseSection.Value))), item.TargetSection.TargetItem != null ? UrlNormalizer.EncodeUrl(UrlNormalizer.GetItemUrl(item.TargetSection.TargetItem)) : "Empty", item.RedirectCode != 0 ? item.RedirectCode : Configuration.RedirectStatusCode, item.LastUse.DateTime.ToString("MM/dd/yy") != "01/01/01" ? item.LastUse.DateTime.ToString("MM/dd/yy") : "Never", UrlNormalizer.EncodeUrl(RedirectProcessor.ConvertMultisites(item.Multisites))); }
/// <summary> /// Adds the section to section redirect. /// </summary> /// <param name="item">The item.</param> /// <returns>Redirect item</returns> private static RedirectItem AddSectionToSectionRedirect(Item item) { if (item == null) { return null; } var sectionToSection = new SectionToSection(item); if (string.IsNullOrEmpty(sectionToSection.BaseSection.Value) || sectionToSection.TargetSection.TargetItem == null) { return null; } if (!CheckPresentation(sectionToSection.TargetSection.TargetItem)) { return null; } var redirectItem = new RedirectItem { ItemId = sectionToSection.ID, Target = UrlNormalizer.GetItemUrl(sectionToSection.TargetSection.TargetItem), Base = UrlNormalizer.Normalize(sectionToSection.BaseSection.Value), RedirectCode = sectionToSection.RedirectCode }; return redirectItem; }
/// <summary> /// The build node name. /// </summary> /// <param name="item"> /// The item. /// </param> /// <returns> /// The <see cref="string"/>. /// </returns> private static string BuildNodeName(Item item) { if (item == null) { return string.Empty; } var templateId = item.TemplateID.ToString(); switch (templateId) { case ItemToItem.TemplateId: var itemToItem = new ItemToItem(item); return BuildItemToItemNodeName(itemToItem); case SectionToItem.TemplateId: var sectionToItem = new SectionToItem(item); return BuildSectionToItemNode(sectionToItem); case SectionToSection.TemplateId: var sectionToSection = new SectionToSection(item); return BuildSectionToSectionNode(sectionToSection); case RegExRedirect.TemplateId: var regExRedirect = new RegExRedirect(item); return BuildRegExNodeName(regExRedirect); } return string.Format("<p>{0}</p>", item.Name); }
/// <summary> /// Adds the section to section items. /// </summary> /// <param name="item">The item.</param> /// <returns>List with items redirects</returns> private static IEnumerable<RedirectItem> AddSectionToSectionDescendants(Item item) { if (item == null) { return null; } var sectionToSection = new SectionToSection(item); if (string.IsNullOrEmpty(sectionToSection.BaseSection.Value) || sectionToSection.TargetSection.TargetItem == null) { return null; } var list = AddSectionDescendants( sectionToSection.TargetSection.TargetItem.ID.ToString(), sectionToSection.BaseSection.Value, UrlNormalizer.GetItemUrl(sectionToSection.TargetSection.TargetItem), sectionToSection.ID, sectionToSection.RedirectCode); return list; }