private void GetContextData() { if (Context.Items[Common.Names._CNTXT_EditMode] != null) _editMode = (EditMode)Context.Items[Common.Names._CNTXT_EditMode]; else _editMode = EditMode.Add; if (_editMode == EditMode.Edit) { _termGroupId = (Guid)Context.Items[Common.Names._CNTXT_TermGroupId]; _termGroup = _template.FindTermGroup(_termGroupId); } else { _termGroup = new TermGroup(Helper.GetDefaultTermGroupName(_template),String.Empty, _template.SecurityModel,Business.TermGroup.TermGroupType.AdvancedBasicTerm); _termGroupId = _termGroup.ID; } }
//Generate the Comments collection (of N) based on an existing Template public static List<TermGroup> Create(XmlDocument xmlTemplateDoc) { List<TermGroup> termGroups = new List<TermGroup>(); XmlNodeList nodeTermGroups = xmlTemplateDoc.SelectNodes(Utility.XMLHelper.GetXPath(true, XMLNames._E_TemplateDef, XMLNames._E_TermGroups, XMLNames._E_TermGroup)); if (nodeTermGroups != null) { int order = 0; foreach (XmlNode nodeTermGroup in nodeTermGroups) { TermGroup termGroup = new TermGroup(nodeTermGroup); termGroup.Order = order++; termGroups.Add(termGroup); } } //termGroups.Sort(); //If the TermGroups are not defined, then assume that Basic Security applies if (termGroups.Count == 0) { termGroups.Add(new TermGroup(null, String.Empty, SecurityModel.Basic, TermGroup.TermGroupType.BasicSecurity)); } return termGroups; }
public bool CanAccessTermGroup(TermGroup termGroup, List<string> userRoles) { return CanAccessTermGroup(termGroup.ID, userRoles); }
public static bool Equals(TermGroup a, TermGroup b) { if ((object)a == null) return ((object)b == null); if ((object)b == null) return false; return a.ID.Equals(b.ID); }
public bool Equals(TermGroup other) { if ((object)other == null) return false; return ID.Equals(other.ID); }
private ManagedItemProfilePanel RenderControls(TermGroup tg) { ManagedItemProfilePanel mipp = (ManagedItemProfilePanel)LoadControl(Common.Names._UC_ManagedItemProfilePanel); mipp.TermGroup = tg; Dictionary<Guid /*TermGroupID*/, bool /*CanEdit*/> canEditTermGroup = BuildEditableTermGroups(); foreach (Business.Term term in _managedItem.FindAllBasicTerms(tg)) { switch (term.TermType) { case TermType.PlaceHolderAttachments: if (_managedItem.AllowAttachments) RenderAttachments(mipp.TermsTable, term.TermGroupID); break; case TermType.PlaceHolderComments: if (_managedItem.AllowComments) RenderComments(mipp.TermsTable, term.TermGroupID); break; default: BaseProfileControl c = CreateControl(term, canEditTermGroup[term.TermGroupID]); if (c != null) { TableRow row = new TableRow(); TableCell cellLabel = new TableCell(); Helper.FormatCaptionCell(cellLabel, term); row.Cells.Add(cellLabel); TableCell cellValue = new TableCell(); Helper.FormatDataCell(cellValue, true); cellValue.Controls.Add(c); row.Cells.Add(cellValue); mipp.TermsTable.Rows.Add(row); } break; } } return mipp; }
public Guid AddTermGroup(string name, string description, SecurityModel securityModel, Business.TermGroup.TermGroupType termGroupType) { TermGroup termGroup = new TermGroup(name, description, securityModel, termGroupType); TermGroups.Add(termGroup); foreach (Workflow workflow in Workflows) { foreach (State state in workflow.States) { state.AddTermGroup(termGroup.ID, true); } } return termGroup.ID; }
public List<Term> FindAllBasicTerms(TermGroup tg) { List<Term> rtn = new List<Term>(); foreach (Term t in BasicTerms) if (t.TermGroupID == tg.ID) rtn.Add(t); return rtn; }
public List<TermGroup> GetTermGroups(TermGroup.TermGroupType type) { Predicate<TermGroup> p = delegate(TermGroup tg) { return (tg.Type == type); }; return TermGroups.FindAll(p); }
public TermGroup FindTermGroup(TermGroup.TermGroupType type) { Predicate<TermGroup> p = delegate(TermGroup tg) { return (tg.Type == type); }; return TermGroups.Find(p); }
protected override void LoadViewState(object savedState) { base.LoadViewState(savedState); _managedItem = (Business.ManagedItem)ViewState[VSKEY_MANAGEDITEM]; if (ViewState[VSKEY_ACTIVETERMGROUPID] != null) { Guid activeTermGroupId = (Guid)ViewState[VSKEY_ACTIVETERMGROUPID]; ActiveTermGroup = _managedItem.FindTermGroup(activeTermGroupId); } else ActiveTermGroup = null; _isChanged = bool.Parse(Request.Form[_KH_K_HF_IS_CHANGED]); }
protected virtual void GetManagedItem() { string qsValue = Request.QueryString[Common.Names._QS_MANAGED_ITEM_ID]; bool loadComplexLists = false; _managedItem = Business.ManagedItem.Get(new Guid(qsValue), loadComplexLists); string qsTermGroup = Request.QueryString[Common.Names._QS_MANAGED_ITEM_TERMGROUP]; if (_securityHelper == null) _securityHelper = new SecurityHelper(_itatSystem); if (string.IsNullOrEmpty(qsTermGroup)) { bool isAdmin = Utility.ListHelper.HaveAMatch(_itatSystem.AllowedRoles(Business.XMLNames._AF_AdminViewer), _securityHelper.UserRoles); ActiveTermGroup = _managedItem.GetDefaultTermGroup(_securityHelper.UserRoles, isAdmin); try { Guid guid = ActiveTermGroup.ID; } catch (Exception) { UnauthorizedPageAccess(); } } else { ActiveTermGroup = _managedItem.FindTermGroup(new Guid(qsTermGroup)); if (ActiveTermGroup == null) throw new Exception(string.Format("Term Group ID {0} not found.", qsTermGroup)); if (!_managedItem.CanAccessTermGroup(ActiveTermGroup, _securityHelper.UserRoles)) { if (!Utility.ListHelper.HaveAMatch(_itatSystem.AllowedRoles(Business.XMLNames._AF_AdminViewer), _securityHelper.UserRoles)) UnauthorizedPageAccess(); } } }
protected override void LoadViewState(object savedState) { base.LoadViewState(savedState); _editMode = (EditMode)ViewState[_KH_VS_EDITMODE]; _termGroup = (TermGroup)ViewState[_KH_VS_TERMGROUP]; }