override protected void BaseConstructor(Application applicationReference) { base.BaseConstructor(applicationReference); events.Clear(); events.Add("OnBeforeMembershipAdd", applicationReference.ActionById(1)); // WORKFLOW events.Add("OnMembershipAdd", new Mercury.Client.Core.Action.Action(application)); events.Add("OnBeforeMembershipTerminate", applicationReference.ActionById(1)); // WORKFLOW events.Add("OnMembershipTerminate", new Mercury.Client.Core.Action.Action(application)); return; }
public void RebindActionParameters(Application application) { Action baseAction = application.ActionById(Id); // copy over workflow if ((baseAction.Name == "Workflow") && (baseAction.ActionParameters.ContainsKey("Workflow"))) { if ((Name == "Workflow") && (actionParameters.ContainsKey("Workflow"))) { baseAction.ActionParameters["Workflow"] = actionParameters["Workflow"]; } if (!String.IsNullOrEmpty(baseAction.ActionParameters["Workflow"].Value)) { Work.Workflow workflow = application.WorkflowGet(Convert.ToInt64(baseAction.ActionParameters["Workflow"].Value), true); foreach (String workflowParameterName in workflow.WorkflowParameters.Keys) { baseAction.ActionParameters.Add(workflowParameterName, workflow.WorkflowParameters[workflowParameterName]); } } } actionParameters.Clear(); actionParameters = baseAction.Copy().ActionParameters; return; }