(function($) {
	$.fn.validationEngineLanguage = function() {};
	$.validationEngineLanguage = {
		newLang: function() {
			$.validationEngineLanguage.allRules = {"required":{    
						"regex":"none",
						"alertText":"Questo campo è obbligatorio",
						"alertTextCheckboxMultiple":"Scegliere un’opzione",
						"alertTextCheckboxe":"Questa checkbox è obbligatoria"},
					"length":{
						"regex":"none",
						"alertText":"Tra i ",
						"alertText2":" e i ",
						"alertText3":" caratteri richiesti"},
					"minCheckbox":{
						"regex":"none",
						"alertText":"Numero di scelte consentite superato"},	
					"confirm":{
						"regex":"none",
						"alertText":"I due campi devono essere identici"},		
					"telephone":{
						"regex":"/^[0-9\-./\(\)\ ]+$/",
						"alertText":"Numero di telefono non valido"},	
					"email":{
						"regex":"/^[a-zA-Z0-9_\.\-]+\@([a-zA-Z0-9\-]+\.)+[a-zA-Z0-9]{2,4}$/",
						"alertText":"Indirizzo mail non valido"},	
					"date":{
                             "regex":"/^[0-9]{1,2}\[/]\[0-9]{1,2}\[/]\[0-9]{4}$/",
                         "alertText":"Data non valida, formato GG/MM/AAAA richiesto"},
					"onlyNumber":{
						"regex":"/^[0-9\ ]+$/",
						"alertText":"Accetta soltanto cifre"},	
					"noSpecialCaracters":{
						"regex":"/^[0-9a-zA-Z]+$/",
						"alertText":"Non accetta caratteri speciali"},	
					"onlyLetter":{
						"regex":"/^[a-zA-ZÂÃÄÀÁÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõöøùúûüýþÿ\ \'’]+$/",
						"alertText":"Accetta soltanto lettere"}
				}	
		}
	}
})(jQuery);

function numerolavori(id){
	document.getElementById("numerolavori").value=id;
}
function addFormField(lingua) {
	var id=parseInt(document.getElementById("numerolavori").value);
	id = id+1;
	//italiano
	if (lingua=="ita"){
	var addlavoro = "<div class='lavoro'><div class='meta'><label for='inizio"+id+"' >Data inizio esperienza</label><input name='inizio"+id+"' id='inizio"+id+"' type='text' value='' /></div><div class='meta'><label for='fine"+id+"' >Data fine esperienza</label><input name='fine"+id+"' id='fine"+id+"' type='text' value='' /></div><div><label for='lavoro"+id+"' >Lavoro o posizione ricoperti</label><input name='lavoro"+id+"' id='lavoro"+id+"' type='text' value='' /></div><p class='removelavoro'><a href='javascript:;' class='remove'>Rimuovi</a></p></div>";
	}
	//inglese
	else{
	var addlavoro = "<div class='lavoro'><div class='meta'><label for='inizio"+id+"' >Dates: From</label><input name='inizio"+id+"' id='inizio"+id+"' type='text' value='' /></div><div class='meta'><label for='fine"+id+"' >To</label><input name='fine"+id+"' id='fine"+id+"' type='text' value='' /></div><div><label for='lavoro"+id+"' >Occupation or position held</label><input name='lavoro"+id+"' id='lavoro"+id+"' type='text' value='' /></div><p class='removelavoro'><a href='javascript:;' class='remove'>Remove</a></p></div>";
	}
	$("p.addlavoro").before(addlavoro);
	$("p.removelavoro a").click(function () {
	  $(this).parents(".lavoro").remove();
	  return false;
    });
	numerolavori(id);
}
function numeroformazioni(id){
	document.getElementById("numeroformazioni").value=id;
}
function addFormFieldistruzione(lingua) {
	var id=parseInt(document.getElementById("numeroformazioni").value);
	id = id+1;
	//italiano
	if (lingua=="ita"){
	var addpercorso = "<div class='istruzione'><div class='meta'><label for='inizioistruzione"+id+"' >Data inizio *</label><input name='inizioistruzione"+id+"' id='inizioistruzione"+id+"' type='text' value='' class='validate[required]' /></div><div class='meta'><label for='fineistruzione"+id+"' >Data fine *</label><input name='fineistruzione"+id+"' id='fineistruzione"+id+"' type='text' value='' class='validate[required]' /></div><div><label for='istituto"+id+"' >Nome e tipo di istituto di istruzione o formazione *</label><input name='istituto"+id+"' id='istituto"+id+"' type='text' value='' class='validate[required]' /><div><label for='qualifica"+id+"'>Titolo della qualifica rilasciata</label><select name='qualifica"+id+"' id='qualifica"+id+"'><option value='' selected='selected'>---</option><option>Diploma</option><option>Istituto professionale</option><option>Laurea</option><option>Specializzazione post laurea</option><option>Dottorato di ricerca</option><option>Master MBA</option><option>Altro</option></select><p class='removepercorso'><a href='javascript:;' class='remove' rel='"+id+"'>Rimuovi</a></p></div></div>";
	}
	//inglese
	else{
	var addpercorso = "<div class='istruzione'><div class='meta'><label for='inizioistruzione"+id+"' >Dates: From *</label><input name='inizioistruzione"+id+"' id='inizioistruzione"+id+"' type='text' value='' class='validate[required]' /></div><div class='meta'><label for='fineistruzione"+id+"' >To *</label><input name='fineistruzione"+id+"' id='fineistruzione"+id+"' type='text' value='' class='validate[required]' /></div><div><label for='istituto"+id+"' >Name and type of organisation providing education and training *</label><input name='istituto"+id+"' id='istituto"+id+"' type='text' value='' class='validate[required]' /><div><label for='qualifica"+id+"'>Title of qualification awarded</label><select name='qualifica"+id+"' id='qualifica"+id+"'><option value='' selected='selected'>---</option><option>A-levels</option><option>Tertiary college</option><option>Graduate - Academic degree</option><option>Postgraduate</option><option>Ph. D.</option><option>Master MBA</option><option>Other</option></select><p class='removepercorso'><a href='javascript:;' class='remove' rel='"+id+"'>Remove</a></p></div></div>";
	}
	$("p.addpercorso").before(addpercorso);
    $("p.removepercorso a").click(function () {
	  $(this).parents(".istruzione").remove();
	  num=$(this).attr("rel");
	  $("div.formError.inizioistruzione"+num).remove();
	  $("div.formError.fineistruzione"+num).remove();
	  $("div.formError.istituto"+num).remove();
	  return false;
    });
	numeroformazioni(id);
}
function numerolingue(id){
	document.getElementById("numerolingue").value=id;
}
function addFormFieldlingua(lingua) {
	var id=parseInt(document.getElementById("numerolingue").value);
	id = id+1;
	//italiano
	if (lingua=="ita"){
	var addlingua = "<div class='lingua'><label for='lingua"+id+"'>Lingua</label><select name='lingua"+id+"' id='lingua"+id+"'><option>Ceco</option><option>Cinese (Semplificato)</option><option>Cinese (Tradizionale)</option><option>Coreano</option><option>Danese</option><option>Ebraico</option><option>Finlandese</option><option>Francese</option><option>Giapponese</option><option>Greco</option><option>Inglese</option><option selected='selected'>Italiano</option><option>Norvegese (Bokm&aring;l)</option><option>Olandese</option><option>Polacco</option><option>Portoghese (Brasile)</option><option >Portoghese (Portogallo)</option><option>Russo</option><option>Spagnolo</option><option>Svedese</option><option >Tedesco</option><option>Turco</option><option>Ungherese</option><option>Altro</option></select><p class='removelingua'><a href='javascript:;' class='remove'>Rimuovi</a></p></div>";
	}
	//inglese
	else{
	var addlingua = "<div class='lingua'><label for='lingua"+id+"'>Other language</label><select name='lingua"+id+"' id='lingua"+id+"'><option>Czech</option><option>Chinese (Simplified)</option><option>Chinese (Traditional)</option><option>Danish</option><option>Dutch</option><option selected='selected'>English</option><option>Finnish</option><option>French</option><option>German</option><option>Greek</option><option>Hebrew</option><option>Hungarian</option><option>Italian</option><option>Japanese</option><option>Korean</option><option>Norwegian Bokm&aring;l</option><option>Polish</option><option>Portuguese (Brazil)</option><option>Portuguese (Portugal)</option><option>Russian</option><option>Spanish</option><option>Swedish</option><option>Turkish</option><option>Other</option></select><p class='removelingua'><a href='javascript:;' class='remove'>Remove</a></p></div>";
	}
	$("p.addlingua").before(addlingua);
	$("p.removelingua a").click(function () {
	  $(this).parents(".lingua").remove();
	  return false;
    });
	numerolingue(id);
}

function uploadAjax(lingua){
	//UPLOAD AJAX
	if (lingua=="ita"){
		var caricamento = "Caricamento";
		var allega = "Allega pdf";
		var errore = "Errore: formato file non valido";
	}
	else{
		var caricamento = "Uploading";
		var allega = "Upload pdf";
		var errore = "Error: only pdf are allowed";
	}
	var button = $('#button1'), interval;
	new AjaxUpload(button,{
		action: '/__service/inspdf.asp', 
		name: 'myfile',
		onSubmit : function(file, ext){
			button.text(caricamento);
			this.disable();
			if (! (ext && /^(pdf)$/.test(ext))){
                        alert(errore);
						this.enable();
						button.text(allega);
                        return false;
                }
			interval = window.setInterval(function(){
				var text = button.text();
				if (text.length < 13){
					button.text(text + '.');					
				} else {
					button.text(caricamento);				
				}
			}, 200);
		},
		onComplete: function(file, response){
			document.getElementById("curriculumpdf").value=response;
			button.text(allega);
			window.clearInterval(interval);
			this.enable();
			$("ol.files li").replaceWith($('<li class="pdf_allegato"></li>').text(file));						
		}
	});
	//FINE UPLOAD AJAX
}


$(document).ready(function(){
	var lingua = $("#linguasito").val();
	if (lingua=="ita"){$.validationEngineLanguage.newLang()}
	$("p.addlavoro a").click(function () {
	  addFormField(lingua);
	  return false;
	});
	$("p.addpercorso a").click(function () {
	  addFormFieldistruzione(lingua);
	  return false;
	});
	$("p.addlingua a").click(function () {
	  addFormFieldlingua(lingua);
	  return false;
	});
	if ($("form#candidatura").length){
	uploadAjax(lingua);
	}
});
