// Main method
// 
$(document).ready(function(){
	$("form").each(function(index, form){

	    $(form).bind("submit", function(evt){
	        clear_hints();
        	is_Valid(evt.target) === false ? evt.preventDefault() : true;
	});
   });

});

function is_Valid(form){	
    var valid = true;
    $(".required", form).each(function(index, suspicious_input){  
        var local_valid = validate(suspicious_input);
        local_valid === false ? valid = false : true;
    });
    return valid;
}
// Clears "not-valid" inputs
//
function clear_hints(){
    $(".not-valid").removeClass("not-valid");
}
//
//
function validate(suspicious_input){
    var valid = true;
    
    // emails
    if($(suspicious_input).attr("title") == "email"){
        if(!RegExp("[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}").test($(suspicious_input).val())){
            $(suspicious_input).addClass("not-valid");
            return false;
        }
    }else{
        
        if(RegExp("^$|^(\S)*$").test($(suspicious_input).val())){
            $(suspicious_input).addClass("not-valid");
            return false;
        }
    
    }
    return true;

}

//console.log(is_Valid());