$.fn.reformer = function(){
    var RE_EMAIL = /^([a-zA-Z0-9_\.\-\+])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,5})+$/;
    var RE_NAME = /^([ a-zA-Z0-9_\.\-\+])+$/;
    
    var     msg = '';
    var     err = '';
    var baseurl = '/'; //TODO Sistemare quando online
    
    $('.required').removeClass('alert_warning_color');
    $('.required').siblings('label').removeClass('alert_warning_color');
    $('.required').each(function(){
				
        if($(this).val() == ''){
            msg += (msg == '')?'':'<br/>';
            msg += $(this).attr('title');
            err = 'alert_warning';
            $(this).addClass('alert_warning_color');
        }
				
        if ($(this).hasClass('email')){
            if(!is_valid($(this).val(), RE_EMAIL)){
                msg += (msg == '')?'':'<br/>';
                msg += 'Controllare il formato email.';
                err = 'alert_warning';
                $(this).addClass('alert_warning_color');
            }
        }
        
        if ($(this).attr('type') == "checkbox"){
            if (!$(this).is(':checked')) {
                msg += (msg == '')?'':'<br/>';
                msg += $(this).attr('title');
                err = 'alert_warning';
                $(this).siblings('label').addClass('alert_warning_color');
            }
        }
    });
    
    $('.match').each(function(){	
        var match = $(this).attr('title') ;				
        if ($('#'+match).val() != $(this).val()){						
            $('#'+match).addClass('alert_warning_color');
            $(this).addClass('alert_warning_color');
            msg += (msg == '')?'':'<br/>';
            msg += 'Le password non coincidono<br/>';
            err = 'alert_warning';
        }
    });		
    
    if (err != ''){
        $('#validation').addClass('alert_warning').html(msg);
        return false;
    } else {
        return true;
    }
    
    function is_valid(value,regex){
        if (regex.test(value)) return true;
        else return false;		
    }
    
};



