mirror of
https://github.com/OrchardCMS/Orchard.git
synced 2025-10-15 03:25:23 +08:00
25 lines
1.0 KiB
C#
25 lines
1.0 KiB
C#
using System;
|
|
using Orchard.DynamicForms.Services;
|
|
using Orchard.DynamicForms.Services.Models;
|
|
using Orchard.Localization;
|
|
|
|
namespace Orchard.DynamicForms.ValidationRules {
|
|
public class OptionRequired : ValidationRule {
|
|
public override void Validate(ValidateInputContext context) {
|
|
if (String.IsNullOrWhiteSpace(context.AttemptedValue)) {
|
|
var message = GetValidationMessage(context);
|
|
context.ModelState.AddModelError(context.FieldName, message.Text);
|
|
}
|
|
}
|
|
|
|
public override void RegisterClientAttributes(RegisterClientValidationAttributesContext context) {
|
|
context.ClientAttributes["data-val-optionrequired"] = GetValidationMessage(context).Text;
|
|
}
|
|
|
|
private LocalizedString GetValidationMessage(ValidationContext context) {
|
|
return String.IsNullOrWhiteSpace(ErrorMessage)
|
|
? T("An option is required for {0}.", context.FieldName)
|
|
: new LocalizedString(Tokenize(ErrorMessage, context));
|
|
}
|
|
}
|
|
} |