protected override DriverResult Editor(ButtonToWorkflowsPart part, IUpdateModel updater, dynamic shapeHelper) { var bigmodel = new ButtonToWorkflowsVM(part); if (updater.TryUpdateModel(bigmodel, Prefix, null, null)) { if (part.ContentItem.Id != 0) { foreach (ButtonToWorkflowsVMItem model in bigmodel.ElencoButtons) { if (_orchardServices.WorkContext.HttpContext.Request.Form["submit.Save"] == "submit.CustomButton" + model.ButtonText) { var content = _orchardServices.ContentManager.Get(part.ContentItem.Id, VersionOptions.Latest); //_workflowManager.TriggerEvent("ButtonToWorkflowsSubmitted", content, () => new Dictionary<string, object> { { "Content", content } }); // var settings = part.TypePartDefinition.Settings.GetModel<ButtonsSetting>(); // settings.ButtonNumber = settings.ButtonNumber[0].Split(','); ButtonToWorkflowsSettingsPart settingmodulo = _orchardServices.WorkContext.CurrentSite.As <ButtonToWorkflowsSettingsPart>(); string[] elencoButtonsMessage = settingmodulo.ButtonsMessage.Split('£'); string[] elencoButtonsActionAsync = settingmodulo.ButtonsAsync.Split('£'); part.ActionToExecute = model.ButtonAction + "_btn" + (model.ButtonNumber + 1).ToString(); // _workflowManager.TriggerEvent(model.ButtonAction+"_btn"+(model.ButtonNumber+1).ToString(), content, () => new Dictionary<string, object> { { "Content", content } }); part.MessageToWrite = elencoButtonsMessage[model.ButtonNumber].ToString(); string valAsync = string.IsNullOrEmpty(elencoButtonsActionAsync[model.ButtonNumber]) ? "" : elencoButtonsActionAsync[model.ButtonNumber].ToLower(); part.ActionAsync = valAsync.Equals("true"); } } } else { updater.AddModelError("Error Saving Content Item", T("Error Saving Content Item")); } } // var viewModel = new ButtonToWorkflowsVM(); return(ContentShape("Parts_ButtonToWorkflows", () => shapeHelper.EditorTemplate(TemplateName: "Parts/ButtonToWorkflows", Model: bigmodel, Prefix: Prefix))); }
protected override DriverResult Editor(ButtonToWorkflowsPart part, dynamic shapeHelper) { var model = new ButtonToWorkflowsVM(part); var settings = part.TypePartDefinition.Settings.GetModel <ButtonsSetting>(); settings.ButtonNumber = settings.ButtonNumber[0].Split(','); // model.ButtonText = settings.ButtonText; ButtonToWorkflowsSettingsPart settingmodulo = _orchardServices.WorkContext.CurrentSite.As <ButtonToWorkflowsSettingsPart>(); try { string[] elencoButtonsText = settingmodulo.ButtonsText.Split('£'); string[] elencoButtonsAction = settingmodulo.ButtonsAction.Split('£'); foreach (string intbutton in settings.ButtonNumber) { model.ElencoButtons.Where(x => x.ButtonNumber == Convert.ToInt32(intbutton)).FirstOrDefault().ButtonAction = elencoButtonsAction[Convert.ToInt32(intbutton)]; model.ElencoButtons.Where(x => x.ButtonNumber == Convert.ToInt32(intbutton)).FirstOrDefault().ButtonText = elencoButtonsText[Convert.ToInt32(intbutton)]; } //for (int i = 0; i < elencoButtonsText.Count(); i++) { // if (elencoButtonsText[i] == model.ButtonText) { // model.ButtonAction = elencoButtonsAction[i]; // model.ButtonText = settings.ButtonText; // } //} } catch { } return(ContentShape("Parts_ButtonToWorkflows", () => shapeHelper.EditorTemplate(TemplateName: "Parts/ButtonToWorkflows", Model: model, Prefix: Prefix))); }