B2020-114 Fixed crash when Set Admin clicked on the Links button.

C2020-035 Don’t allow Set Admin run Repair tools and show only folders associated with Set Admin for the update Transition and RO links
2020-034 Don’t show Format and Security options for Set Amin users, disable Admin button for all other users.
This commit is contained in:
John Jenko 2020-10-08 19:38:19 +00:00
parent fe1e392e4e
commit d7832cfa57
4 changed files with 293 additions and 272 deletions

View File

@ -65,6 +65,15 @@
this.btnRunCheck = new DevComponents.DotNetBar.ButtonX(); this.btnRunCheck = new DevComponents.DotNetBar.ButtonX();
this.sideNavPanel4 = new DevComponents.DotNetBar.Controls.SideNavPanel(); this.sideNavPanel4 = new DevComponents.DotNetBar.Controls.SideNavPanel();
this.btn_ShowUsers = new DevComponents.DotNetBar.ButtonX(); this.btn_ShowUsers = new DevComponents.DotNetBar.ButtonX();
this.sideNavPanel3 = new DevComponents.DotNetBar.Controls.SideNavPanel();
this.warningBox5 = new DevComponents.DotNetBar.Controls.WarningBox();
this.line3 = new DevComponents.DotNetBar.Controls.Line();
this.swUpdateROVals = new DevComponents.DotNetBar.Controls.SwitchButton();
this.swRefreshTrans = new DevComponents.DotNetBar.Controls.SwitchButton();
this.labelX11 = new DevComponents.DotNetBar.LabelX();
this.labelX6 = new DevComponents.DotNetBar.LabelX();
this.warningBox1 = new DevComponents.DotNetBar.Controls.WarningBox();
this.btnFixLinks = new DevComponents.DotNetBar.ButtonX();
this.sideNavPanel2 = new DevComponents.DotNetBar.Controls.SideNavPanel(); this.sideNavPanel2 = new DevComponents.DotNetBar.Controls.SideNavPanel();
this.warningBox4 = new DevComponents.DotNetBar.Controls.WarningBox(); this.warningBox4 = new DevComponents.DotNetBar.Controls.WarningBox();
this.warningBox2 = new DevComponents.DotNetBar.Controls.WarningBox(); this.warningBox2 = new DevComponents.DotNetBar.Controls.WarningBox();
@ -79,15 +88,6 @@
this.labelX8 = new DevComponents.DotNetBar.LabelX(); this.labelX8 = new DevComponents.DotNetBar.LabelX();
this.line2 = new DevComponents.DotNetBar.Controls.Line(); this.line2 = new DevComponents.DotNetBar.Controls.Line();
this.btnRunRepair = new DevComponents.DotNetBar.ButtonX(); this.btnRunRepair = new DevComponents.DotNetBar.ButtonX();
this.sideNavPanel3 = new DevComponents.DotNetBar.Controls.SideNavPanel();
this.warningBox5 = new DevComponents.DotNetBar.Controls.WarningBox();
this.line3 = new DevComponents.DotNetBar.Controls.Line();
this.swUpdateROVals = new DevComponents.DotNetBar.Controls.SwitchButton();
this.swRefreshTrans = new DevComponents.DotNetBar.Controls.SwitchButton();
this.labelX11 = new DevComponents.DotNetBar.LabelX();
this.labelX6 = new DevComponents.DotNetBar.LabelX();
this.warningBox1 = new DevComponents.DotNetBar.Controls.WarningBox();
this.btnFixLinks = new DevComponents.DotNetBar.ButtonX();
this.sideNavItem1 = new DevComponents.DotNetBar.Controls.SideNavItem(); this.sideNavItem1 = new DevComponents.DotNetBar.Controls.SideNavItem();
this.separator1 = new DevComponents.DotNetBar.Separator(); this.separator1 = new DevComponents.DotNetBar.Separator();
this.sideNavItmCheck = new DevComponents.DotNetBar.Controls.SideNavItem(); this.sideNavItmCheck = new DevComponents.DotNetBar.Controls.SideNavItem();
@ -103,6 +103,7 @@
this.stepItem4 = new DevComponents.DotNetBar.StepItem(); this.stepItem4 = new DevComponents.DotNetBar.StepItem();
this.lblAdmToolProgressType = new DevComponents.DotNetBar.LabelX(); this.lblAdmToolProgressType = new DevComponents.DotNetBar.LabelX();
this.superTooltip1 = new DevComponents.DotNetBar.SuperTooltip(); this.superTooltip1 = new DevComponents.DotNetBar.SuperTooltip();
((System.ComponentModel.ISupportInitialize)(this.splitContainer3)).BeginInit();
this.splitContainer3.Panel1.SuspendLayout(); this.splitContainer3.Panel1.SuspendLayout();
this.splitContainer3.Panel2.SuspendLayout(); this.splitContainer3.Panel2.SuspendLayout();
this.splitContainer3.SuspendLayout(); this.splitContainer3.SuspendLayout();
@ -115,8 +116,8 @@
this.sideNav1.SuspendLayout(); this.sideNav1.SuspendLayout();
this.sideNavPanel1.SuspendLayout(); this.sideNavPanel1.SuspendLayout();
this.sideNavPanel4.SuspendLayout(); this.sideNavPanel4.SuspendLayout();
this.sideNavPanel2.SuspendLayout();
this.sideNavPanel3.SuspendLayout(); this.sideNavPanel3.SuspendLayout();
this.sideNavPanel2.SuspendLayout();
this.panelEx4.SuspendLayout(); this.panelEx4.SuspendLayout();
this.SuspendLayout(); this.SuspendLayout();
// //
@ -453,9 +454,9 @@
// //
this.sideNav1.BackColor = System.Drawing.SystemColors.Control; this.sideNav1.BackColor = System.Drawing.SystemColors.Control;
this.sideNav1.Controls.Add(this.sideNavPanel1); this.sideNav1.Controls.Add(this.sideNavPanel1);
this.sideNav1.Controls.Add(this.sideNavPanel2);
this.sideNav1.Controls.Add(this.sideNavPanel4); this.sideNav1.Controls.Add(this.sideNavPanel4);
this.sideNav1.Controls.Add(this.sideNavPanel3); this.sideNav1.Controls.Add(this.sideNavPanel3);
this.sideNav1.Controls.Add(this.sideNavPanel2);
this.sideNav1.Dock = System.Windows.Forms.DockStyle.Fill; this.sideNav1.Dock = System.Windows.Forms.DockStyle.Fill;
this.sideNav1.EnableClose = false; this.sideNav1.EnableClose = false;
this.sideNav1.EnableMaximize = false; this.sideNav1.EnableMaximize = false;
@ -487,9 +488,9 @@
this.sideNavPanel1.Controls.Add(this.labelX1); this.sideNavPanel1.Controls.Add(this.labelX1);
this.sideNavPanel1.Controls.Add(this.btnRunCheck); this.sideNavPanel1.Controls.Add(this.btnRunCheck);
this.sideNavPanel1.Dock = System.Windows.Forms.DockStyle.Fill; this.sideNavPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
this.sideNavPanel1.Location = new System.Drawing.Point(81, 31); this.sideNavPanel1.Location = new System.Drawing.Point(80, 31);
this.sideNavPanel1.Name = "sideNavPanel1"; this.sideNavPanel1.Name = "sideNavPanel1";
this.sideNavPanel1.Size = new System.Drawing.Size(299, 494); this.sideNavPanel1.Size = new System.Drawing.Size(300, 494);
this.sideNavPanel1.TabIndex = 2; this.sideNavPanel1.TabIndex = 2;
// //
// warningBox3 // warningBox3
@ -664,6 +665,136 @@
this.btn_ShowUsers.Text = "Show Users"; this.btn_ShowUsers.Text = "Show Users";
this.btn_ShowUsers.Click += new System.EventHandler(this.btn_ShowUsers_Click); this.btn_ShowUsers.Click += new System.EventHandler(this.btn_ShowUsers_Click);
// //
// sideNavPanel3
//
this.sideNavPanel3.Controls.Add(this.warningBox5);
this.sideNavPanel3.Controls.Add(this.line3);
this.sideNavPanel3.Controls.Add(this.swUpdateROVals);
this.sideNavPanel3.Controls.Add(this.swRefreshTrans);
this.sideNavPanel3.Controls.Add(this.labelX11);
this.sideNavPanel3.Controls.Add(this.labelX6);
this.sideNavPanel3.Controls.Add(this.warningBox1);
this.sideNavPanel3.Controls.Add(this.myTV);
this.sideNavPanel3.Controls.Add(this.btnFixLinks);
this.sideNavPanel3.Dock = System.Windows.Forms.DockStyle.Fill;
this.sideNavPanel3.Location = new System.Drawing.Point(81, 31);
this.sideNavPanel3.Name = "sideNavPanel3";
this.sideNavPanel3.Size = new System.Drawing.Size(299, 494);
this.sideNavPanel3.TabIndex = 10;
this.sideNavPanel3.Visible = false;
//
// warningBox5
//
this.warningBox5.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(196)))), ((int)(((byte)(219)))), ((int)(((byte)(249)))));
this.warningBox5.CloseButtonVisible = false;
this.warningBox5.Image = ((System.Drawing.Image)(resources.GetObject("warningBox5.Image")));
this.warningBox5.Location = new System.Drawing.Point(17, 117);
this.warningBox5.Name = "warningBox5";
this.warningBox5.OptionsButtonVisible = false;
this.warningBox5.Size = new System.Drawing.Size(262, 32);
this.warningBox5.TabIndex = 31;
this.warningBox5.Text = "<b>NOTE</b> These tools can take a long time to run";
//
// line3
//
this.line3.BackColor = System.Drawing.Color.Transparent;
this.line3.Location = new System.Drawing.Point(9, 97);
this.line3.Name = "line3";
this.line3.Size = new System.Drawing.Size(285, 12);
this.line3.TabIndex = 30;
this.line3.Text = "line3";
//
// swUpdateROVals
//
//
//
//
this.swUpdateROVals.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square;
this.swUpdateROVals.Location = new System.Drawing.Point(10, 10);
this.swUpdateROVals.Name = "swUpdateROVals";
this.swUpdateROVals.Size = new System.Drawing.Size(91, 22);
this.swUpdateROVals.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
this.superTooltip1.SetSuperTooltip(this.swUpdateROVals, new DevComponents.DotNetBar.SuperTooltipInfo("Update RO Values", "", resources.GetString("swUpdateROVals.SuperTooltip"), null, null, DevComponents.DotNetBar.eTooltipColor.Gray, true, true, new System.Drawing.Size(250, 150)));
this.swUpdateROVals.SwitchClickTogglesValue = true;
this.swUpdateROVals.TabIndex = 29;
this.swUpdateROVals.Value = true;
this.swUpdateROVals.ValueObject = "Y";
this.swUpdateROVals.ValueChanged += new System.EventHandler(this.swUpdateROVals_ValueChanged);
//
// swRefreshTrans
//
//
//
//
this.swRefreshTrans.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square;
this.swRefreshTrans.Location = new System.Drawing.Point(10, 38);
this.swRefreshTrans.Name = "swRefreshTrans";
this.swRefreshTrans.Size = new System.Drawing.Size(91, 22);
this.swRefreshTrans.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
this.superTooltip1.SetSuperTooltip(this.swRefreshTrans, new DevComponents.DotNetBar.SuperTooltipInfo("Refresh Transitions", "", resources.GetString("swRefreshTrans.SuperTooltip"), null, null, DevComponents.DotNetBar.eTooltipColor.Gray, true, true, new System.Drawing.Size(265, 175)));
this.swRefreshTrans.SwitchClickTogglesValue = true;
this.swRefreshTrans.TabIndex = 29;
this.swRefreshTrans.ValueChanged += new System.EventHandler(this.swRefreshTrans_ValueChanged);
//
// labelX11
//
this.labelX11.BackColor = System.Drawing.Color.Transparent;
//
//
//
this.labelX11.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square;
this.labelX11.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.labelX11.Location = new System.Drawing.Point(107, 10);
this.labelX11.Name = "labelX11";
this.labelX11.Size = new System.Drawing.Size(186, 22);
this.superTooltip1.SetSuperTooltip(this.labelX11, new DevComponents.DotNetBar.SuperTooltipInfo("Update RO Values", "", resources.GetString("labelX11.SuperTooltip"), null, null, DevComponents.DotNetBar.eTooltipColor.Gray, true, true, new System.Drawing.Size(250, 150)));
this.labelX11.TabIndex = 28;
this.labelX11.Text = "Update RO Values";
//
// labelX6
//
this.labelX6.BackColor = System.Drawing.Color.Transparent;
//
//
//
this.labelX6.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square;
this.labelX6.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.labelX6.Location = new System.Drawing.Point(107, 38);
this.labelX6.Name = "labelX6";
this.labelX6.Size = new System.Drawing.Size(186, 22);
this.superTooltip1.SetSuperTooltip(this.labelX6, new DevComponents.DotNetBar.SuperTooltipInfo("Refresh Transitions", "", resources.GetString("labelX6.SuperTooltip"), null, null, DevComponents.DotNetBar.eTooltipColor.Gray, true, true, new System.Drawing.Size(256, 175)));
this.labelX6.TabIndex = 28;
this.labelX6.Text = "Refresh Transitions";
//
// warningBox1
//
this.warningBox1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(196)))), ((int)(((byte)(219)))), ((int)(((byte)(249)))));
this.warningBox1.CloseButtonVisible = false;
this.warningBox1.Image = ((System.Drawing.Image)(resources.GetObject("warningBox1.Image")));
this.warningBox1.Location = new System.Drawing.Point(17, 153);
this.warningBox1.Name = "warningBox1";
this.warningBox1.OptionsButtonVisible = false;
this.warningBox1.Size = new System.Drawing.Size(262, 43);
this.warningBox1.TabIndex = 7;
this.warningBox1.Text = " Be sure there is a current backup of the \r\n database prior to running these func" +
"tions";
//
// btnFixLinks
//
this.btnFixLinks.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton;
this.btnFixLinks.Checked = true;
this.btnFixLinks.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground;
this.btnFixLinks.Location = new System.Drawing.Point(10, 71);
this.btnFixLinks.Name = "btnFixLinks";
this.btnFixLinks.Size = new System.Drawing.Size(280, 23);
this.btnFixLinks.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
this.superTooltip1.SetSuperTooltip(this.btnFixLinks, new DevComponents.DotNetBar.SuperTooltipInfo("Fix Links", "", "This will run the selected RO Links or Transitions Links tool.\r\n\r\nClick on the on" +
"/off switches to turn on/off each tool.\r\n\r\nNote that only one of these tools can" +
" be run at a time.", null, null, DevComponents.DotNetBar.eTooltipColor.Gray, true, true, new System.Drawing.Size(200, 130)));
this.btnFixLinks.TabIndex = 6;
this.btnFixLinks.Text = "Fix Links";
this.btnFixLinks.Click += new System.EventHandler(this.btnFixLinks_Click);
//
// sideNavPanel2 // sideNavPanel2
// //
this.sideNavPanel2.Controls.Add(this.warningBox4); this.sideNavPanel2.Controls.Add(this.warningBox4);
@ -680,9 +811,9 @@
this.sideNavPanel2.Controls.Add(this.line2); this.sideNavPanel2.Controls.Add(this.line2);
this.sideNavPanel2.Controls.Add(this.btnRunRepair); this.sideNavPanel2.Controls.Add(this.btnRunRepair);
this.sideNavPanel2.Dock = System.Windows.Forms.DockStyle.Fill; this.sideNavPanel2.Dock = System.Windows.Forms.DockStyle.Fill;
this.sideNavPanel2.Location = new System.Drawing.Point(81, 31); this.sideNavPanel2.Location = new System.Drawing.Point(80, 31);
this.sideNavPanel2.Name = "sideNavPanel2"; this.sideNavPanel2.Name = "sideNavPanel2";
this.sideNavPanel2.Size = new System.Drawing.Size(299, 494); this.sideNavPanel2.Size = new System.Drawing.Size(300, 494);
this.sideNavPanel2.TabIndex = 6; this.sideNavPanel2.TabIndex = 6;
this.sideNavPanel2.Visible = false; this.sideNavPanel2.Visible = false;
// //
@ -878,136 +1009,6 @@
this.btnRunRepair.Text = "Run Repair"; this.btnRunRepair.Text = "Run Repair";
this.btnRunRepair.Click += new System.EventHandler(this.btnRunRepair_Click); this.btnRunRepair.Click += new System.EventHandler(this.btnRunRepair_Click);
// //
// sideNavPanel3
//
this.sideNavPanel3.Controls.Add(this.warningBox5);
this.sideNavPanel3.Controls.Add(this.line3);
this.sideNavPanel3.Controls.Add(this.swUpdateROVals);
this.sideNavPanel3.Controls.Add(this.swRefreshTrans);
this.sideNavPanel3.Controls.Add(this.labelX11);
this.sideNavPanel3.Controls.Add(this.labelX6);
this.sideNavPanel3.Controls.Add(this.warningBox1);
this.sideNavPanel3.Controls.Add(this.myTV);
this.sideNavPanel3.Controls.Add(this.btnFixLinks);
this.sideNavPanel3.Dock = System.Windows.Forms.DockStyle.Fill;
this.sideNavPanel3.Location = new System.Drawing.Point(81, 31);
this.sideNavPanel3.Name = "sideNavPanel3";
this.sideNavPanel3.Size = new System.Drawing.Size(299, 494);
this.sideNavPanel3.TabIndex = 10;
this.sideNavPanel3.Visible = false;
//
// warningBox5
//
this.warningBox5.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(196)))), ((int)(((byte)(219)))), ((int)(((byte)(249)))));
this.warningBox5.CloseButtonVisible = false;
this.warningBox5.Image = ((System.Drawing.Image)(resources.GetObject("warningBox5.Image")));
this.warningBox5.Location = new System.Drawing.Point(17, 117);
this.warningBox5.Name = "warningBox5";
this.warningBox5.OptionsButtonVisible = false;
this.warningBox5.Size = new System.Drawing.Size(262, 32);
this.warningBox5.TabIndex = 31;
this.warningBox5.Text = "<b>NOTE</b> These tools can take a long time to run";
//
// line3
//
this.line3.BackColor = System.Drawing.Color.Transparent;
this.line3.Location = new System.Drawing.Point(9, 97);
this.line3.Name = "line3";
this.line3.Size = new System.Drawing.Size(285, 12);
this.line3.TabIndex = 30;
this.line3.Text = "line3";
//
// swUpdateROVals
//
//
//
//
this.swUpdateROVals.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square;
this.swUpdateROVals.Location = new System.Drawing.Point(10, 10);
this.swUpdateROVals.Name = "swUpdateROVals";
this.swUpdateROVals.Size = new System.Drawing.Size(91, 22);
this.swUpdateROVals.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
this.superTooltip1.SetSuperTooltip(this.swUpdateROVals, new DevComponents.DotNetBar.SuperTooltipInfo("Update RO Values", "", resources.GetString("swUpdateROVals.SuperTooltip"), null, null, DevComponents.DotNetBar.eTooltipColor.Gray, true, true, new System.Drawing.Size(250, 150)));
this.swUpdateROVals.SwitchClickTogglesValue = true;
this.swUpdateROVals.TabIndex = 29;
this.swUpdateROVals.Value = true;
this.swUpdateROVals.ValueObject = "Y";
this.swUpdateROVals.ValueChanged += new System.EventHandler(this.swUpdateROVals_ValueChanged);
//
// swRefreshTrans
//
//
//
//
this.swRefreshTrans.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square;
this.swRefreshTrans.Location = new System.Drawing.Point(10, 38);
this.swRefreshTrans.Name = "swRefreshTrans";
this.swRefreshTrans.Size = new System.Drawing.Size(91, 22);
this.swRefreshTrans.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
this.superTooltip1.SetSuperTooltip(this.swRefreshTrans, new DevComponents.DotNetBar.SuperTooltipInfo("Refresh Transitions", "", resources.GetString("swRefreshTrans.SuperTooltip"), null, null, DevComponents.DotNetBar.eTooltipColor.Gray, true, true, new System.Drawing.Size(265, 175)));
this.swRefreshTrans.SwitchClickTogglesValue = true;
this.swRefreshTrans.TabIndex = 29;
this.swRefreshTrans.ValueChanged += new System.EventHandler(this.swRefreshTrans_ValueChanged);
//
// labelX11
//
this.labelX11.BackColor = System.Drawing.Color.Transparent;
//
//
//
this.labelX11.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square;
this.labelX11.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.labelX11.Location = new System.Drawing.Point(107, 10);
this.labelX11.Name = "labelX11";
this.labelX11.Size = new System.Drawing.Size(186, 22);
this.superTooltip1.SetSuperTooltip(this.labelX11, new DevComponents.DotNetBar.SuperTooltipInfo("Update RO Values", "", resources.GetString("labelX11.SuperTooltip"), null, null, DevComponents.DotNetBar.eTooltipColor.Gray, true, true, new System.Drawing.Size(250, 150)));
this.labelX11.TabIndex = 28;
this.labelX11.Text = "Update RO Values";
//
// labelX6
//
this.labelX6.BackColor = System.Drawing.Color.Transparent;
//
//
//
this.labelX6.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square;
this.labelX6.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.labelX6.Location = new System.Drawing.Point(107, 38);
this.labelX6.Name = "labelX6";
this.labelX6.Size = new System.Drawing.Size(186, 22);
this.superTooltip1.SetSuperTooltip(this.labelX6, new DevComponents.DotNetBar.SuperTooltipInfo("Refresh Transitions", "", resources.GetString("labelX6.SuperTooltip"), null, null, DevComponents.DotNetBar.eTooltipColor.Gray, true, true, new System.Drawing.Size(256, 175)));
this.labelX6.TabIndex = 28;
this.labelX6.Text = "Refresh Transitions";
//
// warningBox1
//
this.warningBox1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(196)))), ((int)(((byte)(219)))), ((int)(((byte)(249)))));
this.warningBox1.CloseButtonVisible = false;
this.warningBox1.Image = ((System.Drawing.Image)(resources.GetObject("warningBox1.Image")));
this.warningBox1.Location = new System.Drawing.Point(17, 153);
this.warningBox1.Name = "warningBox1";
this.warningBox1.OptionsButtonVisible = false;
this.warningBox1.Size = new System.Drawing.Size(262, 43);
this.warningBox1.TabIndex = 7;
this.warningBox1.Text = " Be sure there is a current backup of the \r\n database prior to running these func" +
"tions";
//
// btnFixLinks
//
this.btnFixLinks.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton;
this.btnFixLinks.Checked = true;
this.btnFixLinks.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground;
this.btnFixLinks.Location = new System.Drawing.Point(10, 71);
this.btnFixLinks.Name = "btnFixLinks";
this.btnFixLinks.Size = new System.Drawing.Size(280, 23);
this.btnFixLinks.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
this.superTooltip1.SetSuperTooltip(this.btnFixLinks, new DevComponents.DotNetBar.SuperTooltipInfo("Fix Links", "", "This will run the selected RO Links or Transitions Links tool.\r\n\r\nClick on the on" +
"/off switches to turn on/off each tool.\r\n\r\nNote that only one of these tools can" +
" be run at a time.", null, null, DevComponents.DotNetBar.eTooltipColor.Gray, true, true, new System.Drawing.Size(200, 130)));
this.btnFixLinks.TabIndex = 6;
this.btnFixLinks.Text = "Fix Links";
this.btnFixLinks.Click += new System.EventHandler(this.btnFixLinks_Click);
//
// sideNavItem1 // sideNavItem1
// //
this.sideNavItem1.IsSystemMenu = true; this.sideNavItem1.IsSystemMenu = true;
@ -1168,9 +1169,9 @@
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent; this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
this.Text = "Administrative Tools"; this.Text = "Administrative Tools";
this.Load += new System.EventHandler(this.frmBatchRefresh_Load); this.Load += new System.EventHandler(this.frmBatchRefresh_Load);
this.FormClosing +=frmBatchRefresh_FormClosing;// B2017-221 Allow the batch dialog to close when waiting to process.
this.splitContainer3.Panel1.ResumeLayout(false); this.splitContainer3.Panel1.ResumeLayout(false);
this.splitContainer3.Panel2.ResumeLayout(false); this.splitContainer3.Panel2.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.splitContainer3)).EndInit();
this.splitContainer3.ResumeLayout(false); this.splitContainer3.ResumeLayout(false);
this.panelEx3.ResumeLayout(false); this.panelEx3.ResumeLayout(false);
this.panelEx3.PerformLayout(); this.panelEx3.PerformLayout();
@ -1186,8 +1187,8 @@
this.sideNav1.PerformLayout(); this.sideNav1.PerformLayout();
this.sideNavPanel1.ResumeLayout(false); this.sideNavPanel1.ResumeLayout(false);
this.sideNavPanel4.ResumeLayout(false); this.sideNavPanel4.ResumeLayout(false);
this.sideNavPanel2.ResumeLayout(false);
this.sideNavPanel3.ResumeLayout(false); this.sideNavPanel3.ResumeLayout(false);
this.sideNavPanel2.ResumeLayout(false);
this.panelEx4.ResumeLayout(false); this.panelEx4.ResumeLayout(false);
this.ResumeLayout(false); this.ResumeLayout(false);

View File

@ -21,7 +21,7 @@ namespace VEPROMS
get { return _MySessionInfo; } get { return _MySessionInfo; }
set { _MySessionInfo = value; } set { _MySessionInfo = value; }
} }
private bool IsAdministratorUser = false; //C2020-035 used to control what Set Amins can do
// C2017-030 - new Admin Tools user interface // C2017-030 - new Admin Tools user interface
// pass in session info to constructor // pass in session info to constructor
public frmBatchRefresh(SessionInfo sessionInfo) public frmBatchRefresh(SessionInfo sessionInfo)
@ -29,6 +29,18 @@ namespace VEPROMS
InitializeComponent(); InitializeComponent();
_MySessionInfo = sessionInfo; _MySessionInfo = sessionInfo;
setupProgessSteps1(); // C2017-030 - new Admin Tools user interface setupProgessSteps1(); // C2017-030 - new Admin Tools user interface
UserInfo ui = UserInfo.GetByUserID(MySessionInfo.UserID);
IsAdministratorUser = ui.IsAdministrator();
if (!IsAdministratorUser)
{
//C2020-035 if not full Admin disable repair tools
// only full Admin users can run the repair tools
btnRunRepair.Enabled = false;
swRmObsoleteROData.Enabled = false;
swRmOrphanDataRecs.Enabled = false;
swRefreshWordAttmts.Enabled = false;
swStandardHypenChars.Enabled = false;
}
} }
// NOTE: removed the Refresh ROs and Refresh Transitions and ROs options (now only Transitions can be refreshed) // NOTE: removed the Refresh ROs and Refresh Transitions and ROs options (now only Transitions can be refreshed)
// the Update ROs and Refresh ROs logic was merged together. The Update ROs will functionally do both // the Update ROs and Refresh ROs logic was merged together. The Update ROs will functionally do both
@ -100,7 +112,7 @@ namespace VEPROMS
{ {
btnFixLinks.Enabled = false; btnFixLinks.Enabled = false;
this.Cursor = Cursors.WaitCursor; this.Cursor = Cursors.WaitCursor;
myTreeNodePath = new List<string>(); //myTreeNodePath = new List<string>();
myTV.Nodes.Clear(); myTV.Nodes.Clear();
myDocVersions.Clear(); myDocVersions.Clear();
FolderInfo fi = FolderInfo.GetTop(); FolderInfo fi = FolderInfo.GetTop();
@ -114,18 +126,28 @@ namespace VEPROMS
} }
private void LoadChildFolders(FolderInfo fi, TreeNode tn, bool noProcs) private void LoadChildFolders(FolderInfo fi, TreeNode tn, bool noProcs)
{ {
bool loadedWorkingDraft = false;
foreach (FolderInfo fic in fi.SortedChildFolders) foreach (FolderInfo fic in fi.SortedChildFolders)
{ {
TreeNode tnc = tn.Nodes.Add(fic.Name); TreeNode tnc = tn.Nodes.Add(fic.Name);
tnc.Tag = fic; tnc.Tag = fic;
if (fic.ChildFolderCount > 0) if (fic.ChildFolderCount > 0)
LoadChildFolders(fic, tnc, noProcs); LoadChildFolders(fic, tnc, noProcs);
// B2020-114 and C2020-035 only show folders the Set Admin can access
if (fic.FolderDocVersionCount > 0) if (fic.FolderDocVersionCount > 0)
LoadDocVersions(fic, tnc, noProcs); {
if (!LoadDocVersions(fic, tnc, noProcs))
tnc.Remove();
else
loadedWorkingDraft = true;
}
} }
if (tn.Parent != null && !loadedWorkingDraft)
tn.Remove();
} }
private void LoadDocVersions(FolderInfo fic, TreeNode tnc, bool noProcs) private bool LoadDocVersions(FolderInfo fic, TreeNode tnc, bool noProcs)
{ {
bool rtnval = false;
foreach (DocVersionInfo dvi in fic.FolderDocVersions) foreach (DocVersionInfo dvi in fic.FolderDocVersions)
{ {
UserInfo ui = UserInfo.GetByUserID(MySessionInfo.UserID); UserInfo ui = UserInfo.GetByUserID(MySessionInfo.UserID);
@ -138,11 +160,11 @@ namespace VEPROMS
if (dvi.Procedures.Count > 0) if (dvi.Procedures.Count > 0)
LoadProcedures(dvi, tnc); LoadProcedures(dvi, tnc);
} }
myTreeNodePath.Add(tnc.FullPath); rtnval = true;
} }
else else
{ {
while (tnc != null && tnc.Text != "VEPROMS" && !IsUsedPath(tnc.FullPath)) if (tnc != null && tnc.Text != "VEPROMS") // B2020-114 - mad if statement removed: && !IsUsedPath(tnc.FullPath))
{ {
TreeNode tmp = tnc.Parent; TreeNode tmp = tnc.Parent;
tnc.Remove(); tnc.Remove();
@ -150,15 +172,7 @@ namespace VEPROMS
} }
} }
} }
} return rtnval;
private bool IsUsedPath(string path)
{
foreach (string s in myTreeNodePath)
{
if (s.StartsWith(path))
return true;
}
return false;
} }
private void LoadProcedures(DocVersionInfo dvi, TreeNode tnc) private void LoadProcedures(DocVersionInfo dvi, TreeNode tnc)
{ {
@ -965,6 +979,8 @@ namespace VEPROMS
AdminToolType = E_AdminToolType.Repair; AdminToolType = E_AdminToolType.Repair;
lblAdmToolProgressType.Text = "Repairing:"; lblAdmToolProgressType.Text = "Repairing:";
setupProgessSteps1(); setupProgessSteps1();
if (!IsAdministratorUser) // C2020-035 notify Set Amin user that only Full Admins can run repair tools
MessageBox.Show("Only Full PROMS Administrator Users can run these data repair tools","Data Repair Tools",MessageBoxButtons.OK,MessageBoxIcon.Exclamation);
} }
// C2017-030 new Admin Tools user interface // C2017-030 new Admin Tools user interface

View File

@ -112,30 +112,30 @@
<value>2.0</value> <value>2.0</value>
</resheader> </resheader>
<resheader name="reader"> <resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader> </resheader>
<resheader name="writer"> <resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader> </resheader>
<assembly alias="System.Drawing" name="System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" /> <assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="warningBox3.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> <data name="warningBox3.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value> <value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAplJREFUOE+N
YQUAAAKZSURBVDhPjZNdSFNhHMb/c6LivAlC686PElN0CmkmJjidrhS/EiuIoBCKJOqilMIIMkk0oQuN k11IU2Ecxv9zouK8CULrzo8SU3QKaSYmOJ2uFL8SK4igEIok6qKUwggySTShC41CRiiGdWNfYBcVWiGl
QkYohnVjX2AXFVohpRajdJYflE2npM7lnLrtnPd9ep0nSizxB8/Ne/7P8z7/czj0P55VUBBrpRdyCz3v FqN0lh+UTaekzuWcuu2c9316nSdKLPEHz817/s/zPv9zOPQ/nlVQEGulF3ILPe+8SIHK8eYR5lusLwHy
vEiByvHmEeZbrC8B8jstPEaqV443x1QjJbMnWxm3pIOP6+B5sEWy1lGc8nhjag+TStTuZcPC/DUB3JII Oy08RqpXjjfHVCMlsydbGbekg4/r4HmwRbLWUZzyeGNqD5NK1O5lw8L8NQHckgh5SAdXA3UqIxuzZKSj
eUgHVwN1KiMbs2Sko/LLCPCJfcDEHmA6FXw+B67HYbDXUYEy9m+MpeQntai/sXEDlsaSsTM8ADFRGsiL 8ssI8Il9wMQeYDoVfD4HrsdhsNdRgTL2b4yl5Ce1qL+xcQOWxpKxMzwAMVEayIv7IU8XwVnv8+XuEfJV
+yFPF8FZ7/Pl7hHyVcbX4zJSmfwmBtyWCfesDj4+hKAgXzApH5yXYLkjBvPXqFQZX0vrSQqQmn2tbLYA xtfjMlKZ/CYG3JYJ96wOPj6EoCBfMCkfnJdguSMG89eoVBlfS+tJCpCafa1stgBYzAZbzoFGo0ZIiD84
WMwGW86BRqNGSIg/OCsCd+dD/lEMR7X6+71D5KfY/uBqojNStxbclQfIecJUiOBgf0SEB4I7c8FmssDG KwJ350P+UQxHtfr7vUPkp9j+4GqiM1K3FtyVB8h5wlSI4GB/RIQHgjtzwWaywMb1WHwYg7lKOq3YVrlz
9Vh8GIO5Sjqt2Fa5c4z8PEa1hTlKACYacHGjXIjQ0EDERgeBTaSDDaeAfdwNqV8P+2W1pbnwrxYLjXTc jPw8RrWFOUoAJhpwcaNciNDQQMRGB4FNpIMNp4B93A2pXw/7ZbWlufCvFguNdNzzOta7J5S6fP4AdkVq
8zrWuyeUunz+AHZFapCkFQEDSWDvE8B6tJA/JMHZFoWZC3TCa67KJ5X7tsrM5krAPQWrdadF3bE03L8Z kKQVAQNJYO8TwHq0kD8kwdkWhZkLdMJrrsonlfu2yszmSsA9Bat1p0XdsTTcvxmJtpowyL1ar/m3PKYM
ibaaMMi9Wq/5tzymDNjKVYM3MklFk3VkcHfsAF86KN6+Qewp6g6lYPpVvPcrqFQEa0f0mgDZtBeOplBY 2MpVgzcySUWTdWRwd+wAXzoo3r5B7CnqDqVg+lW89yuoVARrR/SaANm0F46mUFjOUjYtN9BTaVQYJzPA
zlI2LTfQU2lUGCczwEZTwfoTRd147z9wvWw7qk5tg/Q2bk3AilzdabCdp3YRoJ6SRnIhDRsgfc6CZNZD RlPB+hNF3XjvP3C9bDuqTm2D9DZuTcCKXN1psJ2ndhGgnpJGciENGyB9zoJk1kMezFonySw0oIf0KVOs
HsxaJ8ksNKCH9ClTrKCDuy9zJWCE7LVU7KyjRws11OWopp75q2T6eYX67ZVktl+iwbkKGrSVk1kM9wuZ oIO7L3MlYITstVTsrKNHCzXU5aimnvmrZPp5hfrtlWS2X6LBuQoatJWTWQz3C5mEeoS6hNqt5yj7FysJ
hHqEuoTareco+xcrCcycC+G/xAAAAABJRU5ErkJggg== zJwL4b/EAAAAAElFTkSuQmCC
</value> </value>
</data> </data>
<metadata name="superTooltip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> <metadata name="superTooltip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value> <value>17, 17</value>
</metadata> </metadata>
<data name="swCkObsoleteROData.SuperTooltip" xml:space="preserve"> <data name="swCkObsoleteROData.SuperTooltip" xml:space="preserve">
@ -184,104 +184,40 @@ This tool may take an extended period of time to execute.
Should an item become orphaned (disconnected) from the rest of the data, it will no longer be accessible. This tool detects any orphaned items in the database. Should an item become orphaned (disconnected) from the rest of the data, it will no longer be accessible. This tool detects any orphaned items in the database.
This tool may take an extended period of time to execute. This tool may take an extended period of time to execute.
</value>
</data>
<data name="warningBox5.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAKZSURBVDhPjZNdSFNhHMb/c6LivAlC686PElN0CmkmJjidrhS/EiuIoBCKJOqilMIIMkk0oQuN
QkYohnVjX2AXFVohpRajdJYflE2npM7lnLrtnPd9ep0nSizxB8/Ne/7P8z7/czj0P55VUBBrpRdyCz3v
vEiByvHmEeZbrC8B8jstPEaqV443x1QjJbMnWxm3pIOP6+B5sEWy1lGc8nhjag+TStTuZcPC/DUB3JII
eUgHVwN1KiMbs2Sko/LLCPCJfcDEHmA6FXw+B67HYbDXUYEy9m+MpeQntai/sXEDlsaSsTM8ADFRGsiL
+yFPF8FZ7/Pl7hHyVcbX4zJSmfwmBtyWCfesDj4+hKAgXzApH5yXYLkjBvPXqFQZX0vrSQqQmn2tbLYA
WMwGW86BRqNGSIg/OCsCd+dD/lEMR7X6+71D5KfY/uBqojNStxbclQfIecJUiOBgf0SEB4I7c8FmssDG
9Vh8GIO5Sjqt2Fa5c4z8PEa1hTlKACYacHGjXIjQ0EDERgeBTaSDDaeAfdwNqV8P+2W1pbnwrxYLjXTc
8zrWuyeUunz+AHZFapCkFQEDSWDvE8B6tJA/JMHZFoWZC3TCa67KJ5X7tsrM5krAPQWrdadF3bE03L8Z
ibaaMMi9Wq/5tzymDNjKVYM3MklFk3VkcHfsAF86KN6+Qewp6g6lYPpVvPcrqFQEa0f0mgDZtBeOplBY
zlI2LTfQU2lUGCczwEZTwfoTRd147z9wvWw7qk5tg/Q2bk3AilzdabCdp3YRoJ6SRnIhDRsgfc6CZNZD
HsxaJ8ksNKCH9ClTrKCDuy9zJWCE7LVU7KyjRws11OWopp75q2T6eYX67ZVktl+iwbkKGrSVk1kM9wuZ
hHqEuoTareco+xcrCcycC+G/xAAAAABJRU5ErkJggg==
</value>
</data>
<data name="swUpdateROVals.SuperTooltip" xml:space="preserve">
<value>This allows the user to update referenced objects values for multiple working drafts in a batch mode.
Be sure a current backup of the database exists prior performing this function.
It is recommended that this be done during off hours.
</value>
</data>
<data name="swRefreshTrans.SuperTooltip" xml:space="preserve">
<value>This function will refresh transitions in all procedures selected below, whether they were selected individually or as a group via a procedure set.
Be sure a current backup of the database exists prior to running this function.
If more than one procedure is selected, it is recommended that this be performed during off hours.</value>
</data>
<data name="labelX11.SuperTooltip" xml:space="preserve">
<value>This allows the user to update referenced objects values for multiple working drafts in a batch mode.
Be sure a current backup of the database exists prior performing this function.
It is recommended that this be done during off hours.
</value>
</data>
<data name="labelX6.SuperTooltip" xml:space="preserve">
<value>This function will refresh transitions in all procedures selected below, whether they were selected individually or as a group via a procedure set.
Be sure a current backup of the database exists prior to running this function.
If more than one procedure is selected, it is recommended that this be performed during off hours.</value>
</data>
<data name="warningBox1.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAKZSURBVDhPjZNdSFNhHMb/c6LivAlC686PElN0CmkmJjidrhS/EiuIoBCKJOqilMIIMkk0oQuN
QkYohnVjX2AXFVohpRajdJYflE2npM7lnLrtnPd9ep0nSizxB8/Ne/7P8z7/czj0P55VUBBrpRdyCz3v
vEiByvHmEeZbrC8B8jstPEaqV443x1QjJbMnWxm3pIOP6+B5sEWy1lGc8nhjag+TStTuZcPC/DUB3JII
eUgHVwN1KiMbs2Sko/LLCPCJfcDEHmA6FXw+B67HYbDXUYEy9m+MpeQntai/sXEDlsaSsTM8ADFRGsiL
+yFPF8FZ7/Pl7hHyVcbX4zJSmfwmBtyWCfesDj4+hKAgXzApH5yXYLkjBvPXqFQZX0vrSQqQmn2tbLYA
WMwGW86BRqNGSIg/OCsCd+dD/lEMR7X6+71D5KfY/uBqojNStxbclQfIecJUiOBgf0SEB4I7c8FmssDG
9Vh8GIO5Sjqt2Fa5c4z8PEa1hTlKACYacHGjXIjQ0EDERgeBTaSDDaeAfdwNqV8P+2W1pbnwrxYLjXTc
8zrWuyeUunz+AHZFapCkFQEDSWDvE8B6tJA/JMHZFoWZC3TCa67KJ5X7tsrM5krAPQWrdadF3bE03L8Z
ibaaMMi9Wq/5tzymDNjKVYM3MklFk3VkcHfsAF86KN6+Qewp6g6lYPpVvPcrqFQEa0f0mgDZtBeOplBY
zlI2LTfQU2lUGCczwEZTwfoTRd147z9wvWw7qk5tg/Q2bk3AilzdabCdp3YRoJ6SRnIhDRsgfc6CZNZD
HsxaJ8ksNKCH9ClTrKCDuy9zJWCE7LVU7KyjRws11OWopp75q2T6eYX67ZVktl+iwbkKGrSVk1kM9wuZ
hHqEuoTareco+xcrCcycC+G/xAAAAABJRU5ErkJggg==
</value> </value>
</data> </data>
<data name="warningBox4.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> <data name="warningBox4.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value> <value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAplJREFUOE+N
YQUAAAKZSURBVDhPjZNdSFNhHMb/c6LivAlC686PElN0CmkmJjidrhS/EiuIoBCKJOqilMIIMkk0oQuN k11IU2Ecxv9zouK8CULrzo8SU3QKaSYmOJ2uFL8SK4igEIok6qKUwggySTShC41CRiiGdWNfYBcVWiGl
QkYohnVjX2AXFVohpRajdJYflE2npM7lnLrtnPd9ep0nSizxB8/Ne/7P8z7/czj0P55VUBBrpRdyCz3v FqN0lh+UTaekzuWcuu2c9316nSdKLPEHz817/s/zPv9zOPQ/nlVQEGulF3ILPe+8SIHK8eYR5lusLwHy
vEiByvHmEeZbrC8B8jstPEaqV443x1QjJbMnWxm3pIOP6+B5sEWy1lGc8nhjag+TStTuZcPC/DUB3JII Oy08RqpXjjfHVCMlsydbGbekg4/r4HmwRbLWUZzyeGNqD5NK1O5lw8L8NQHckgh5SAdXA3UqIxuzZKSj
eUgHVwN1KiMbs2Sko/LLCPCJfcDEHmA6FXw+B67HYbDXUYEy9m+MpeQntai/sXEDlsaSsTM8ADFRGsiL 8ssI8Il9wMQeYDoVfD4HrsdhsNdRgTL2b4yl5Ce1qL+xcQOWxpKxMzwAMVEayIv7IU8XwVnv8+XuEfJV
+yFPF8FZ7/Pl7hHyVcbX4zJSmfwmBtyWCfesDj4+hKAgXzApH5yXYLkjBvPXqFQZX0vrSQqQmn2tbLYA xtfjMlKZ/CYG3JYJ96wOPj6EoCBfMCkfnJdguSMG89eoVBlfS+tJCpCafa1stgBYzAZbzoFGo0ZIiD84
WMwGW86BRqNGSIg/OCsCd+dD/lEMR7X6+71D5KfY/uBqojNStxbclQfIecJUiOBgf0SEB4I7c8FmssDG KwJ350P+UQxHtfr7vUPkp9j+4GqiM1K3FtyVB8h5wlSI4GB/RIQHgjtzwWaywMb1WHwYg7lKOq3YVrlz
9Vh8GIO5Sjqt2Fa5c4z8PEa1hTlKACYacHGjXIjQ0EDERgeBTaSDDaeAfdwNqV8P+2W1pbnwrxYLjXTc jPw8RrWFOUoAJhpwcaNciNDQQMRGB4FNpIMNp4B93A2pXw/7ZbWlufCvFguNdNzzOta7J5S6fP4AdkVq
8zrWuyeUunz+AHZFapCkFQEDSWDvE8B6tJA/JMHZFoWZC3TCa67KJ5X7tsrM5krAPQWrdadF3bE03L8Z kKQVAQNJYO8TwHq0kD8kwdkWhZkLdMJrrsonlfu2yszmSsA9Bat1p0XdsTTcvxmJtpowyL1ar/m3PKYM
ibaaMMi9Wq/5tzymDNjKVYM3MklFk3VkcHfsAF86KN6+Qewp6g6lYPpVvPcrqFQEa0f0mgDZtBeOplBY 2MpVgzcySUWTdWRwd+wAXzoo3r5B7CnqDqVg+lW89yuoVARrR/SaANm0F46mUFjOUjYtN9BTaVQYJzPA
zlI2LTfQU2lUGCczwEZTwfoTRd147z9wvWw7qk5tg/Q2bk3AilzdabCdp3YRoJ6SRnIhDRsgfc6CZNZD RlPB+hNF3XjvP3C9bDuqTm2D9DZuTcCKXN1psJ2ndhGgnpJGciENGyB9zoJk1kMezFonySw0oIf0KVOs
HsxaJ8ksNKCH9ClTrKCDuy9zJWCE7LVU7KyjRws11OWopp75q2T6eYX67ZVktl+iwbkKGrSVk1kM9wuZ oIO7L3MlYITstVTsrKNHCzXU5aimnvmrZPp5hfrtlWS2X6LBuQoatJWTWQz3C5mEeoS6hNqt5yj7FysJ
hHqEuoTareco+xcrCcycC+G/xAAAAABJRU5ErkJggg== zJwL4b/EAAAAAElFTkSuQmCC
</value> </value>
</data> </data>
<data name="warningBox2.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> <data name="warningBox2.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value> <value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAplJREFUOE+N
YQUAAAKZSURBVDhPjZNdSFNhHMb/c6LivAlC686PElN0CmkmJjidrhS/EiuIoBCKJOqilMIIMkk0oQuN k11IU2Ecxv9zouK8CULrzo8SU3QKaSYmOJ2uFL8SK4igEIok6qKUwggySTShC41CRiiGdWNfYBcVWiGl
QkYohnVjX2AXFVohpRajdJYflE2npM7lnLrtnPd9ep0nSizxB8/Ne/7P8z7/czj0P55VUBBrpRdyCz3v FqN0lh+UTaekzuWcuu2c9316nSdKLPEHz817/s/zPv9zOPQ/nlVQEGulF3ILPe+8SIHK8eYR5lusLwHy
vEiByvHmEeZbrC8B8jstPEaqV443x1QjJbMnWxm3pIOP6+B5sEWy1lGc8nhjag+TStTuZcPC/DUB3JII Oy08RqpXjjfHVCMlsydbGbekg4/r4HmwRbLWUZzyeGNqD5NK1O5lw8L8NQHckgh5SAdXA3UqIxuzZKSj
eUgHVwN1KiMbs2Sko/LLCPCJfcDEHmA6FXw+B67HYbDXUYEy9m+MpeQntai/sXEDlsaSsTM8ADFRGsiL 8ssI8Il9wMQeYDoVfD4HrsdhsNdRgTL2b4yl5Ce1qL+xcQOWxpKxMzwAMVEayIv7IU8XwVnv8+XuEfJV
+yFPF8FZ7/Pl7hHyVcbX4zJSmfwmBtyWCfesDj4+hKAgXzApH5yXYLkjBvPXqFQZX0vrSQqQmn2tbLYA xtfjMlKZ/CYG3JYJ96wOPj6EoCBfMCkfnJdguSMG89eoVBlfS+tJCpCafa1stgBYzAZbzoFGo0ZIiD84
WMwGW86BRqNGSIg/OCsCd+dD/lEMR7X6+71D5KfY/uBqojNStxbclQfIecJUiOBgf0SEB4I7c8FmssDG KwJ350P+UQxHtfr7vUPkp9j+4GqiM1K3FtyVB8h5wlSI4GB/RIQHgjtzwWaywMb1WHwYg7lKOq3YVrlz
9Vh8GIO5Sjqt2Fa5c4z8PEa1hTlKACYacHGjXIjQ0EDERgeBTaSDDaeAfdwNqV8P+2W1pbnwrxYLjXTc jPw8RrWFOUoAJhpwcaNciNDQQMRGB4FNpIMNp4B93A2pXw/7ZbWlufCvFguNdNzzOta7J5S6fP4AdkVq
8zrWuyeUunz+AHZFapCkFQEDSWDvE8B6tJA/JMHZFoWZC3TCa67KJ5X7tsrM5krAPQWrdadF3bE03L8Z kKQVAQNJYO8TwHq0kD8kwdkWhZkLdMJrrsonlfu2yszmSsA9Bat1p0XdsTTcvxmJtpowyL1ar/m3PKYM
ibaaMMi9Wq/5tzymDNjKVYM3MklFk3VkcHfsAF86KN6+Qewp6g6lYPpVvPcrqFQEa0f0mgDZtBeOplBY 2MpVgzcySUWTdWRwd+wAXzoo3r5B7CnqDqVg+lW89yuoVARrR/SaANm0F46mUFjOUjYtN9BTaVQYJzPA
zlI2LTfQU2lUGCczwEZTwfoTRd147z9wvWw7qk5tg/Q2bk3AilzdabCdp3YRoJ6SRnIhDRsgfc6CZNZD RlPB+hNF3XjvP3C9bDuqTm2D9DZuTcCKXN1psJ2ndhGgnpJGciENGyB9zoJk1kMezFonySw0oIf0KVOs
HsxaJ8ksNKCH9ClTrKCDuy9zJWCE7LVU7KyjRws11OWopp75q2T6eYX67ZVktl+iwbkKGrSVk1kM9wuZ oIO7L3MlYITstVTsrKNHCzXU5aimnvmrZPp5hfrtlWS2X6LBuQoatJWTWQz3C5mEeoS6hNqt5yj7FysJ
hHqEuoTareco+xcrCcycC+G/xAAAAABJRU5ErkJggg== zJwL4b/EAAAAAElFTkSuQmCC
</value> </value>
</data> </data>
<data name="swRmObsoleteROData.SuperTooltip" xml:space="preserve"> <data name="swRmObsoleteROData.SuperTooltip" xml:space="preserve">
@ -334,7 +270,71 @@ Should an item become orphaned (disconnected) from the rest of the data, it will
Should an item become orphaned (disconnected) from the rest of the data, it will no longer be accessible. This tool removes any orphaned items from the database. Should an item become orphaned (disconnected) from the rest of the data, it will no longer be accessible. This tool removes any orphaned items from the database.
</value> </value>
</data> </data>
<metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> <data name="warningBox5.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAplJREFUOE+N
k11IU2Ecxv9zouK8CULrzo8SU3QKaSYmOJ2uFL8SK4igEIok6qKUwggySTShC41CRiiGdWNfYBcVWiGl
FqN0lh+UTaekzuWcuu2c9316nSdKLPEHz817/s/zPv9zOPQ/nlVQEGulF3ILPe+8SIHK8eYR5lusLwHy
Oy08RqpXjjfHVCMlsydbGbekg4/r4HmwRbLWUZzyeGNqD5NK1O5lw8L8NQHckgh5SAdXA3UqIxuzZKSj
8ssI8Il9wMQeYDoVfD4HrsdhsNdRgTL2b4yl5Ce1qL+xcQOWxpKxMzwAMVEayIv7IU8XwVnv8+XuEfJV
xtfjMlKZ/CYG3JYJ96wOPj6EoCBfMCkfnJdguSMG89eoVBlfS+tJCpCafa1stgBYzAZbzoFGo0ZIiD84
KwJ350P+UQxHtfr7vUPkp9j+4GqiM1K3FtyVB8h5wlSI4GB/RIQHgjtzwWaywMb1WHwYg7lKOq3YVrlz
jPw8RrWFOUoAJhpwcaNciNDQQMRGB4FNpIMNp4B93A2pXw/7ZbWlufCvFguNdNzzOta7J5S6fP4AdkVq
kKQVAQNJYO8TwHq0kD8kwdkWhZkLdMJrrsonlfu2yszmSsA9Bat1p0XdsTTcvxmJtpowyL1ar/m3PKYM
2MpVgzcySUWTdWRwd+wAXzoo3r5B7CnqDqVg+lW89yuoVARrR/SaANm0F46mUFjOUjYtN9BTaVQYJzPA
RlPB+hNF3XjvP3C9bDuqTm2D9DZuTcCKXN1psJ2ndhGgnpJGciENGyB9zoJk1kMezFonySw0oIf0KVOs
oIO7L3MlYITstVTsrKNHCzXU5aimnvmrZPp5hfrtlWS2X6LBuQoatJWTWQz3C5mEeoS6hNqt5yj7FysJ
zJwL4b/EAAAAAElFTkSuQmCC
</value>
</data>
<data name="swUpdateROVals.SuperTooltip" xml:space="preserve">
<value>This allows the user to update referenced objects values for multiple working drafts in a batch mode.
Be sure a current backup of the database exists prior performing this function.
It is recommended that this be done during off hours.
</value>
</data>
<data name="swRefreshTrans.SuperTooltip" xml:space="preserve">
<value>This function will refresh transitions in all procedures selected below, whether they were selected individually or as a group via a procedure set.
Be sure a current backup of the database exists prior to running this function.
If more than one procedure is selected, it is recommended that this be performed during off hours.</value>
</data>
<data name="labelX11.SuperTooltip" xml:space="preserve">
<value>This allows the user to update referenced objects values for multiple working drafts in a batch mode.
Be sure a current backup of the database exists prior performing this function.
It is recommended that this be done during off hours.
</value>
</data>
<data name="labelX6.SuperTooltip" xml:space="preserve">
<value>This function will refresh transitions in all procedures selected below, whether they were selected individually or as a group via a procedure set.
Be sure a current backup of the database exists prior to running this function.
If more than one procedure is selected, it is recommended that this be performed during off hours.</value>
</data>
<data name="warningBox1.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAplJREFUOE+N
k11IU2Ecxv9zouK8CULrzo8SU3QKaSYmOJ2uFL8SK4igEIok6qKUwggySTShC41CRiiGdWNfYBcVWiGl
FqN0lh+UTaekzuWcuu2c9316nSdKLPEHz817/s/zPv9zOPQ/nlVQEGulF3ILPe+8SIHK8eYR5lusLwHy
Oy08RqpXjjfHVCMlsydbGbekg4/r4HmwRbLWUZzyeGNqD5NK1O5lw8L8NQHckgh5SAdXA3UqIxuzZKSj
8ssI8Il9wMQeYDoVfD4HrsdhsNdRgTL2b4yl5Ce1qL+xcQOWxpKxMzwAMVEayIv7IU8XwVnv8+XuEfJV
xtfjMlKZ/CYG3JYJ96wOPj6EoCBfMCkfnJdguSMG89eoVBlfS+tJCpCafa1stgBYzAZbzoFGo0ZIiD84
KwJ350P+UQxHtfr7vUPkp9j+4GqiM1K3FtyVB8h5wlSI4GB/RIQHgjtzwWaywMb1WHwYg7lKOq3YVrlz
jPw8RrWFOUoAJhpwcaNciNDQQMRGB4FNpIMNp4B93A2pXw/7ZbWlufCvFguNdNzzOta7J5S6fP4AdkVq
kKQVAQNJYO8TwHq0kD8kwdkWhZkLdMJrrsonlfu2yszmSsA9Bat1p0XdsTTcvxmJtpowyL1ar/m3PKYM
2MpVgzcySUWTdWRwd+wAXzoo3r5B7CnqDqVg+lW89yuoVARrR/SaANm0F46mUFjOUjYtN9BTaVQYJzPA
RlPB+hNF3XjvP3C9bDuqTm2D9DZuTcCKXN1psJ2ndhGgnpJGciENGyB9zoJk1kMezFonySw0oIf0KVOs
oIO7L3MlYITstVTsrKNHCzXU5aimnvmrZPp5hfrtlWS2X6LBuQoatJWTWQz3C5mEeoS6hNqt5yj7FysJ
zJwL4b/EAAAAAElFTkSuQmCC
</value>
</data>
<metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>38</value> <value>38</value>
</metadata> </metadata>
</root> </root>

View File

@ -1578,7 +1578,7 @@ namespace VEPROMS
Volian.Base.Library.VlnItextFont.RegisterPromsFonts(); Volian.Base.Library.VlnItextFont.RegisterPromsFonts();
InitializeSecurity(); InitializeSecurity();
UpdateUser(); UpdateUser();
btnSecurity = new ButtonItem("btnSecurity", "Security"); // C2019-002: move security & format items into submenus btnSecurity = new ButtonItem("btnSecurity", "Security"); // C2019-002: move security & format items into submenus
btnFormats = new ButtonItem("btnFormats", "Formats"); btnFormats = new ButtonItem("btnFormats", "Formats");
btnAdmin.SubItems.Add(btnSecurity); btnAdmin.SubItems.Add(btnSecurity);
btnAdmin.SubItems.Add(btnFormats); btnAdmin.SubItems.Add(btnFormats);
@ -1648,6 +1648,11 @@ namespace VEPROMS
btnUpdateFormats.Visible = isVisible; btnUpdateFormats.Visible = isVisible;
btnResetSecurity.Visible = isVisible; btnResetSecurity.Visible = isVisible;
btnAdministrativeTools.Visible = isVisible || HasSetAdministrator(MyUserInfo); btnAdministrativeTools.Visible = isVisible || HasSetAdministrator(MyUserInfo);
// C2020-034 hide the Formats and Security buttons if user is a Set Administrator
// if use is not an Administrator or Set Administrator then disable the Administrator button
btnFormats.Visible = isVisible;
btnSecurity.Visible = isVisible;
btnAdmin.Enabled = isVisible || HasSetAdministrator(MyUserInfo);
tmrCloseTabItems = new Timer(); tmrCloseTabItems = new Timer();
tmrCloseTabItems.Interval = 100; tmrCloseTabItems.Interval = 100;
tmrCloseTabItems.Tick += new EventHandler(tmrCloseTabItems_Tick); tmrCloseTabItems.Tick += new EventHandler(tmrCloseTabItems_Tick);
@ -3733,7 +3738,6 @@ namespace VEPROMS
// Enable/disable the New button based on the user's security settings at the current folder level // Enable/disable the New button based on the user's security settings at the current folder level
// B2015-193 // B2015-193
btnNew.Enabled = UserInfo.CanCreateFolders(MyUserInfo, fi); btnNew.Enabled = UserInfo.CanCreateFolders(MyUserInfo, fi);
if (!btnNew.Enabled) return; // just return, user cannot add a new folder or workingdraft
// if at top, 'VEPROMS', folder and childfolders below this only // if at top, 'VEPROMS', folder and childfolders below this only
// option is to create a new (sub)folder, i.e. no submenu items. // option is to create a new (sub)folder, i.e. no submenu items.