public IControlValidation Create(FieldMacroRule info) { return(new EmailControlValidation { ValidationRule = "email", ValidationErrorMessage = string.IsNullOrEmpty(info.ErrorMessage) ? "Please provide your email address" : info.ErrorMessage }); }
public IControlValidation Create(FieldMacroRule info) { var parser = new XmlRulesParser(); var rule = parser.GetXmlRules(info); return(new DateToControlValidation { HasValue = true, ValidationValue = rule.Rule.Properties.T, ValidationRule = "date-to", ValidationErrorMessage = string.IsNullOrEmpty(info.ErrorMessage) ? "Date is greater than maximum" : info.ErrorMessage }); }
public XmlRules GetXmlRules(FieldMacroRule info) { var regex = new Regex("<rules>(.+?)</rules>"); var match = regex.Match(info.MacroRule); var data = Regex.Unescape(match.Value); var serializer = new XmlSerializer(typeof(XmlRules)); using (var reader = new StringReader(data)) { return((XmlRules)serializer.Deserialize(reader)); } }
public IControlValidation Create(FieldMacroRule info) { var parser = new XmlRulesParser(); var rule = parser.GetXmlRules(info); return(new CompareToControlValidation { HasValue = true, ValidationValue = rule.Rule.Properties.T, ValidationRule = "equalto", ValidationErrorMessage = string.IsNullOrEmpty(info.ErrorMessage) ? "Not valid" : info.ErrorMessage }); }
public IControlValidation Create(FieldMacroRule info) { var parser = new XmlRulesParser(); var rule = parser.GetXmlRules(info); return(new MinimumLengthControlValidation() { HasValue = true, ValidationValue = rule.Rule.Properties.T, ValidationRule = "minlength", ValidationErrorMessage = string.IsNullOrEmpty(info.ErrorMessage) ? "Length is less than minimum" : info.ErrorMessage }); }
public IControlValidation Create(FieldMacroRule info) { var parser = new XmlRulesParser(); var rule = parser.GetXmlRules(info); return(new RegularExpressionControlValidation() { HasValue = true, ValidationValue = rule.Rule.Properties.T, ValidationRule = "regular-expression", ValidationErrorMessage = string.IsNullOrEmpty(info.ErrorMessage) ? "Invalid data entered" : info.ErrorMessage, MacroValidationRule = info.MacroRule }); }
public IControlValidation Create(FieldMacroRule rule) { var typeProvider = new ControlValidationTypeProvider(); var type = typeProvider.GetValidationType(rule.MacroRule); IControlValidationFactory factory; if (ControlValidationFactories.TryGetValue(type, out factory)) { return(factory.Create(rule)); } return(null); }
/// <summary> /// Creates new <see cref="FieldMacroRule"/> object based on inputs. /// </summary> private FieldMacroRule CreateMacroRule() { if (!IsValid()) { return(null); } MacroRuleTree main = null; FieldMacroRule fmr = null; MacroRuleInfo mri = MacroRuleInfoProvider.GetMacroRuleInfo(mSelectedRuleName); if (mri != null) { main = new MacroRuleTree(); MacroRuleTree childern = new MacroRuleTree() { RuleText = mri.MacroRuleText, RuleName = mri.MacroRuleName, RuleCondition = mri.MacroRuleCondition, Parent = main }; main.Children.Add(childern); foreach (string paramName in formProperties.Fields) { // Load value from the form control FormEngineUserControl ctrl = formProperties.FieldControls[paramName]; if (ctrl != null) { // Convert value to EN culture var dataType = ctrl.FieldInfo.DataType; var convertedValue = DataTypeManager.ConvertToSystemType(TypeEnum.Field, dataType, ctrl.Value); string value = ValidationHelper.GetString(convertedValue, "", CultureHelper.EnglishCulture); string displayName = ctrl.ValueDisplayName; if (String.IsNullOrEmpty(displayName)) { displayName = value; } MacroRuleParameter param = new MacroRuleParameter { Value = value, Text = displayName, ValueType = dataType }; childern.Parameters.Add(paramName, param); } } string macroRule = string.Format("Rule(\"{0}\", \"{1}\")", MacroElement.EscapeSpecialChars(main.GetCondition()), MacroElement.EscapeSpecialChars(main.GetXML())); if (!MacroSecurityProcessor.IsSimpleMacro(macroRule)) { // Sign complex macros macroRule = MacroSecurityProcessor.AddMacroSecurityParams(macroRule, MacroIdentityOption.FromUserInfo(MembershipContext.AuthenticatedUser)); } fmr = new FieldMacroRule(); fmr.MacroRule = string.Format("{{%{0}%}}", macroRule); fmr.ErrorMessage = txtErrorMsg.Text; } return(fmr); }
/// <summary> /// Creates new <see cref="FieldMacroRule"/> object based on inputs. /// </summary> private FieldMacroRule CreateMacroRule() { if (!IsValid()) { return null; } MacroRuleTree main = null; FieldMacroRule fmr = null; MacroRuleInfo mri = MacroRuleInfoProvider.GetMacroRuleInfo(mSelectedRuleName); if (mri != null) { main = new MacroRuleTree(); MacroRuleTree childern = new MacroRuleTree() { RuleText = mri.MacroRuleText, RuleName = mri.MacroRuleName, RuleCondition = mri.MacroRuleCondition, Parent = main }; main.Children.Add(childern); foreach (string paramName in formProperties.Fields) { // Load value from the form control FormEngineUserControl ctrl = formProperties.FieldControls[paramName]; if (ctrl != null) { // Convert value to EN culture var dataType = ctrl.FieldInfo.DataType; var convertedValue = DataTypeManager.ConvertToSystemType(TypeEnum.Field, dataType, ctrl.Value); string value = ValidationHelper.GetString(convertedValue, "", CultureHelper.EnglishCulture); string displayName = ctrl.ValueDisplayName; if (String.IsNullOrEmpty(displayName)) { displayName = value; } MacroRuleParameter param = new MacroRuleParameter { Value = value, Text = displayName, ValueType = dataType }; childern.Parameters.Add(paramName, param); } } string macroRule = string.Format("Rule(\"{0}\", \"{1}\")", MacroElement.EscapeSpecialChars(main.GetCondition()), MacroElement.EscapeSpecialChars(main.GetXML())); if (!MacroSecurityProcessor.IsSimpleMacro(macroRule)) { // Sign complex macros macroRule = MacroSecurityProcessor.AddMacroSecurityParams(macroRule, MembershipContext.AuthenticatedUser.UserName); } fmr = new FieldMacroRule(); fmr.MacroRule = string.Format("{{%{0}%}}", macroRule); fmr.ErrorMessage = txtErrorMsg.Text; } return fmr; }