$(function() {
		if($("#gallery a[rel^='gallery']").length > 0){
			$("#gallery a[rel^='gallery']").prettyPhoto({ show_title:false, autoplay_slideshow: false, social_tools:false, opacity:0.4, slideshow:2500 });

		$("a.sinistra").addClass("disabled");
			
		
		$("a.sinistra").click(function (event) {						
			var galP = $('#gallery');
			var position = galP.position();

			if(position.left > 17){ return false; }
			newPos =  position.left + (119*2);
			$("#gallery").animate({ left: newPos+"px"}, 750 );
			if(newPos > 17){ $(this).addClass("disabled"); }
			if($("a.destra").hasClass("disabled")){  $("a.destra").removeClass("disabled");  }
			event.preventDefault();
		}).hover( function () { $(this).addClass("hover"); }, function () { $(this).removeClass("hover"); });
		
		$("a.destra").click(function (event) {
			var galP = $('#gallery');
			var position = galP.position();
			var limitLeft = ($('#gallery').width()-(3*119)-18)*-1;
			newPos =  position.left - (119*2);
			if(limitLeft >= newPos){ $(this).addClass("disabled"); return false; }
			$("#gallery").animate({ left: newPos+"px"}, 750 );
			if($("a.sinistra").hasClass("disabled")){  $("a.sinistra").removeClass("disabled");  }
			event.preventDefault();
		}).hover( function () { $(this).addClass("hover"); }, function () { $(this).removeClass("hover"); });		
	}			
});

$(document).ready(function(){
	
		$("table").attr('border','0');
		$("table tr:even").addClass('even');
		$("table tr:odd").addClass('odd');
		
		$("#search").submit(function(){
			if($("#key").val().length < 3){
				$('<div id="dialog-message" title="Errore"><div class="tmargin1 fLeft"><span class="fLeft ui-icon ui-icon-alert" style="float: left; margin-right: 0.3em;"></span>Attenzione! Non è possibile effettuare una ricerca su termini che contengano meno di tre caratteri</span></div>').dialog({ modal: true, buttons: { "Ok": function() { $(this).dialog("close"); $('#key').focus(); } } });
				$("#key").addClass( "ui-state-error" );
				return false;
			}else{
				return true;
			}
		});
				
		$('a[rel="blank"]').attr({'target':'_blank','title': function(i, val){return val + ' (apertura in nuova finestra)'}});
		
		var name = $( "#name" ),
			password = $( "#password" ),
			allFields = $( [] ).add( name ).add( password ),
			tips = $( ".validateTips" );

		function updateTips( t ) {
			tips
				.text( t )
				.addClass( "ui-state-highlight" );
			setTimeout(function() {
				tips.removeClass( "ui-state-highlight", 1000 );
			}, 500 );
		}

		function checkLength( o, n, min, max ) {
			if ( o.val().length > max || o.val().length < min ) {
				o.addClass( "ui-state-error" );
				updateTips( "Lunghezza di " + n + " deve essere tra " +
					min + " and " + max + "." );
				return false;
			} else {
				return true;
			}
		}

		function checkRegexp( o, regexp, n ) {
			if ( !( regexp.test( o.val() ) ) ) {
				o.addClass( "ui-state-error" );
				updateTips( n );
				return false;
			} else {
				return true;
			}
		}


$( "#login-form" ).dialog({
			autoOpen: false,
			height: 250,
			width: 270,
			modal: true,
			buttons: {
				"Accedi all'area riservata": function() {
					var bValid = true;
					allFields.removeClass( "ui-state-error" );

					bValid = bValid && checkLength( name, "username", 3, 16 );
					bValid = bValid && checkLength( password, "password", 5, 16 );

					bValid = bValid && checkRegexp( name, /^[a-z]([0-9a-z_])+$/i, "Nome utente deve consistere di a-z, 0-9, underscores." );
					// From jquery.validate.js (by joern), contributed by Scott Gonzalez: http://projects.scottsplayground.com/email_address_validation/
					bValid = bValid && checkRegexp( password, /^([0-9a-zA-Z])+$/, "Password field only allow : a-z 0-9" );

					if ( bValid ) {
						$( "#users tbody" ).append( "<tr>" +
							"<td>" + name.val() + "</td>" + 
							"<td>" + password.val() + "</td>" +
						"</tr>" );
						$('#loginForm').submit();
						$( this ).dialog( "close" );
					}
				},
				Cancel: function() {
					$( this ).dialog( "close" );
				}
			},
			close: function() {
				allFields.val( "" ).removeClass( "ui-state-error" );
			}
		});

		$( "#loginButton" ).click(function() {
				$( "#login-form" ).dialog( "open" );
			});	

	$( "#contactForm" ).submit(function(){
			text = '<b>I seguenti campi devono essere compilati:</b><br/>';
			obbFields = $('#nome, #email, #oggetto, #messaggio');
			obbFields.addClass( "ui-state-error" );
			$(obbFields).each(function(){
				 if($.trim($(this).val()) == ''){
					 text += 'Il campo '+$(this).attr('name')+' deve essere compilato<br/>';
				 }
			});
			
			if(!checkEmail($('#email').val())){
					 text += 'Il formatto del campo '+$('#email').attr('name')+' non è valido<br/>';
			}
			
			if(!$('#privacy').attr('checked')){$("label[for='privacy']").addClass("fRed"); text+="Devi accettare l'informativa sulla privacy"}

			if(text != '<b>I seguenti campi devono essere compilati:</b><br/>'){
				$('#errors').html(text).addClass( "ui-state-highlight padding10");	
					setTimeout(function() {$('#errors').removeClass( "ui-state-highlight", 1500 );}, 500 );		
				return false;
			}
			else{ return true; }
	});
	

});

function checkEmail(emailAddress){
//	$.get('http://www.cityofpalmdale.org/SpamCheck.asmx/IsValidEmail', {inputEmail: val}, function(data){
var pattern = new RegExp(/^(("[\w-\s]+")|([\w-]+(?:\.[\w-]+)*)|("[\w-\s]+")([\w-]+(?:\.[\w-]+)*))(@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$)|(@\[?((25[0-5]\.|2[0-4][0-9]\.|1[0-9]{2}\.|[0-9]{1,2}\.))((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\.){2}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\]?$)/i);
return pattern.test(emailAddress);
}
	

function replaceCheckbox(name, on, off)
{
  $(name+':not(.checkbox-replaced)').each(function (){
    var image = ($(this).is(':checked') ? on : off);
    var imageElement = $('<img style="cursor:pointer;" src="'+image
      +'" onclick="$(this).next().click();"/>');
    $(this).before(imageElement).hide()
      .addClass('checkbox-replaced');
    imageElement.click(function (){
      $(this).attr('src',(this.src.indexOf(off) > 0 ? on : off));	
    });
  });
}

