$.validator.setDefaults({
//submitHandler: function() { return true; }
});
$().ready(function() {
$.validator.addMethod(
"checkcaptcha",
function(value, element) {
var captchaSum = 0;
$( "form#signupForm .eeb-num" ).each( function() {
captchaSum += parseInt( $( "span#" + $( this ).attr( "id" ) ).html() );
});
return ( captchaSum === parseInt( $( "form#signupForm input#captcha" ).val() ) );
}
);
// validate the comment form when it is submitted
$("#commentForm").validate();
// validate signup form on keyup and submit
$("#signupForm").validate({
rules: {
firstname: "required",
lastname: "required",
email: {
required: true,
email: true
},
phone: {
required: false,
number: true
},
district: "required",
captcha: {
"required": ( $( "form#signupForm input#captcha" ).length > 0 ),
"checkcaptcha": ( $( "form#signupForm input#captcha" ).length > 0 )
},
city: "required",
agree: "required"
},
messages: {
firstname: "obbligatorio",
lastname: "obbligatorio",
email: {
required: "obbligatorio",
email: "indirizzo non valido"
},
phone: {
required: "",
number: "solo numeri"
},
district: "Seleziona una provincia",
captcha: {
required: "obbligatorio",
checkcaptcha: "Controllo Captcha non valido"
},
city: "Selezionare una città",
agree: "obbligatorio"
}
});
// validate signup form on keyup and submit
$("#tab_1").validate({
rules: {
squaremeters_1: {
required: true,
number: true
},
quotation_1: "required",
firstname_1: "required",
lastname_1: "required",
email_1: {
required: true,
email: true
},
agree_1: "required"
},
messages: {
squaremeters_1: {
required: "Compilare e premere Calcola preventivo",
number: "Inserire un numero e premere Calcola preventivo"
},
quotation_1: "Calcolare un preventivo",
firstname_1: "Il campo nome è obbligatorio",
lastname_1: "Il campo cognome è obbligatorio",
email_1: {
required: "Il campo e-mail è obbligatorio",
email: "Inserisci un indirizzo email valido"
},
agree_1: " L'accettazione è necessaria"
}
});
// validate signup form on keyup and submit
$("#tab_2").validate({
rules: {
squaremeters_2: {
required: true,
number: true
},
quotation_2: "required",
firstname_2: "required",
lastname_2: "required",
email_2: {
required: true,
email: true
},
agree_2: "required"
},
messages: {
squaremeters_2: {
required: "Compilare e premere Calcola preventivo",
number: "Inserire un numero e premere Calcola preventivo"
},
quotation_2: "Calcolare un preventivo",
firstname_2: "Il campo nome è obbligatorio",
lastname_2: "Il campo cognome è obbligatorio",
email_2: {
required: "Il campo e-mail è obbligatorio",
email: "Inserisci un indirizzo email valido"
},
agree_2: " L'accettazione è necessaria"
}
});
// validate signup form on keyup and submit
$("#tab_3").validate({
rules: {
squaremeters_3: {
required: true,
number: true
},
quotation_3: "required",
firstname_3: "required",
lastname_3: "required",
email_3: {
required: true,
email: true
},
agree_3: "required"
},
messages: {
squaremeters_3: {
required: "Compilare e premere Calcola preventivo",
number: "Inserire un numero e premere Calcola preventivo"
},
quotation_3: "Calcolare un preventivo",
firstname_3: "Il campo nome è obbligatorio",
lastname_3: "Il campo cognome è obbligatorio",
email_3: {
required: "Il campo e-mail è obbligatorio",
email: "Inserisci un indirizzo email valido"
},
agree_3: " L'accettazione è necessaria"
}
});
// validate signup form on keyup and submit
$("#tab_4").validate({
rules: {
squaremeters_4: {
required: true,
number: true
},
quotation_4: "required",
firstname_4: "required",
lastname_4: "required",
email_4: {
required: true,
email: true
},
agree_4: "required"
},
messages: {
squaremeters_4: {
required: "Compilare e premere Calcola preventivo",
number: "Inserire un numero e premere Calcola preventivo"
},
quotation_4: "Calcolare un preventivo",
firstname_4: "Il campo nome è obbligatorio",
lastname_4: "Il campo cognome è obbligatorio",
email_4: {
required: "Il campo e-mail è obbligatorio",
email: "Inserisci un indirizzo email valido"
},
agree_4: " L'accettazione è necessaria"
}
});
// propose username by combining first- and lastname
$("#username").focus(function() {
var firstname = $("#firstname").val();
var lastname = $("#lastname").val();
if(firstname && lastname && !this.value) {
this.value = firstname + "." + lastname;
}
});
//code to hide topic selection, disable for demo
var newsletter = $("#newsletter");
// newsletter topics are optional, hide at first
var inital = newsletter.is(":checked");
var topics = $("#newsletter_topics")[inital ? "removeClass" : "addClass"]("gray");
var topicInputs = topics.find("input").attr("disabled", !inital);
// show when newsletter is checked
newsletter.click(function() {
topics[this.checked ? "removeClass" : "addClass"]("gray");
topicInputs.attr("disabled", !this.checked);
});
});