示例#1
0
        public override void Execute(Guid targetInstanceId)
        {
            WBLogging.Migration.HighLevel("WBMigrationTimerJob.Execute(): Starting: " + Title);

            WBFarm farm = WBFarm.Local;


            WBLogging.Migration.Verbose("WBMigrationTimerJob.Execute(): farm.MigrationType : " + farm.MigrationType);
            WBLogging.Migration.Verbose("WBMigrationTimerJob.Execute(): farm.MigrationControlListUrl : " + farm.MigrationControlListUrl);
            WBLogging.Migration.Verbose("WBMigrationTimerJob.Execute(): farm.MigrationControlListView : " + farm.MigrationControlListView);
            WBLogging.Migration.Verbose("WBMigrationTimerJob.Execute(): farm.MigrationMappingListUrl : " + farm.MigrationMappingListUrl);
            WBLogging.Migration.Verbose("WBMigrationTimerJob.Execute(): farm.MigrationMappingListView : " + farm.MigrationMappingListView);
            WBLogging.Migration.Verbose("WBMigrationTimerJob.Execute(): farm.MigrationItemsPerCycle : " + farm.MigrationItemsPerCycle);

            WBLogging.Migration.Verbose("WBMigrationTimerJob.Execute(): running as user : "******"WBMigrationTimerJob.Execute(): No migration type has been set so doing nothing.");
            }
            else if (!KNOWN_MIGRATION_SOURCES.Contains(farm.MigrationSourceSystem))
            {
                WBLogging.Migration.HighLevel("WBMigrationTimerJob.Execute(): The migration source system wasn't recognised: " + farm.MigrationSourceSystem);
            }
            else
            {
                MigrationSourceSystem = farm.MigrationSourceSystem;

                RunOneMigrationCycle();
            }

            WBLogging.Migration.HighLevel("WBMigrationTimerJob.Execute(): Finished: " + Title);
        }
示例#2
0
        public static WBTaxonomy GetOrCreate(SPSite site, String termSetName)
        {
            WBFarm     farm     = WBFarm.Local;
            WBTaxonomy taxonomy = new WBTaxonomy(site,
                                                 farm.TermStoreName,
                                                 farm.TermStoreGroupName,
                                                 termSetName);

            TermSet termSet = null;

            try
            {
                termSet = taxonomy.Group.TermSets[termSetName];
            }
            catch (Exception exception)
            {
                WBLogging.Generic.Verbose("Couldn't find a termset of the name so creating one: " + termSetName);

                termSet = taxonomy.Group.CreateTermSet(termSetName);
                taxonomy.CommitAll();
            }

            taxonomy._termSet = termSet;

            return(taxonomy);
        }
示例#3
0
        protected void UpdateButton_OnClick(object sender, EventArgs e)
        {
            WBFarm farm = WBFarm.Local;

            farm.MigrationType = MigrationType.SelectedValue;

            farm.MigrationSourceSystem = MigrationSourceSystem.Text;

            farm.MigrationControlListUrl  = MigrationControlListUrl.Text;
            farm.MigrationControlListView = MigrationControlListView.Text;

            farm.MigrationMappingListUrl  = MigrationMappingListUrl.Text;
            farm.MigrationMappingListView = MigrationMappingListView.Text;

            farm.MigrationSubjectsListUrl  = MigrationSubjectsListUrl.Text;
            farm.MigrationSubjectsListView = MigrationSubjectsListView.Text;

            farm.MigrationItemsPerCycle = ItemsPerCycle.Text;

            farm.MigrationUserName = UserName.Text;
            farm.MigrationPassword = UserPassword.Text;

            farm.Update();

            SPUtility.Redirect("/applications.aspx", SPRedirectFlags.Static, Context);
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            subjectTagsTaxonomy = WBTaxonomy.GetSubjectTags(SPContext.Current.Site);
            subjectTagsTaxonomy.InitialiseTaxonomyControl(SubjectTag, "Subject Tag", false);

            farm     = WBFarm.Local;
            routings = farm.SubjectTagsRecordsRoutings(subjectTagsTaxonomy);

            if (!IsPostBack)
            {
                RouteIndex.Value = Request.QueryString["RouteIndex"];

                int index;
                if (Int32.TryParse(RouteIndex.Value, out index))
                {
                    WBSubjectTagRecordsRoutings routing = routings[index];

                    if (routing != null)
                    {
                        SubjectTag.Text               = routing.SubjectTag.UIControlValue;
                        PublicDocumentsLibrary.Text   = routing.PublicDocumentsLibrary;
                        ExtranetDocumentsLibrary.Text = routing.ExtranetDocumentsLibrary;
                    }
                }
            }
        }
示例#5
0
        protected override IEnumerable <SPDiagnosticsArea> ProvideAreas()
        {
            TraceSeverity debugTraceSeverity = TraceSeverity.None;

            WBFarm farm = WBFarm.Local;

            if (farm.FarmInstance == WBFarm.FARM_INSTANCE__DEVELOPMENT_FARM)
            {
                debugTraceSeverity = TraceSeverity.High;
            }

            List <SPDiagnosticsArea> areas = new List <SPDiagnosticsArea> {
                new SPDiagnosticsArea(LOGGING_AREA_NAME, new List <SPDiagnosticsCategory> {
                    new SPDiagnosticsCategory(CATEGORY__TEAMS, TraceSeverity.Monitorable, EventSeverity.Information),
                    new SPDiagnosticsCategory(CATEGORY__RECORDS_TYPES, TraceSeverity.Monitorable, EventSeverity.Information),
                    new SPDiagnosticsCategory(CATEGORY__TIMER_TASKS, TraceSeverity.Monitorable, EventSeverity.Information),
                    new SPDiagnosticsCategory(CATEGORY__WORK_BOXES, TraceSeverity.Monitorable, EventSeverity.Information),
                    new SPDiagnosticsCategory(CATEGORY__WORK_BOX_COLLECTIONS, TraceSeverity.Monitorable, EventSeverity.Information),
                    new SPDiagnosticsCategory(CATEGORY__MIGRATION, TraceSeverity.Monitorable, EventSeverity.Information),
                    new SPDiagnosticsCategory(CATEGORY__QUERIES, TraceSeverity.Monitorable, EventSeverity.Information),
                    new SPDiagnosticsCategory(CATEGORY__CONFIG, TraceSeverity.Monitorable, EventSeverity.Information),
                    new SPDiagnosticsCategory(CATEGORY__DEBUG, debugTraceSeverity, EventSeverity.Information),
                    new SPDiagnosticsCategory(CATEGORY__GENERIC, TraceSeverity.Monitorable, EventSeverity.Information)
                })
            };

            return(areas);
        }
示例#6
0
        private void AddFilesDetailsFromAlfresco(WBMigrationMapping mapping, SPSite controlSite, SPWeb controlWeb, SPList controlList, SPView controlView, SPListItem migrationItem, string folderPath)
        {
            WBFarm farm           = WBFarm.Local;
            string csvFileDetails = WBUtils.GetURLContents(folderPath, farm.MigrationUserName, farm.MigrationPassword);

            string[] filesDetails = csvFileDetails.Split('\n');

            foreach (string fileDetails in filesDetails)
            {
                string[] parts = fileDetails.Split(',');

                if (parts.Length > 3)
                {
                    // So we're only going to add new file paths to the migration control list:
                    if (WBUtils.FindItemByColumn(controlSite, controlList, WBColumn.SourceFilePath, parts[0]) == null)
                    {
                        SPListItem newMigrationItem = controlList.AddItem();

                        newMigrationItem.WBxCopyFrom(migrationItem, WBColumn.MappingPath);
                        newMigrationItem.WBxSet(WBColumn.SourceFilePath, parts[0]);
                        newMigrationItem.WBxSet(WBColumn.FileOrFolder, WBColumn.FILE_OR_FOLDER__FILE);
                        newMigrationItem.WBxSet(WBColumn.Title, parts[1]);
                        newMigrationItem.WBxSet(WBColumn.SourceID, parts[2]);
                        newMigrationItem.WBxSet(WBColumn.ReferenceID, parts[4]);
                        newMigrationItem.WBxSet(WBColumn.ReferenceDateString, parts[5]);
                        newMigrationItem.WBxSet(WBColumn.DeclaredDateString, parts[7]);

                        newMigrationItem.Update();
                    }
                }
            }

            migrationItem.WBxSet(WBColumn.MigrationStatus, WBColumn.MIGRATION_STATUS__DONE);
            migrationItem.Update();
        }
示例#7
0
        protected void Page_Load(object sender, EventArgs e)
        {
            WBFarm farm = WBFarm.Local;


            if (!IsPostBack)
            {
                MigrationType.DataSource = WBFarm.GetMigrationTypes();
                MigrationType.DataBind();
                MigrationType.WBxSafeSetSelectedValue(farm.MigrationType);

                MigrationSourceSystem.Text = farm.MigrationSourceSystem;

                MigrationControlListUrl.Text  = farm.MigrationControlListUrl;
                MigrationControlListView.Text = farm.MigrationControlListView;

                MigrationMappingListUrl.Text  = farm.MigrationMappingListUrl;
                MigrationMappingListView.Text = farm.MigrationMappingListView;

                MigrationSubjectsListUrl.Text  = farm.MigrationSubjectsListUrl;
                MigrationSubjectsListView.Text = farm.MigrationSubjectsListView;

                ItemsPerCycle.Text = farm.MigrationItemsPerCycle;

                UserName.Text     = farm.MigrationUserName;
                UserPassword.Text = "";
            }
        }
示例#8
0
文件: WBTeam.cs 项目: OliSharpe/wbf
        /// <summary>
        /// Synchronises the SharePoint SPGroup for this team from the Team Site site collection to the specified
        /// site colleciton.
        /// </summary>
        /// <param name="toSite"></param>
        public SPGroup SyncMembersGroup(SPSite toSite)
        {
            WBFarm farm = WBFarm.Local;

            using (SPSite teamsSite = new SPSite(farm.TeamSitesSiteCollectionUrl))
            {
                return(SyncMembersGroup(teamsSite, toSite));
            }
        }
示例#9
0
        public static WBTaxonomy GetSubjectTags(SPSite site)
        {
            WBFarm farm = WBFarm.Local;

            return(new WBTaxonomy(site,
                                  farm.TermStoreName,
                                  farm.TermStoreGroupName,
                                  WorkBox.TERM_SET_NAME__SUBJECT_TAGS));
        }
示例#10
0
        public static WBTaxonomy GetRecordsTypes(SPSite site)
        {
            WBFarm farm = WBFarm.Local;

            return(new WBTaxonomy(site,
                                  farm.TermStoreName,
                                  farm.TermStoreGroupName,
                                  WorkBox.TERM_SET_NAME__RECORDS_TYPES));
        }
示例#11
0
        public static WBTaxonomy GetTeams(SPSite site)
        {
            WBFarm farm = WBFarm.Local;

            return(new WBTaxonomy(site,
                                  farm.TermStoreName,
                                  farm.TermStoreGroupName,
                                  WorkBox.TERM_SET_NAME__TEAMS));
        }
示例#12
0
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                WBFarm farm = WBFarm.Local;

                FarmInstance.DataSource = WBFarm.GetFarmInstances();
                FarmInstance.DataBind();
                FarmInstance.WBxSafeSetSelectedValue(farm.FarmInstance);

                ProtectedRecordsLibraryURL.Text      = farm.ProtectedRecordsLibraryUrl;
                PublicRecordsLibraryURL.Text         = farm.PublicRecordsLibraryUrl;
                PublicExtranetRecordsLibraryURL.Text = farm.PublicExtranetRecordsLibraryUrl;

                TeamSitesSiteCollectionURL.Text = farm.TeamSitesSiteCollectionUrl;

                WBLogging.Debug("Got here");

                WBTaxonomy teams = WBTaxonomy.GetTeams(SPContext.Current.Site);

                if (teams == null)
                {
                    WBLogging.Debug("teams was null");
                }

                WBTeam systemAdminTeam = farm.SystemAdminTeam(teams);

                if (systemAdminTeam != null)
                {
                    SystemAdminTeam.Text = systemAdminTeam.FullPath;
                }
                else
                {
                    WBLogging.Debug("systemAdminTeam was null");
                    SystemAdminTeam.Text = "";
                }
                //             SystemAdminTeam.Text = farm.SystemAdminTeamGUIDString;

                OpenWorkBoxesCachedDetailsListURL.Text = farm.OpenWorkBoxesCachedDetailsListUrl;

                RecordsManagersGroupName.Text    = farm.RecordsManagersGroupName;
                RecordsSystemAdminGroupName.Text = farm.RecordsSystemAdminGroupName;

                TimerJobsManagementSiteURL.Text = farm.TimerJobsManagementSiteUrl;
                TimerJobsServerName.Text        = farm.TimerJobsServerName;

                AllWorkBoxCollections.Text = farm.AllWorkBoxCollectionsPropertyValue;

                TermStoreName.Text      = farm.TermStoreName;
                TermStoreGroupName.Text = farm.TermStoreGroupName;

                DocumentContentTypeName.Text = farm.WorkBoxDocumentContentTypeName;
                RecordContentTypeName.Text   = farm.WorkBoxRecordContentTypeName;

                SendErrorReportsTo.Text = farm.SendErrorReportEmailsTo;
            }
        }
示例#13
0
        protected void okButton_OnClick(object sender, EventArgs e)
        {
            WBFarm farm = WBFarm.Local;

            farm.FarmInstance = FarmInstance.SelectedValue;

            farm.ProtectedRecordsLibraryUrl      = ProtectedRecordsLibraryURL.Text;
            farm.PublicRecordsLibraryUrl         = PublicRecordsLibraryURL.Text;
            farm.PublicExtranetRecordsLibraryUrl = PublicExtranetRecordsLibraryURL.Text;

            farm.TeamSitesSiteCollectionUrl = TeamSitesSiteCollectionURL.Text;

            //farm.SystemAdminTeamGUIDString = SystemAdminTeam.Text;


            if (!String.IsNullOrEmpty(SystemAdminTeam.Text))
            {
                WBTaxonomy teams           = WBTaxonomy.GetTeams(SPContext.Current.Site);
                WBTeam     systemAdminTeam = teams.GetSelectedTeam(SystemAdminTeam.Text);
                if (systemAdminTeam != null)
                {
                    farm.SystemAdminTeamGUIDString = systemAdminTeam.Id.ToString();
                }
                else
                {
                    farm.SystemAdminTeamGUIDString = "";
                }
            }
            else
            {
                farm.SystemAdminTeamGUIDString = "";
            }


            farm.OpenWorkBoxesCachedDetailsListUrl = OpenWorkBoxesCachedDetailsListURL.Text;

            farm.RecordsManagersGroupName    = RecordsManagersGroupName.Text;
            farm.RecordsSystemAdminGroupName = RecordsSystemAdminGroupName.Text;

            farm.TimerJobsManagementSiteUrl = TimerJobsManagementSiteURL.Text;
            farm.TimerJobsServerName        = TimerJobsServerName.Text;

            farm.AllWorkBoxCollectionsPropertyValue = AllWorkBoxCollections.Text;

            farm.TermStoreName      = TermStoreName.Text;
            farm.TermStoreGroupName = TermStoreGroupName.Text;

            farm.WorkBoxDocumentContentTypeName = DocumentContentTypeName.Text;
            farm.WorkBoxRecordContentTypeName   = RecordContentTypeName.Text;

            farm.SendErrorReportEmailsTo = SendErrorReportsTo.Text;

            farm.Update();

            SPUtility.Redirect("/applications.aspx", SPRedirectFlags.Static, Context);
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            WBFarm     farm = WBFarm.Local;
            WBTaxonomy subjectTagsTaxonomy = WBTaxonomy.GetSubjectTags(SPContext.Current.Site);

            WBSubjectTagsRecordsRoutings routings = farm.SubjectTagsRecordsRoutings(subjectTagsTaxonomy);

            if (!String.IsNullOrEmpty(Request.QueryString["RemoveIndex"]))
            {
                int index;
                if (Int32.TryParse(Request.QueryString["RemoveIndex"], out index))
                {
                    routings.RemoveAtIndex(index);

                    // Now save the new routing information:

                    SPContext.Current.Web.AllowUnsafeUpdates = true;
                    farm.SubjectTagsRecordsRoutingsString    = routings.ToString();
                    farm.Update();
                    SPContext.Current.Web.AllowUnsafeUpdates = false;

                    SPUtility.Redirect("/_admin/WorkBoxFramework/RecordsManagementAdmin.aspx", SPRedirectFlags.Static, Context);
                    return;
                }
            }

            if (!IsPostBack)
            {
                PublicDocumentEmailAlertsTo.Text = farm.PublicDocumentEmailAlertsTo;
                PublicWebsiteTeamEmail.Text      = farm.PublicWebsiteTeamEmail;
            }

            String html = "<table cellpadding='6'>\n";

            html += "<tr><th>Subject Tag</th><th>Public Library</th><th>Extranet Library</th></tr>\n\n";
            if (routings.Count > 0)
            {
                int index = 0;
                foreach (WBSubjectTagRecordsRoutings routing in routings)
                {
                    html += "<tr><td>" + routing.SubjectTag.FullPath + "</td><td>"
                            + routing.PublicDocumentsLibrary + "</td><td>"
                            + routing.ExtranetDocumentsLibrary + "</td><td>"
                            + "<a href='#' onclick='WorkBoxFramework_callDialog(\"/_admin/WorkBoxFramework/EditSubjectTagRouting.aspx?RouteIndex=" + index + "\");'>edit</a></td><td>"
                            + "<a href='#' onclick='if (window.confirm(\"Are you sure you want to remove routing?\")) { location.href = \"/_admin/WorkBoxFramework/RecordsManagementAdmin.aspx?RemoveIndex=" + index + "\"; }'>remove</a></td></tr>\n\n";
                    index++;
                }
            }
            else
            {
                html += "<tr><td colspan='5'><i>No subject tag routings</i></td></tr>\n\n";
            }

            html += "<tr><td colspan='5'><a href='#' onclick='WorkBoxFramework_callDialog(\"/_admin/WorkBoxFramework/EditSubjectTagRouting.aspx\");'>Add another subject tag routing rule</a></td></tr>\n\n";
            SubjectTagsRecordsRoutings.Text = html;
        }
示例#15
0
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                WBFarm farm = WBFarm.Local;

                UseMailToLinks.Checked            = farm.UseMailToLinks;
                CharacterLimitForMailToLinks.Text = farm.ChatacterLimitForMailToLinks.WBxToString();
            }
        }
示例#16
0
        public WBRecordsManager(String callingUserLogin)
        {
            WBLogging.Debug("In WBRecordsManager() constructor");

            _farm             = WBFarm.Local;
            _libraries        = new WBRecordsLibraries(this);
            _callingUserLogin = callingUserLogin;

            WBLogging.Debug("Finished WBRecordsManager() constructor");
        }
示例#17
0
        public static WBTaxonomy Get(SPSite site, String termSetName)
        {
            WBFarm     farm     = WBFarm.Local;
            WBTaxonomy taxonomy = new WBTaxonomy(site,
                                                 farm.TermStoreName,
                                                 farm.TermStoreGroupName,
                                                 termSetName);

            return(taxonomy);
        }
示例#18
0
        protected void OKButton_OnClick(object sender, EventArgs e)
        {
            WBFarm farm = WBFarm.Local;

            farm.UseMailToLinks = UseMailToLinks.Checked;
            farm.ChatacterLimitForMailToLinks = CharacterLimitForMailToLinks.Text.WBxToInt();

            farm.Update();

            SPUtility.Redirect("/applications.aspx", SPRedirectFlags.Static, Context);
        }
示例#19
0
        internal static void SetRecordsLibraryToUse(SPSite site, String recordsLibraryToUse)
        {
            WBFarm farm = WBFarm.Local;

            if (String.IsNullOrEmpty(farm.FarmInstance) || farm.FarmInstance.Equals(WBFarm.FARM_INSTANCE__PUBLIC_EXTERNAL_FARM))
            {
                recordsLibraryToUse = WBF_WEB_PARTS__RECORDS_LIBRARY__PUBLIC;
            }

            site.RootWeb.WBxSetProperty(SP_SITE_PROPERTY__RECORDS_LIBRARY_TO_USE, recordsLibraryToUse);
        }
        protected void SaveButton_OnClick(object sender, EventArgs e)
        {
            WBFarm farm = WBFarm.Local;

            farm.PublicDocumentEmailAlertsTo = PublicDocumentEmailAlertsTo.Text;
            farm.PublicWebsiteTeamEmail      = PublicWebsiteTeamEmail.Text;

            farm.Update();

            SPUtility.Redirect("/applications.aspx", SPRedirectFlags.Static, Context);
        }
示例#21
0
文件: WBTeam.cs 项目: OliSharpe/wbf
        public static void SyncAllTeams(SPSite site)
        {
            WBTaxonomy teams = WBTaxonomy.GetTeams(site);

            WBLogging.Teams.Verbose("Syncing all teams within the TermSet: " + teams.TermSet.Name);

            WBFarm farm = WBFarm.Local;

            using (SPSite teamsSite = new SPSite(farm.TeamSitesSiteCollectionUrl))
            {
                SyncAllSubTeams(teams, teams.TermSet.Terms, teamsSite, site);
            }
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                WBFarm farm = WBFarm.Local;

                InvolvedSubject.Text = farm.InviteInvolvedDefaultEmailSubject;
                InvolvedBody.Text    = farm.InviteInvolvedDefaultEmailBody;
                VisitingSubject.Text = farm.InviteVisitingDefaultEmailSubject;
                VisitingBody.Text    = farm.InviteVisitingDefaultEmailBody;
                ToTeamSubject.Text   = farm.InviteToTeamDefaultEmailSubject;
                ToTeamBody.Text      = farm.InviteToTeamDefaultEmailBody;
            }
        }
示例#23
0
        internal static String GetExtranetLibraryURL(SPSite site)
        {
            WBFarm farm = WBFarm.Local;

            String localExtranetURL = site.RootWeb.WBxGetProperty(SP_SITE_PROPERTY__LOCAL_EXTRANET_LIBRARY_URL);

            if (String.IsNullOrEmpty(localExtranetURL))
            {
                return(farm.PublicExtranetRecordsLibraryUrl);
            }
            else
            {
                return(localExtranetURL);
            }
        }
        protected void SaveButton_OnClick(object sender, EventArgs e)
        {
            WBFarm farm = WBFarm.Local;

            farm.InviteInvolvedDefaultEmailSubject = InvolvedSubject.Text;
            farm.InviteInvolvedDefaultEmailBody    = InvolvedBody.Text;
            farm.InviteVisitingDefaultEmailSubject = VisitingSubject.Text;
            farm.InviteVisitingDefaultEmailBody    = VisitingBody.Text;
            farm.InviteToTeamDefaultEmailSubject   = ToTeamSubject.Text;
            farm.InviteToTeamDefaultEmailBody      = ToTeamBody.Text;

            farm.Update();

            SPUtility.Redirect("/applications.aspx", SPRedirectFlags.Static, Context);
        }
示例#25
0
文件: WBTeam.cs 项目: OliSharpe/wbf
        private void SyncRemoveMember(SPGroup fromGroup, SPUser userToRemove)
        {
            WBFarm farm      = WBFarm.Local;
            String groupName = fromGroup.Name;

            SPSecurity.RunWithElevatedPrivileges(delegate()
            {
                using (SPSite site = new SPSite(farm.TimerJobsManagementSiteUrl))
                    using (SPWeb web = site.OpenWeb())
                    {
                        SPList dailyJobs        = web.Lists[WBTimerTasksJob.DAILY_TIMER_TASKS__LIST_NAME];
                        SPView inOrderToExecute = dailyJobs.Views[WBTimerTasksJob.DAILY_TIMER_TASKS__ORDERED_VIEW_NAME];

                        foreach (SPListItem task in dailyJobs.GetItems(inOrderToExecute))
                        {
                            string command   = task.WBxGetColumnAsString(WBTimerTask.COLUMN_NAME__COMMAND);
                            string targetUrl = task.WBxGetColumnAsString(WBTimerTask.COLUMN_NAME__TARGET_URL);
                            string argument1 = task.WBxGetColumnAsString(WBTimerTask.COLUMN_NAME__ARGUMENT_1);

                            if (command == WBTimerTask.COMMAND__SYNCHRONISE_ALL_TEAMS)
                            {
                                using (SPSite toSite = new SPSite(targetUrl))
                                {
                                    SPGroup toGroup = toSite.RootWeb.WBxGetGroupOrNull(groupName);

                                    toSite.AllowUnsafeUpdates         = true;
                                    toSite.RootWeb.AllowUnsafeUpdates = true;

                                    if (toGroup != null)
                                    {
                                        WBLogging.Teams.Verbose("Removing a user: "******"Something went wrong when trying to remove " + userToRemove.LoginName + " from " + groupName + " on site collection " + targetUrl, exception);
                                        }
                                    }
                                }
                            }
                        }
                    }
            });
        }
示例#26
0
        internal static List <String> GetRecordsLibraryOptions()
        {
            List <String> options = new List <String>();

            options.Add(WBF_WEB_PARTS__RECORDS_LIBRARY__PUBLIC);

            WBFarm farm = WBFarm.Local;

            if (!String.IsNullOrEmpty(farm.FarmInstance) && !farm.FarmInstance.Equals(WBFarm.FARM_INSTANCE__PUBLIC_EXTERNAL_FARM))
            {
                // So we're only adding the option to link to the protected library if we are not on the external public farm
                options.Add(WBF_WEB_PARTS__RECORDS_LIBRARY__PROTECTED);
            }

            options.Add(WBF_WEB_PARTS__RECORDS_LIBRARY__LOCAL);

            return(options);
        }
示例#27
0
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                WBFarm farm = WBFarm.Local;

                if (!String.IsNullOrEmpty(farm.TermStoreName))
                {
                    try
                    {
                        WBTaxonomy teams = WBTaxonomy.GetTeams(SPContext.Current.Site);

                        if (teams == null)
                        {
                            WBLogging.Debug("teams was null");
                        }

                        WBTeam systemAdminTeam = farm.SystemAdminTeam(teams);

                        if (systemAdminTeam != null)
                        {
                            AdminTeamSiteURL.Text = systemAdminTeam.TeamSiteUrl;
                        }
                    }
                    catch (Exception exception)
                    {
                        WBLogging.Generic.HighLevel("Couldn't find the current admin team site URL: " + exception.Message);
                    }
                }

                TimerJobsServerName.Text = farm.TimerJobsServerName;

                TermStoreName.Text      = farm.TermStoreName;
                TermStoreGroupName.Text = farm.TermStoreGroupName;

                DocumentContentTypeName.Text = farm.WorkBoxDocumentContentTypeName;
                RecordContentTypeName.Text   = farm.WorkBoxRecordContentTypeName;

                if (!String.IsNullOrEmpty(farm.TimerJobsManagementSiteUrl))
                {
                    DoInitialConfigStep.Text = "Check Configuration";
                }
            }
        }
        private string createTableRowForDocument(WBTaxonomy seriesTags, Term docSeriesTerm)
        {
            WBQuery query        = new WBQuery();
            WBTerm  docSeriesTag = new WBTerm(seriesTags, docSeriesTerm);

            query.AddEqualsFilter(WBColumn.SeriesTag, docSeriesTag);
            query.OrderBy(WBColumn.DeclaredRecord, false);

            query.AddViewColumn(WBColumn.Name);
            query.AddViewColumn(WBColumn.EncodedAbsoluteURL);
            query.AddViewColumn(WBColumn.DeclaredRecord);

            WBFarm farm = WBFarm.Local;

            SPListItem document = null;

            using (SPSite site = new SPSite(farm.ProtectedRecordsLibraryUrl))
            {
                using (SPWeb web = site.OpenWeb())
                {
                    SPList recordsLibrary = web.GetList(farm.ProtectedRecordsLibraryUrl);

                    SPListItemCollection items = recordsLibrary.WBxGetItems(site, query);

                    if (items.Count > 0)
                    {
                        document = items[0];
                    }
                }
            }

            string docURL  = "#";
            string docName = "Did not find a docuemnt for this series tag";

            if (document != null)
            {
                docURL  = document.WBxGetAsString(WBColumn.EncodedAbsoluteURL);
                docName = document.WBxGetAsString(WBColumn.Name);
            }

            string html = "<tr class=\"seriesTags\"><td><img src=\"/_layouts/images/icdocx.png\"/></td><td class=\"seriesTags\"><a href=\"" + docURL + "\">" + docSeriesTag.Name + "</a></td><td>(" + docName + ")</td></tr>";

            return(html);
        }
示例#29
0
        public override void Execute(Guid targetInstanceId)
        {
            WBLogging.TimerTasks.HighLevel("WBTimerTasksJob.Execute(): Starting: " + Title);

            WBFarm farm = WBFarm.Local;

            using (SPSite site = new SPSite(farm.TimerJobsManagementSiteUrl))
                using (SPWeb web = site.OpenWeb())
                {
                    SPList dailyJobs        = web.Lists[listName];
                    SPView inOrderToExecute = dailyJobs.Views[viewName];

                    foreach (SPListItem task in dailyJobs.GetItems(inOrderToExecute))
                    {
                        WBLogging.TimerTasks.HighLevel("WBTimerTasksJob.Execute(): About to execute task: " + task.Title);

                        bool originalAccessDeniedCatchValue = SPSecurity.CatchAccessDeniedException;
                        SPSecurity.CatchAccessDeniedException = false;

                        try
                        {
                            WBTimerTask.Execute(task);
                        }
                        catch (UnauthorizedAccessException e)
                        {
                            WBLogging.TimerTasks.Unexpected("WBTimerTasksJob.Execute(): UnauthorizedAccessException thrown when trying to run task: " + task.Title + " Exception was: " + e.Message);
                        }
                        catch (Exception e)
                        {
                            WBLogging.TimerTasks.Unexpected("WBTimerTasksJob.Execute(): Exception thrown when trying to run task: " + task.Title + " Exception was: " + e.Message);
                        }
                        finally
                        {
                            SPSecurity.CatchAccessDeniedException = originalAccessDeniedCatchValue;
                        }

                        WBLogging.TimerTasks.HighLevel("WBTimerTasksJob.Execute(): Finished executing task: " + task.Title);
                    }
                }

            WBLogging.TimerTasks.HighLevel("WBTimerTasksJob.Execute(): Finished: " + Title);
        }
示例#30
0
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                WBFarm farm = WBFarm.Local;

                if (farm.UseMailToLinks)
                {
                    ExplanationMessage.Text = "You are seeing this dialog because the number of email addresses is too long. Please copy and paste these email addresses into your email client if you wish to email all of these users.";
                }
                else
                {
                    ExplanationMessage.Text = "You are seeing this dialog because the use of the mailto link by the work box framework is disabled for this farm.";
                }

                EmailTo.Text      = Request.QueryString["to"];
                EmailSubject.Text = Request.QueryString["subject"];
                EmailBody.Text    = Request.QueryString["body"];
            }
        }