/// <summary> /// Builds the name of the item to item node. /// </summary> /// <param name="item">The item.</param> /// <returns>item to item node name</returns> private static string BuildItemToItemNodeName(ItemToItem item) { if (item == null) { return string.Empty; } var targetUrl = "Empty"; if (!string.IsNullOrEmpty(item.TargetItem.Url)) { targetUrl = item.TargetItem.IsInternal ? UrlNormalizer.GetItemUrl(item.TargetItem.TargetItem) : item.TargetItem.Url; } return string.Format( "<div class=\"block-name\"><div class=\"name\">{0}</div><div class=\"title\">Base Url: {2}, Target Url: {3}</div></div><div class=\"description\">Redirect Code: {4}, Last Use: {5}, ID: {1}</div>", item.Name, item.ID, string.IsNullOrEmpty(item.BaseItem.Value) ? "Empty" : UrlNormalizer.CheckPageExtension(UrlNormalizer.Normalize(item.BaseItem.Value)), targetUrl, 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"); }
/// <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 item to item redirect. /// </summary> /// <param name="item">The item.</param> /// <returns>Redirect item</returns> private static RedirectItem AddItemToItemRedirect(Item item) { if (item == null) { return null; } var itemToItem = new ItemToItem(item); if (string.IsNullOrEmpty(itemToItem.TargetItem.Url) || string.IsNullOrEmpty(itemToItem.BaseItem.Value)) { return null; } if (!CheckPresentation(itemToItem.TargetItem.TargetItem)) { return null; } var external = true; var targetUrl = itemToItem.TargetItem.Url; if (itemToItem.TargetItem.IsInternal) { targetUrl = UrlNormalizer.GetItemUrl(itemToItem.TargetItem.TargetItem); external = false; } var redirectItem = new RedirectItem { ItemId = itemToItem.ID, Target = targetUrl, TargetQueryString = itemToItem.TargetItem.QueryString, Base = UrlNormalizer.CheckPageExtension(UrlNormalizer.Normalize(itemToItem.BaseItem.Value)), External = external, RedirectCode = itemToItem.RedirectCode }; return redirectItem; }