$(document).ready(function(){
	
	$("a[href=#]").click(function(e){e.preventDefault();});
	
	$("a.go-to-nuovo-ruolo").click(function(e){
		e.preventDefault();
		goToProfile(1,$(this).attr("href"),-1);		
	});

	$(".rec-videocv").click(function(e){
		e.preventDefault();
		goToProfile(2,$(this).attr("href"),$(this).attr("id"));		
	});
	
	$("a.modal").fancybox({ 
	    'padding': 18,
	    'zoomSpeedIn': 300, 
	    'zoomSpeedOut': 300,
	    'frameWidth': 378,
	    'frameHeight': 300,
	    'overlayOpacity': 0.8,
	    'hideOnContentClick': false
	});
		
	$(".fancybox.videocv").fancybox({ 
	    'padding': 18,
	    'zoomSpeedIn': 300, 
	    'zoomSpeedOut': 300,
	    'frameWidth': 215,
	    'frameHeight': 275,
	    'overlayOpacity': 0.8,
	    'hideOnContentClick': false
	});
	
	$(".assistenza").fancybox({ 
	    'padding': 18,
	    'zoomSpeedIn': 300, 
	    'zoomSpeedOut': 300,
	    'frameWidth': 378,
	    'frameHeight': 340,
	    'overlayOpacity': 0.8,
	    'hideOnContentClick': false
	});
	
	$(".fancybox.suggerimento").fancybox({ 
	    'padding': 18,
	    'zoomSpeedIn': 300, 
	    'zoomSpeedOut': 300,
	    'frameWidth': 378,
	    'frameHeight': 340,
	    'overlayOpacity': 0.8,
	    'hideOnContentClick': false
	});
	
	$(".fancybox.datiAccesso").fancybox({ 
	    'padding': 18,
	    'zoomSpeedIn': 300, 
	    'zoomSpeedOut': 300,
	    'frameWidth': 378,
	    'frameHeight': 340,
	    'overlayOpacity': 0.8,
	    'hideOnContentClick': false
	});
		
	$("a.modal.small ,#changeThumbnail, #tabellaTrainer .rispondiAvv, #tabellaConvocazioni .rifiutaColl").fancybox({ 
		'padding': 18,
	    'zoomSpeedIn': 300, 
	    'zoomSpeedOut': 300,
	    'frameWidth': 378,
	    'frameHeight': 215,
	    'overlayOpacity': 0.8,
	    'hideOnContentClick': false
	});
	
	$("#tabellaCarrello a.rifiutaColl").fancybox({ 
	    'padding': 18,
	    'zoomSpeedIn': 300, 
	    'zoomSpeedOut': 300,
	    'frameWidth': 378,
	    'frameHeight': 200,
	    'overlayOpacity': 0.8,
	    'hideOnContentClick': false
	});	
	
	$("a.rifiutaColl, .cancellaColl").fancybox({ 
	    'padding': 18,
	    'zoomSpeedIn': 300, 
	    'zoomSpeedOut': 300,
	    'frameWidth': 400,
	    'frameHeight': 200,
	    'overlayOpacity': 0.8,
	    'hideOnContentClick': false
	});
	
	$(".modalSpace").fancybox({ 
		 'padding': 18,
		 'zoomSpeedIn': 300, 
		 'zoomSpeedOut': 300,
		 'overlayOpacity': 0.8,
		'frameWidth': 712, 
		'frameHeight': 600,
		'hideOnContentClick': false
	}); 

	$("a.confirm").click(function(e){
		e.preventDefault();
		if(!$(this).data("block")){
			var redirect=$(this).attr("href");
			$("body").append("<a style=\"display:none\" id=\"showConfirmDialog\" href=\""+contextPath+"/front/it/confirm?redirect="+escape(redirect)+"&messageCode="+$(this).attr("id")+"\"></a>");
			
			$("#showConfirmDialog").fancybox({ 
			    'padding': 18,
			    'zoomSpeedIn': 300, 
			    'zoomSpeedOut': 300,
			    'frameWidth': 400,
			    'frameHeight': 200,
			    'overlayOpacity': 0.8,
			    'hideOnContentClick': false
			});
			
			$("#showConfirmDialog").click();
			$("#showConfirmDialog").remove();
		}
	});
	
	$("#tabellaTrainer .rispondiAvv").click(function(){
		$("#tabellaTrainer").data("tabellaTrainer_clicked_element",$(this));
	});
	
	$("#tabellaConvocazioni a.rifiutaColl").click(function(){
		$("#tabellaConvocazioni").data("tabellaConvocazioni_clicked_element",$(this));
	});
		
	$("#tabellaCandidati .assente, #tabellaCandidati .cancellaColl").click(function(){
		$("#tabellaCandidati").data("tabellaCandidati_clicked_element",$(this));
	});
	
	$(".pagonline, #pagonline").click(function (e){
		$("#pagonlineForm").submit();
	});
	
	$("a.convocaSelez").click(function(e){
		
		if($("#updateConvocatiForm input:checkbox").size()==0){
			mijAlert("Attenzione","Per questa richiesta, al momento, non sono presenti curriculum acquistabili.");
			e.preventDefault();
		}
		else if($("#updateConvocatiForm input:checked").size()==0){
			mijAlert("Attenzione","Selezionare almeno un curriculum.");
			e.preventDefault();
		}else{
			$("#updateConvocatiForm").submit();
		}
			
	});
	
	$("#acquistaColloqui").click(function(e){
		if($(this).data("block")){
			mijAlert("Attenzione","Inserire un numero di slot almeno pari al numero di curriculum acquistati,<br />Al momento ne hai inseriti "+$("#slotNumber").text()+" su "+$("#totalSlotNumber").text());
			e.preventDefault();
		}
			
	});
	
	$("#acquistaColloquiBottom").click(function(){
		$("#acquistaColloqui").click();
	});
	

	activeEmail=$("input[name='email']").val();
	jQuery.validator.addMethod("checkMail", function(value, element, params) {
		var valid=true; 
		if(value==activeEmail)
			return valid;
		$.ajax({
	  		async: false,
		  	cache: true,
	  		url: contextPath+"/front/it/action/mailcheck?email="+value,
		  	success: function(html){
				if(html.length>0)
					valid=false;
		  	}
		});
		return valid;
	}, jQuery.format("Email in uso"));
	
	jQuery.validator.addMethod("vatNumber", function(value, element, param) {
		return this.getLength($.trim(value), element) == param;
	}, jQuery.format("Inserire {0} cifre"));

	jQuery.validator.addMethod("exactLength", function(value, element, param) {
		if ((this.getLength($.trim(value), element) == param) || (this.getLength($.trim(value), element) == 0))
			return true;
		else return false;
	}, jQuery.format("Inserire {0} caratteri"));
	
	jQuery.validator.addMethod("codiceFiscale", function(value, element, params) {
		if(this.getLength($.trim(value), element) == params[0] || this.getLength($.trim(value), element) == params[1])
			return true;
		else return false;
	}, jQuery.format("Inserire {0} oppure {1} caratteri"));
	
	var action=jQuery.url.param("action");
	if(action=="modify-password"){
		$("#modify-password").click();
	}
	
});

//va alla form del profilo
//step = 0 1 2
//id = id della candidatePosition
function goToProfile(step,href,id){

	$("body").append(
			$("<form>")
				.css("display","none")
				.attr("id","HiddenSubmitForm")
				.attr("action",href)
				.attr("method","POST")
				.append(
					$("<input>")
					.attr("type","hidden")
					.attr("name","_page")
					.attr("value",step)
				)
		);
	
	if(id!=-1){
		$("#HiddenSubmitForm").append(
				$("<input>")
				.attr("type","hidden")
				.attr("name","candidate_position_id")
				.attr("value",id)
			);
	}
	
	$("#HiddenSubmitForm").submit();

}

function validateAjaxForm(formData, jqForm, options){
	if(!jqForm.valid()){
		return false;
	}
}

function updateNotifications(){
	$.get(contextPath+"/front/candidate/notifications",function(html){
		$("#avvisi-job-trainer-notification").text($("#avvisi-job-trainer-notification",html).text());
		$("#elenco-convocazioni-notification").text($("#elenco-convocazioni-notification",html).text());
	});
}

function mijAlert(title,message){
	$("body").append("<div style=\"display:none\" id=\"messageBox\"><div id=\"fancy_ajax\"><h1>"+title+"</h1><p>"+message+"</p></div></div>");
	$("body").append("<a style=\"display:none\" id=\"showAlertDialog\" href=\"#messageBox\"></a>");
	
	$("#showAlertDialog").fancybox({ 
	    'padding': 18,
	    'zoomSpeedIn': 300, 
	    'zoomSpeedOut': 300,
	    'frameWidth': 400,
	    'frameHeight': 200,
	    'overlayOpacity': 0.8,
	    'hideOnContentClick': false
	});
	
	$("#showAlertDialog").click();
	$("#showAlertDialog").remove();
	$("#messageBox").remove();
	
}