protected bool IsRoleAuthorized(string roleId, int wfStepId) { DataSet stepsRolesSet = WorkflowStepInfoProvider.GetStepRoles(wfStepId); if (!DataHelper.DataSourceIsEmpty(stepsRolesSet)) { foreach (DataRow stepRole in stepsRolesSet.Tables[0].Rows) { if (stepRole["RoleID"].ToString() == roleId) { return(true); } } } return(false); }
protected void Page_Load(object sender, EventArgs e) { lblSite.Text = GetString("Administration-User_Edit_Sites.SelectSite"); workflowStepId = QueryHelper.GetInteger("workflowStepId", 0); // Set site selector siteSelector.AllowGlobal = true; siteSelector.DropDownSingleSelect.AutoPostBack = true; siteSelector.AllowAll = false; siteSelector.OnlyRunningSites = false; siteSelector.UniSelector.OnSelectionChanged += UniSelector_OnSelectionChanged; usRoles.OnSelectionChanged += usRoles_OnSelectionChanged; if (!RequestHelper.IsPostBack()) { siteId = CMSContext.CurrentSiteID; siteSelector.Value = siteId; } else { siteId = ValidationHelper.GetInteger(siteSelector.Value, 0); } // If global role selected - set siteID to 0 if (siteSelector.GlobalRecordValue == siteId.ToString()) { siteId = 0; } string siteIDWhere = (siteId == 0) ? "SiteID IS NULL" : "SiteID = " + siteId; usRoles.WhereCondition = siteIDWhere + " AND RoleGroupID IS NULL"; // Get the active roles for this site DataSet ds = WorkflowStepInfoProvider.GetStepRoles(workflowStepId); if (!DataHelper.DataSourceIsEmpty(ds)) { currentValues = TextHelper.Join(";", SqlHelperClass.GetStringValues(ds.Tables[0], "RoleID")); } if (!RequestHelper.IsPostBack()) { usRoles.Value = currentValues; } }