Ejemplo n.º 1
0
        public override void OnFinish(object sender, EventArgs e)
        {
            var folderToken = (FormFolderEntityToken)EntityToken;
            var stepName    = GetBinding <string>("StepName");
            var formName    = GetBinding <string>("FormName");

            var wizard = DynamicWizardsFacade.GetWizard(folderToken.FormName);
            var step   = new WizardStepModel
            {
                Name          = stepName,
                FormName      = formName,
                Label         = stepName,
                LocalOrdering = wizard.Model.Steps.Count + 1
            };

            wizard.Model.Steps.Add(step);

            DynamicWizardsFacade.SaveWizard(wizard);

            var wizardStepToken = new FormWizardStepEntityToken(wizard.Name, step.Name);
            var workflowToken   = new WorkflowActionToken(typeof(EditWizardStepWorkflow));

            CreateAddNewTreeRefresher(EntityToken).PostRefreshMessages(wizardStepToken);
            ExecuteAction(wizardStepToken, workflowToken);
        }
        public override void OnFinish(object sender, EventArgs e)
        {
            var stepToken = GetBinding <FormWizardStepEntityToken>("BoundToken");

            var stepName            = GetBinding <string>("StepName");
            var formName            = GetBinding <string>("FormName");
            var stepLabel           = GetBinding <string>("StepLabel");
            var nextButtonLabel     = GetBinding <string>("NextButtonLabel");
            var previousButtonLabel = GetBinding <string>("PreviousButtonLabel");

            var isNewName = stepName != stepToken.StepName;

            var wizard = DynamicWizardsFacade.GetWizard(stepToken.WizardName);

            var step = wizard.Model.Steps.Single(s => s.Name == stepToken.StepName);

            step.Name                = stepName;
            step.FormName            = formName;
            step.Label               = stepLabel;
            step.NextButtonLabel     = nextButtonLabel;
            step.PreviousButtonLabel = previousButtonLabel;

            DynamicWizardsFacade.SaveWizard(wizard);

            if (isNewName)
            {
                stepToken = new FormWizardStepEntityToken(wizard.Name, stepName);

                UpdateBinding("BoundToken", stepToken);
                SetSaveStatus(true, stepToken);
            }
            else
            {
                SetSaveStatus(true);
            }

            CreateParentTreeRefresher().PostRefreshMessages(EntityToken);
        }