$(document).ready(function(){
	$.validator.addMethod(
	        "regex",
	        function(value, element, regexp) {
	            var re = new RegExp(regexp);
	            return this.optional(element) || re.test(value);
	        },
	        "Please check your input."
	);			
	$("#frm_login").validate(
	    {
	        rules:
	        {
	            UserLogin: "required",
	            PasswordLogin: "required"
	        },
	        messages:
	        {
	            UserLogin: "Inserisci il tuo username!",
	            PasswordLogin: "Inserisci la tua password!"
	        }
	    });
	$("#frmRecuperaPassword").validate(
		    {
		        rules:
		        {
		        	EmailRecuperoPassword:{
						required:true,
						email:true,
						remote:"index.php?pkg=user&task=_check_recupero_password"
		        	}
		        },
		        messages:
		        {
		            EmailRecuperoPassword:{
						required:"Campo obbligatorio",
						email:"Inserire un indirizzo valido",
						remote:"L'email inserita non corrisponde ad alcun utente"
		            }
		        }
		    });
	$("#frm_registrazione_utente").validate(
	    {
	        rules:
	        {
	        	NomeUtente:{
					required:true
	        	},
	        	CognomeUtente:{
					required:true
	        	},
	        	IndirizzoUtente:{
					required:true
	        	},
	        	CittaUtente:{
					required:true
	        	},
	        	ProvinciaUtente:{
					required:true
	        	},
	        	CapUtente:{
	        		required: true
	        	},
	        	TelefonoUtente:{
					required:true
	        	},
	        	EmailUtente:{
					required:true,
					email:true,
					remote:"index.php?pkg=user&task=_check_email"
	        	},
	        	UserUtente:{
					required:true,
					remote:"index.php?pkg=user&task=_check_user"
	        	},
	        	PrivacyUtente:{
					required:true
	        	},
	        	PasswordUtente: {
					required:true
		        },
	            Password2Utente: {
	            	required: true,
	            	equalTo: "#PasswordUtente"
	            },
		        recaptcha_response_field:{
		        	required: true
		        }
	        },
	        messages:
	        {
		        NomeUtente:"Campo obbligatorio",
		        CognomeUtente:"Campo obbligatorio",
		        IndirizzoUtente:"Campo obbligatorio",
		        CittaUtente:"Campo obbligatorio",
		        ProvinciaUtente:"Campo obbligatorio",
		        CapUtente:"Campo obbligatorio",
		        EmailUtente:{
					email:"Inserire un indirizzo valido",
					required:"Campo obbligatorio",
					remote:"Email gi&agrave; presente"
		        },
		        TelefonoUtente:"Campo obbligatorio",
		        PrivacyUtente:"Campo obbligatorio",
		        recaptcha_response_field:"Campo obbligatorio",
		        UserUtente:{
					required: "Campo obbligatorio",
					remote:"User gi&agrave; presente"
		        },
	            PasswordUtente:{ 
					required:"Campo obbligatorio",
	            },
	            Password2Utente: { 
		            equalTo: "Le due password non sono uguali!",
		            required: "Campo obbligatorio"

		        }
	        }
	    });
		$("#frm_update_utente").validate(
		    {
		        rules:
		        {
		        	NomeUtente:{
						required:true
		        	},
		        	CognomeUtente:{
						required:true
		        	},
		        	IndirizzoUtente:{
						required:true
		        	},
		        	CittaUtente:{
						required:true
		        	},
		        	ProvinciaUtente:{
						required:true
		        	},
		        	CapUtente:{
		        		required: true
		        	},
		        	TelefonoUtente:{
						required:true
		        	},
		        	EmailUtente:{
						required:true,
						email:true,
						remote:"index.php?pkg=user&task=_check_email_update"
		        	},
		        	Password2Utente: {
		            	equalTo: "#PasswordUtente"
		            },
			        recaptcha_response_field:{
			        	required: true
			        }/*,
			        CfUtente:{
						remote:"index.php?pkg=user&task=_check_cf"
			       	}*/
		        },
		        messages:
		        {
			        NomeUtente:"Campo obbligatorio",
			        CognomeUtente:"Campo obbligatorio",
			        IndirizzoUtente:"Campo obbligatorio",
			        CittaUtente:"Campo obbligatorio",
			        ProvinciaUtente:"Campo obbligatorio",
			        CapUtente:"Campo obbligatorio",
			        EmailUtente:{
						email:"Inserire un indirizzo valido",
						required:"Campo obbligatorio",
						remote:"Email gi&agrave; presente"
			        },
			        TelefonoUtente:"Campo obbligatorio",
			        recaptcha_response_field:"Campo obbligatorio",
			        Password2Utente: { 
			            equalTo: "Le due password non sono uguali!"
			        }/*,
			        CfUtente:"Questo non sembra essere un codice fiscale corretto"*/
		        }
		    });
	$("#frmCodiceScontoOrdine").validate(
		    {
		        rules:
		        {
		        	CodiceScontoOrdine:{
						required:true,
						remote:"index.php?pkg=prodotti&task=ordini&task1=_check_codice_sconto"
		        	}
		        },
		        messages:
		        {
		        	CodiceScontoOrdine:{
						required:"Campo obbligatorio",
						remote:"Codice non valido"
		            }
		        }
		    });
	$("#frmOrdine").validate(
		    {
		        rules:
		        {
		        	CfOrdine:{
		        		required:true/*,
		        		remote:"index.php?pkg=prodotti&task=ordini&task1=_check_cf"*/
		        	},
		    		PivaOrdine:{
		    			required:true
		    		},
		    		CellulareOrdine:{
		    			required:true
		    		}
		        },
		        messages:
		        {
		        	CfOrdine:{
		        		required:"Campo obbligatorio"/*,
						remote:"Questo non sembra essere un codice fiscale corretto"*/
		            },
		            PivaOrdine:{
		            	required:"Campo obbligatorio"
		            },
		            CellulareOrdine:{
		            	required:"Campo obbligatorio"
		            }
		        }
		    });
	$("#frmAcquista").validate(
		    {
		        rules:
		        {
		        	QuantitaProdotto:{
		        		required:true,
		        		digits:true
		        	}
		        },
		        messages:
		        {
		        	QuantitaProdotto:{
		        		required:"Campo obbligatorio",
						digits:"Valore non valido"
		            }
		        }
		    });
	$("#form_cerca_prodotto").validate(
		    {
		        rules:
		        {
		        	TestoRicerca:{
		        		required:true
		        	}
		        },
		        messages:
		        {
		        	TestoRicerca:{
		        		required:"Campo obbligatorio"
		            }
		        }
		    });
});
