Esempio n. 1
0
        public IntegrationProvider GetByGroupId(int groupId)
        {
            var provider = Collection.FirstOrDefault(c => c.TEGroupId == groupId);

            if (provider == null)
            {
                var mappedGroups = Collection.Select(c => c.TEGroupId).ToList();
                var group        = TEHelper.GetGroupById(groupId);
                var relativeUrl  = new StringBuilder();

                while (group.Id.HasValue && group.ParentGroupId >= 0 && !mappedGroups.Contains(group.Id.Value))
                {
                    relativeUrl.Insert(0, string.Format("{0}/", group.Key));
                    group = TEHelper.GetGroupById(group.ParentGroupId);
                }

                provider = Collection.FirstOrDefault(c => c.TEGroupId == group.Id);

                if (provider != null)
                {
                    provider.TEGroupId = groupId;
                    provider.SPSiteURL = string.Format("{0}/{1}", provider.SPSiteURL.TrimEnd('/'), relativeUrl);
                    provider.Initialize();
                    return(provider);
                }
            }

            return(provider);
        }
        public void Initialize()
        {
            try
            {
                var web = SPSite.OpenWeb(SPSiteURL, Authentication);

                SPSiteName = web.Title;
                SPWebID    = web.WebId;
                SPSiteID   = web.SiteId;
            }
            catch (Exception ex)
            {
                EventLogs.Warn(String.Format(IntegrationManagerLoadError, ex.GetType().Name, ex.Message), "Integration Manager", 468626, CSContext.Current.SettingsID);
            }

            TEGroupName = TEHelper.GetGroupName(TEGroupId);
        }