On Github magnuf / FRP-.NET-MVC
BEKK Trondheim minikonferanse 6/12/13
Magnus Sellereite Fjell
public string Navn { get; set; }
[Required(ErrorMessage = "Adresse mangler")]
public string Adresse { get; set; }
[Required(ErrorMessage = "Postnummer mangler")]
[RegularExpression("^\\d{4}$",
ErrorMessage = "Sikker på at dette er rett postnummer?")]
public string Postnummer { get; set; }
[Required(ErrorMessage = "Poststed mangler")]
[RegularExpression("^[A-Za-zÆØÅæøå\\s]+$",
ErrorMessage = "Tror det er noe feil med poststedet du har oppgitt")]
public string Poststed { get; set; }
<input id="Navn">
<input id="Adresse" data-val-required="Adresse mangler">
<input id="Postnummer"
data-val-regex="Sikker på at dette er rett postnummer?"
data-val-regex-pattern="^\d{4}$" data-val-required="Postnummer mangler">
<input id="Poststed" data-val-regex="Tror det er noe feil med poststedet du har oppgitt" data-val-regex-pattern="^[A-Za-zÆØÅæøå\s]+$" data-val-required="Poststed mangler">
var requiredText = input.attr("data-val-required");
var regex = input.attr("data-val-regex-pattern");
var regexText = input.attr("data-val-regex");
function(value) {
if(requiredText){
return !!value
}
return true;
}
function(value) {
if(!value) return true;
if(!pattern) return true;
return new RegExp(pattern, "i").test(value);
};
var property = DoBaconMagic(input);
var boolvalid = property.map(requiredFunc); var regexvalid = property.map(regexFunc(regex));
boolvalid.assign($("#"+input[0].id + "_feil_required"), "toggleClass", "skjult");
boolvalid.not().or(regexvalid)
.assign($("#"+input[0].id + "_feil_regex"), "toggleClass", "skjult");
validFunksjoner.push(boolvalid); validFunksjoner.push(regexvalid);
var allValid = settSammenValidates(validFuncs);
allValid.not().assign($("input[type=submit]"), "attr", "disabled");
[OldEnough(ErrorMessage = "Innflytter må være minst 16 år gammel")]
public DateTime InnflytterFodselsdato { get; set; }
var d = Convert.ToDateTime(value); return d <= MaxDate;
var rule = new ModelClientValidationRule
{
ValidationType = "oldenough",
ErrorMessage = ErrorMessage
};
rule.ValidationParameters["maxdate"] = MaxDate.TilNorskDato();
function(value) {
if(!value) return true;
if(!maksdato) return true;
f(!moment(value, "DD-MM-YYYY").isValid()) return true;
return moment(maksdato, "DD-MM-YYYY").isAfter(moment(value));
};