protected void RemoveSiteAttributes(SiteInfo siteInfo) { Item sFolder = MasterDB.GetItem(Constants.Paths.Sites); if (sFolder != null) { Item siteItem = sFolder.Axes.GetChild(siteInfo.Name); //set login url on the site node using (new EditContext(siteItem)) { siteItem[Sitecore.Extranet.Core.Constants.ExtranetAttributes.LoginPage] = string.Empty; } IEnumerable <Item> atts = siteItem.Axes.GetDescendants().Where(a => a.Template.IsID(Constants.TemplateIDs.SiteAttribute) && Sitecore.Extranet.Core.Constants.ExtranetAttributes.Keys.Contains(a.Key)); if (atts != null && atts.Any()) { foreach (Item a in atts) { a.Recycle(); } } SitecoreUtility.PublishContent(siteItem, true); } else { FileUtility.RemoveFile(string.Format(Sitecore.Extranet.Core.Wizards.ExtranetSetupWizard.Constants.FilePatterns.ExtranetSiteConfig, siteInfo.Name)); } }
protected void RemoveExtranetPages(SiteInfo siteItem) { Item HomeItem = MasterDB.GetItem(string.Format("{0}{1}", siteItem.RootPath, siteItem.StartItem)); IEnumerable <Item> pages = HomeItem.Axes.GetDescendants().Where(a => a.Template.IsID(Constants.TemplateIDs.ExtranetFolder) || a.Template.Is(Constants.TempateName.ExtranetLogin)); if (pages == null || !pages.Any()) { return; } foreach (Item p in pages) { Item par = p.Parent; p.Recycle(); SitecoreUtility.PublishContent(par, true); } }