// JavaScript Document

/* FUNZIONE UTILITY PER ESTRAPORARE LA LINGUA DALL'URL */
function getLang(){
	var myQueryString = new String(window.location.search); // assume la querystring
	var myQueryString = myQueryString.replace("?",""); // toglie il punto interrogativo
	var splittedQS = myQueryString.split("&"); // separa le coppie chiave/valore
	var lingua = 0;
	for (i=0; i<splittedQS.length; i++){
		myKeyValueSplitted = splittedQS[i].split("=");//separa la chiave dal valore
		if (myKeyValueSplitted[0] == 'L'){	//myKeyValueSplitted[0] coincide con la chiave di ciascuna coppia
			var lingua = myKeyValueSplitted[1];
		}
	}
	return lingua;
}
/* FUNZIONE UTILITY PER ESTRAPORARE LA LINGUA DALL'URL */

function gestisciDownload(codice, path, descr){
	lingua = getLang();
	codice = codice.substr(4,codice.length);
	elemento = document.getElementById(codice);
	if(parseInt(document.getElementById('numScelte').innerHTML) == 5){
		if(lingua == 0){
			alert('You cannot download more than 5 images at a time.');
		}
		else{
			alert('Non puoi scaricare pił di 5 immagini contemporaneamente.');
		}
	}
	else if(elemento != null){
		if(lingua == 0){
			alert('Image already inserted in the box.');
		}
		else{
			alert('Immagine gią inserita nel box.');
		}
	}
	else{
		creaElementoForm(codice, path, descr);
		document.getElementById('numScelte').innerHTML = parseInt(document.getElementById('numScelte').innerHTML)+1;
	}
}

function creaElementoForm(codice, path, descr){
	var form = document.getElementById('downloadForm');
	try {
		element = document.createElement('<div id="'+codice+'" class="rigaBox"></div>');
	} catch (e) {
		element = document.createElement('div');
		element.setAttribute('id', codice);
		element.setAttribute('class', 'rigaBox');
	}
	form.appendChild(element);
	rigaFoto = document.getElementById(codice);
	rigaFoto.innerHTML = '<input type="hidden" id="'+path+'" value="'+path+'" /><span>REF: '+codice+'</span><a href="javascript:eliminaElementoForm(\''+codice+'\');document.getElementById(\'numScelte\').innerHTML=parseInt(document.getElementById(\'numScelte\').innerHTML)-1;void(0);"><img src="fileadmin/templates/img/cross.gif" alt="Remove" title="Remove" /></a>';
}

function eliminaElementoForm(valore){
	var form = document.getElementById('downloadForm');
	var element = document.getElementById(valore);
	//alert(valore);
	form.removeChild(element);
}

function svuotaBox(){
	var form = document.getElementById('downloadForm');
	var divs = new Array();
	var daEliminare = new Array();
	divs = form.getElementsByTagName('div');
	for(i=0; i<divs.length; i++){
		if(divs[i].className == 'rigaBox'){
			numDaEliminare = daEliminare.push(divs[i]);
		}
	}
	for(i=0; i<numDaEliminare; i++){
		form.removeChild(daEliminare[i]);
	}
	document.getElementById('numScelte').innerHTML = 0;
}

function accorpaInput(){
	var form = document.getElementById('downloadForm');
	var inputs = new Array();
	var valoreComplessivo = '';
	inputs = form.getElementsByTagName('input');
	if(inputs.length > 1){
		for(i=0; i<inputs.length; i++){
			if(inputs[i].id != 'daScaricare' && inputs[i].id != 'scarica' && inputs[i].id != 'svuota'){
				valoreComplessivo += inputs[i].value+',';
			}
		}
		valoreComplessivo = valoreComplessivo.substr(0,valoreComplessivo.length-1);
		document.getElementById('daScaricare').value = valoreComplessivo;
		form.submit();
	}
	else{
		return false;
	}
}

function switchDownloadBox(){
	lingua = getLang();
	if(document.getElementById('downloadBox').style.display == 'none'){
		document.getElementById('downloadBox').style.display = 'inline';
		if(lingua == 0){
			document.getElementById('handle').innerHTML = '<a href="javascript:switchDownloadBox();">CLOSE&nbsp;&nbsp;<img src="fileadmin/templates/img/arrow_down.gif" alt="Close" title="Close" /></a>';
		}
		else{
			document.getElementById('handle').innerHTML = '<a href="javascript:switchDownloadBox();">CHIUDI&nbsp;&nbsp;<img src="fileadmin/templates/img/arrow_down.gif" alt="Chiudi" title="Chiudi" /></a>';
		}
	}
	else{
		document.getElementById('downloadBox').style.display = 'none';
		if(lingua == 0){
			document.getElementById('handle').innerHTML = '<a href="javascript:switchDownloadBox();">OPEN&nbsp;&nbsp;<img src="fileadmin/templates/img/arrow_up.gif" alt="Open" title="Open" /></a>';
		}
		else{
			document.getElementById('handle').innerHTML = '<a href="javascript:switchDownloadBox();">APRI&nbsp;&nbsp;<img src="fileadmin/templates/img/arrow_up.gif" alt="Apri" title="Apri" /></a>';
		}
	}
}

function azzeraTipologie(){
	var checkboxContainer = document.getElementById('tipologie');
	var checkboxes = new Array();
	checkboxes = checkboxContainer.getElementsByTagName('input');
	for(i=0; i<checkboxes.length; i++){
		checkboxes[i].checked = false;
		checkboxes[i].disabled = true;
	}
}

function abilitaTipologie(){
	var checkboxContainer = document.getElementById('tipologie');
	var checkboxes = new Array();
	checkboxes = checkboxContainer.getElementsByTagName('input');
	for(i=0; i<checkboxes.length; i++){
		checkboxes[i].checked = false;
		checkboxes[i].disabled = false;
	}
}

function gestioneSelect(searchall){
	if(searchall.checked){
		document.getElementById('sottocanale').selectedIndex=0;
		document.getElementById('sottocanale').disabled = true;
		document.getElementById('year').selectedIndex=0;
		document.getElementById('year').disabled = true;
		abilitaTipologie();
	}
	else{
		document.getElementById('sottocanale').disabled = false;
		azzeraTipologie();
	}
}

function validaRicerca(){
	lingua = getLang();
	var checkboxSelezionate = numTipologieSelezionate();
	if((document.getElementById('sottocanale').value!=0 && document.getElementById('year').value!=0) || (document.getElementById('searchall').checked && checkboxSelezionate > 0) || (document.getElementById('searchall').checked && document.getElementById('key').value!='')){
		//document.getElementById('error').style.display = 'none';
		document.getElementById('searchGallery').submit();
	}	
	else{
		if(document.getElementById('searchall').checked==true){
			if(lingua == 0){
				alert('Select at least an image type or a keyword.');
			}
			else{
				alert('Seleziona almeno una tipologia o una keyword.');
			}
		}
		else{
			if(lingua == 0){
				alert('Select at least a category and a year.');
			}
			else{
				alert('Seleziona almeno una categoria ed un anno.');
			}
		}
	}
}

function validaRicercaNews(){
	lingua = getLang();
	var keyRicercaNews = document.getElementById('keyRicercaNews');
	if(keyRicercaNews.value.length < 3){
		if(lingua == 0){
			alert('The search word must contain at least 3 characters.');
		}
		else{
			alert('The chiave di ricerca deve contenere almeno 3 caratteri.');
		}
		return false;
	}
	else{
		return true;
	}
}

function numTipologieSelezionate(){
	var checkboxContainer = document.getElementById('tipologie');
	var checkboxes = new Array();
	var checkboxesSelezionate = 0;
	checkboxes = checkboxContainer.getElementsByTagName('input');
	for(i=0; i<checkboxes.length; i++){
		if(checkboxes[i].checked){
			checkboxesSelezionate = checkboxesSelezionate + 1;
		}
	}
	return checkboxesSelezionate;
}

function estrapolaCheckbox(){
	var myQueryString = new String(window.location.search); // assume la querystring
	var myQueryString = myQueryString.replace("?",""); // toglie il punto interrogativo
	var splittedQS = myQueryString.split("&"); // separa le coppie chiave/valore
	var chiavi = new Array();
	for (i=0; i<splittedQS.length; i++){
		myKeyValueSplitted = splittedQS[i].split("=");//separa la chiave dal valore
		if (myKeyValueSplitted[0] != 'id' && myKeyValueSplitted[0] != 'year' && myKeyValueSplitted[0] != 'sottocanale' && myKeyValueSplitted[0] != 'key' && myKeyValueSplitted[0] != 'L'){	//myKeyValueSplitted[0] coincide con la chiave di ciascuna coppia
			lunghezza = chiavi.push(myKeyValueSplitted[0]);
		}
	}
	return chiavi;
}

// GESTIONE MENU CATEGORIE //
function copriMenu(){
	var catmenu = document.getElementById('catmenu');
	var catmenuContainer = document.getElementById('catmenuContainer');
	var catmenuContainerDivs = new Array();
	catmenuContainerDivs = catmenuContainer.getElementsByTagName('div');
	//catmenuContainer.removeChild(catmenuContainerDivs[0]);
	for(i=0; i<catmenuContainerDivs.length; i++){
		if(catmenuContainerDivs[i].className == 'level1'  && catmenuContainerDivs[i].firstChild.className != 'level2'){
			catmenuContainer.removeChild(catmenuContainerDivs[i]);
		}
	}
	var elencoListItem = new Array();
	var elencoVociMenu = new Array();
	var numVoci = 0;
	elencoListItem = document.getElementsByTagName('div');
	for(i=0; i<elencoListItem.length; i++){
		if(elencoListItem[i].className == 'level2'){
			numVoci = elencoVociMenu.push(elencoListItem[i]);
		}
	}
	if(numVoci == 0){
		catmenu.style.borderWidth = '0px';	
	}
	var cookieName = 'viewall';
	var results = document.cookie.match('(^|;) ?' + cookieName + '=([^;]*)(;|$)');
	if((numVoci != 0 && numVoci > 18)  && !results){
		catmenu.style.height = 415;
		catmenu.style.overflow = 'hidden';
	}
	else{
		var viewAll = document.getElementById('viewall');
		viewAll.style.display = 'none';
  	}
}

function scopriMenu(){
	var catmenu = document.getElementById('catmenu');
	catmenu.style.height = 'auto';
	catmenu.style.overflow = 'visible';
	var viewAll = document.getElementById('viewall');
  	viewAll.style.display = 'none';
	var cookieDate = new Date();
	cookieDate.setTime(cookieDate.getTime()+1000*60*20);
	document.cookie = "viewall=1; expires="+cookieDate.toGMTString();
}

function gestisciSottomenu(){
	var catmenuContainer = document.getElementById('catmenuContainer');
	var catmenuContainerDivs = new Array();
	catmenuContainerDivs = catmenuContainer.getElementsByTagName('div');
	
	var categorie = new Array();
	
	for(i=0;i<catmenuContainerDivs.length;i++){
		if(catmenuContainerDivs[i].className == 'level2'){
			numCategorie = categorie.push(catmenuContainerDivs[i]);
		}
	}
	for(i=0;i<numCategorie;i++){		
		var divsInCategoria = new Array();
		var sottocategorie = new Array();
		var numSottoCategorie;
		divsInCategoria = categorie[i].getElementsByTagName('div');
		for(j=0;j<divsInCategoria.length;j++){
			if(divsInCategoria[j].className == 'level3'){
				categorie[i].style.display = 'none';
			}
		}
	}
	
	for(i=0;i<catmenuContainerDivs.length;i++){
		if(catmenuContainerDivs[i].className == 'selected'){
			if(catmenuContainerDivs[i].parentNode.parentNode.className == 'level2'){
				apriSubcat(catmenuContainerDivs[i].parentNode.parentNode);
			}
			else if(catmenuContainerDivs[i].parentNode.parentNode.className == 'level3'){
				var previous = new Array();
				var selezionato = catmenuContainerDivs[i].parentNode.parentNode.parentNode.parentNode;
				var selezionatoCopia = selezionato;
				var precedente = selezionatoCopia.previousSibling;
				while(precedente){
					numPrecedenti = previous.unshift(precedente);
					precedente = precedente.previousSibling;
				}
				apriSubcat(previous[0]);
			}
		}
	}
}

function apriSubcat(cliccata){
	var copiacliccata = cliccata;
	var successiva = copiacliccata.nextSibling;
	while(successiva){
		successiva.style.display = 'block';
    		successiva = successiva.nextSibling;
	}
}

function correggiLink(vecchioID, nuovoID){
	var catmenuContainer = document.getElementById('catmenuContainer');
	var linkCatmenu = new Array();
	linkCatmenu = catmenuContainer.getElementsByTagName('a');
	for(i=0;i<linkCatmenu.length;i++){
		var currentHref = linkCatmenu[i].href;
		var newHref = currentHref.replace(vecchioID, nuovoID);
		linkCatmenu[i].href = newHref;
	}
}

function togliFilettoNews(){
	newsContainer = document.getElementById('elencoNews');
	var elencoDivs = new Array();
	var elencoNews = new Array();
	elencoDivs = newsContainer.getElementsByTagName('div');
	for(i=0;i<elencoDivs.length;i++){
		if(elencoDivs[i].className == 'notizia'){
			numNotizie = elencoNews.push(elencoDivs[i]);
		}
	}
	elencoNews[elencoNews.length-1].style.border = 'none';
}