protected void ButtonAddWorkflowPermission_OnClick(Object sender, EventArgs eventArgs) { Server.Application.WorkflowPermission newPermission = null; SaveResponseLabel.Text = String.Empty; if (MercuryApplication == null) { return; } if (WorkflowPermissionTeamSelection.SelectedItem == null) { return; } if (WorkflowPermissionTeamSelection.SelectedValue == String.Empty) { return; } if (workflow.ContainsPermissionWorkTeam(Convert.ToInt64(WorkflowPermissionTeamSelection.SelectedValue))) { return; } newPermission = new Server.Application.WorkflowPermission(); newPermission.WorkflowId = workflow.Id; newPermission.WorkTeamId = Convert.ToInt64(WorkflowPermissionTeamSelection.SelectedValue); newPermission.IsGranted = (WorkflowPermissionTeamPermissionSelection.SelectedValue == "1"); newPermission.IsDenied = (WorkflowPermissionTeamPermissionSelection.SelectedValue == "0"); newPermission.CreateAccountInfo = workflow.CreateAccountInfo; newPermission.ModifiedAccountInfo = workflow.ModifiedAccountInfo; workflow.Permissions.Add(newPermission); InitializePermissionsPage(); return; }
public Server.Application.WorkflowPermission Permission(Int64 workTeamId) { Server.Application.WorkflowPermission permission = null; foreach (Server.Application.WorkflowPermission currentPermission in permissions) { if (currentPermission.WorkTeamId == workTeamId) { permission = currentPermission; break; } } return(permission); }
public Boolean IsEqual(Workflow compareWorkflow) { Boolean isEqual = base.IsEqual((CoreConfigurationObject)compareWorkflow); isEqual &= (entityType == compareWorkflow.EntityType); isEqual &= (actionVerb == compareWorkflow.ActionVerb); isEqual &= (framework == compareWorkflow.Framework); isEqual &= (assemblyPath == compareWorkflow.AssemblyPath); isEqual &= (assemblyName == compareWorkflow.AssemblyName); isEqual &= (assemblyClassName == compareWorkflow.AssemblyClassName); isEqual &= (workflowParameters.Count == compareWorkflow.WorkflowParameters.Count); isEqual &= (permissions.Count == compareWorkflow.Permissions.Count); // COMPARE WORKFLOW PARAMETERS if (isEqual) { foreach (String currentParameterName in workflowParameters.Keys) { if (compareWorkflow.WorkflowParameters.ContainsKey(currentParameterName)) { isEqual &= (workflowParameters[currentParameterName] == compareWorkflow.WorkflowParameters[currentParameterName]); if (!isEqual) { break; } } else { isEqual = false; break; } } } // COMPARE WORKFLOW PERMISSIONS if (isEqual) { foreach (Server.Application.WorkflowPermission currentPermission in permissions) { Server.Application.WorkflowPermission comparePermission = Permission(currentPermission.WorkTeamId); if (comparePermission == null) { isEqual = false; break; } isEqual &= ((currentPermission.IsGranted == comparePermission.IsGranted) && (currentPermission.IsDenied == comparePermission.IsDenied)); if (!isEqual) { break; } } } return(isEqual); }