public override void OnFinish(object sender, EventArgs e) { var token = (FieldValidatorsEntityToken)EntityToken; var definition = DynamicFormsFacade.GetFormByName(token.FormName); var field = definition.Model.Fields.Get(token.FieldName); var validatorType = Type.GetType(GetBinding <string>("ValidatorType")); var message = GetBinding <string>("Message"); var attribute = (FormValidationAttribute)Activator.CreateInstance(validatorType, message); field.Attributes.Add(attribute); DynamicFormsFacade.SaveForm(definition); using (var writer = ResourceFacade.GetResourceWriter()) { var setting = token.FieldName + ".Validation." + attribute.GetType().Name; var key = Localization.GenerateKey(token.FormName, setting); writer.AddResource(key, message); } var editToken = new FieldValidatorsEntityToken(token.FormName, token.FieldName, validatorType); var workflowToken = new WorkflowActionToken(typeof(EditFieldValidatorWorkflow)); CreateSpecificTreeRefresher().PostRefreshMessages(EntityToken); ExecuteAction(editToken, workflowToken); }
private static void UpdateOrder(DynamicFormDefinition formDefinition, string serializedOrder) { var newOrder = ParseNewOrder(serializedOrder); var tmpList = newOrder.OrderBy(i => i.Value).Select(itm => formDefinition.Model.Fields.Get(itm.Key)).ToList(); formDefinition.Model.Fields.Clear(); foreach (var f in tmpList) { formDefinition.Model.Fields.Add(f); } DynamicFormsFacade.SaveForm(formDefinition); }
public override void OnFinish(object sender, EventArgs e) { var name = GetBinding <string>("Name"); var model = new DynamicFormDefinition(name); DynamicFormsFacade.SaveForm(model); var data = ModelReferenceFacade.GetModelReference(name); var token = data.GetDataEntityToken(); var workflowToken = new WorkflowActionToken(typeof(EditFormWorkflow)); CreateSpecificTreeRefresher().PostRefreshMessages(EntityToken); ExecuteAction(token, workflowToken); }
public override void OnFinish(object sender, EventArgs e) { var dataSourceToken = (DataSourceEntityToken)EntityToken; var entryValue = GetBinding <string>("EntryValue"); var definition = DynamicFormsFacade.GetFormByName(dataSourceToken.FormName); var field = definition.Model.Fields.Get(dataSourceToken.FieldName); var datasSource = field.DataSource.Select(itm => itm.Key).ToList(); datasSource.Add(entryValue); var dataSourceAttribute = field.Attributes.OfType <StringBasedDataSourceAttribute>().First(); field.Attributes.Remove(dataSourceAttribute); dataSourceAttribute = new StringBasedDataSourceAttribute(datasSource.ToArray()); field.Attributes.Add(dataSourceAttribute); DynamicFormsFacade.SaveForm(definition); CreateAddNewTreeRefresher(EntityToken).PostRefreshMessages(new StringBasedDataSourceEntryEntityToken(dataSourceToken.FormName, dataSourceToken.FieldName, entryValue)); }