B2020-111 Limit where the Set Amin can create new folders

This commit is contained in:
John Jenko 2020-10-08 19:40:37 +00:00
parent 9953efd962
commit 8b82722c6b

View File

@ -653,25 +653,32 @@ namespace Volian.Controls.Library
fi = tn.VEObject as FolderInfo; fi = tn.VEObject as FolderInfo;
bool DoSpecificInfo = fi.ActiveFormat.PlantFormat.FormatData.SpecificInfo; bool DoSpecificInfo = fi.ActiveFormat.PlantFormat.FormatData.SpecificInfo;
if (ui.IsAdministrator() || ui.IsSetAdministrator(fi))// && fi.MyParent == null) //VEPROMS level if (ui.IsAdministrator() || ui.IsSetAdministrator(fi))// && fi.MyParent == null) //VEPROMS level
{ {
if(fi.HasWorkingDraft) if (fi.HasWorkingDraft)
cm.MenuItems.Add("Export Procedure Set", new EventHandler(mi_Click)); cm.MenuItems.Add("Export Procedure Set", new EventHandler(mi_Click));
else else
cm.MenuItems.Add("Import Procedure Set", new EventHandler(mi_Click)); cm.MenuItems.Add("Import Procedure Set", new EventHandler(mi_Click));
if (DoSpecificInfo) if (DoSpecificInfo)
cm.MenuItems.Add("Folder Specific Information", new EventHandler(mi_Click)); // C2020-008: change to 'Folder' cm.MenuItems.Add("Folder Specific Information", new EventHandler(mi_Click)); // C2020-008: change to 'Folder'
} }
//_MyLog.WarnFormat("Context Menu 1b - {0}", GC.GetTotalMemory(true)); //_MyLog.WarnFormat("Context Menu 1b - {0}", GC.GetTotalMemory(true));
if (ui.IsAdministrator() || ui.IsSetAdministrator(fi)) if (ui.IsAdministrator() || ui.IsSetAdministrator(fi))
{ {
if (fi.MyParent != null) // don't allow insert before/after if at top node if (fi.MyParent != null) // don't allow insert before/after if at top node
{ {
if (!ui.IsAdministrator() && DoSpecificInfo) cm.MenuItems.Add("Procedure Set Specific Information", new EventHandler(mi_Click)); if (!ui.IsAdministrator() && DoSpecificInfo) cm.MenuItems.Add("Procedure Set Specific Information", new EventHandler(mi_Click));
cm.MenuItems.Add("Insert Folder Before", new EventHandler(mi_Click)); // B2020-111 only allow Set Administrator to add new folders inside folders they admininstrate
cm.MenuItems.Add("Insert Folder After", new EventHandler(mi_Click)); if (ui.IsAdministrator()||ui.IsSetAdministrator(fi.MyParent))
{
cm.MenuItems.Add("Insert Folder Before", new EventHandler(mi_Click));
cm.MenuItems.Add("Insert Folder After", new EventHandler(mi_Click));
}
} }
if (fi.FolderDocVersionCount == 0) cm.MenuItems.Add("New Folder", new EventHandler(mi_Click)); // B2020-111 only allow Set Administrator to add new folders inside folders they admininstrate
if (fi.ChildFolderCount == 0 && !fi.HasWorkingDraft) cm.MenuItems.Add("Create Working Draft", new EventHandler(mi_Click)); if ((ui.IsAdministrator() || ui.IsSetAdministrator(fi.MyParent)) && fi.FolderDocVersionCount == 0)
cm.MenuItems.Add("New Folder", new EventHandler(mi_Click));
if (fi.ChildFolderCount == 0 && !fi.HasWorkingDraft)
cm.MenuItems.Add("Create Working Draft", new EventHandler(mi_Click));
} }
if (fi.HasWorkingDraft) if (fi.HasWorkingDraft)
cm.MenuItems.Add("Print Transition Report", new EventHandler(mi_Click)); cm.MenuItems.Add("Print Transition Report", new EventHandler(mi_Click));