private static Dictionary <Guid, PermissionRuleSet> CalculatePermissionsForAllSites() { Dictionary <Guid, PermissionRuleSet> newRules = new Dictionary <Guid, PermissionRuleSet>(); var allPermissions = new PermissionRepository().Find().Where(x => x.SecurityModel == ModelName).ToLookup(x => x.SecuredResourceId); var siteRepository = new SiteRepository(); foreach (var site in siteRepository.Find()) { var subDict = CalculatePermissionsForSite(site, allPermissions); foreach (var kvp in subDict) { newRules.Add(kvp.Key, kvp.Value); } } return(newRules); }
public Collection GetCollectionForProcessing(XmlNode siteData) { string siteName = siteData["Folder"].InnerText; CameraSite site = SiteRepository.Find(s => s.Name == siteName).FirstOrDefault(); Collection collection = null; if (site == null) { site = new CameraSite(); site.Name = siteData["Folder"].InnerText; site.DirectoryName = siteData["Folder"].InnerText; site.ContainerID = Guid.NewGuid().ToString(); if (siteData["Location"].Attributes["latitude"].Value != String.Empty) { site.Latitude = Convert.ToDouble(siteData["Location"].Attributes["latitude"].Value); site.Longitude = Convert.ToDouble(siteData["Location"].Attributes["longitude"].Value); } var county = siteData["County"].InnerText; var state = siteData["State"].InnerText; site.CountyFips = DMRepository.GetFipsForCountyAndState(county, state); collection = new Collection() { ContainerID = site.ContainerID, Name = site.Name, Site = site, Status = CollectionStatus.PROCESSING, Type = CollectionType.SITE }; CollectionRepository.Insert(collection); SiteRepository.Insert(site); } else { collection = CollectionRepository.Find(c => c.Site.ID == site.ID).FirstOrDefault(); collection.Status = CollectionStatus.PROCESSING; CollectionRepository.Update(collection); } return(collection); }
public static Site GetSiteToManage() { if (HttpContext.Current == null) { return(null); } var siteRepository = new SiteRepository(); var allSites = siteRepository.Find(); Guid siteId = Guid.Empty; var siteToManageRaw = HttpContext.Current.Request["siteId"]; if (!string.IsNullOrWhiteSpace(siteToManageRaw)) { siteId = new Guid(siteToManageRaw); } else if (allSites.Any()) { siteId = allSites.First(x => x.IsFrontendSite).ContentId; } return(allSites.Single(x => x.ContentId == siteId)); }