// --------------------------------------------------------------------------------
//  Funzioni principali per la pagina
// --------------------------------------------------------------------------------


// scorre all'indietro la history, cambiando il documento nella pagina
function back() {
	with (document.UpdateForm) {
		naviga.value = "back";
		submit();
	}
}


// cambia risorsa nella tabella delle risorse
function changeResource(resId) {
	with (document.UpdateForm) {
		if (resId != null) res_id.value = resId;
		submit();
	}
}


// scorre in avanti la history, cambiando il documento nella pagina
function forward() {
	with (document.UpdateForm) {
		naviga.value = "forward";
		submit();
	}
}


// visualizza la prima pagina del sito
function home() {
	openDoc("HOME");
}


// apre il documento del Meeting Point
function meetingPoint() {
	openDocFromTop(506);
}


// apre in pop-up un'applicazione esterna specificata
function openApp(appAlias) {
	var win = window.open("application.jsp?app=" + appAlias, appAlias, "width=780,height=580,top=10,left=10,resizable=yes,scrollbars=yes,toolbar=yes");
	win.focus();
}


// apre una finestra in pop-up
function openCenteredWin(url, dimx, dimy, settings) {
	var x = screen.Width;
	var y = screen.Height;
	var cntx = Math.round((x - dimx) / 2);
	var cnty = Math.round((y - dimy) / 2);
	if (settings != "") settings = "," + settings;
	var win = window.open(url, '_blank', 'left=' + cntx + ',top=' + cnty + ',width=' + dimx + ',height=' + dimy + settings);
	win.focus();
}


// cambia il documento visualizzato nella pagina
function openDoc(docId, op) {
	with (document.UpdateForm) {
		doc_id.value = docId;
		if (op != null) opened.value = op;
		submit();
	}
}


// cambia il documento visualizzato nella pagina (dalla barra superiore dei menu)
function openDocFromTop(docId) {
	with (document.UpdateForm) {
		doc_id.value = docId;
		res_id.value = "DEFAULT";  // valore di comodo, non significativo
		submit();
	}
}


// apre una finestra per un link esterno al sito
function openExternalLink(linkUrl) {
	var url = "externalLink.jsp?link=" + linkUrl;
	var dimx = (screen.Width * 8) / 10;
	var dimy = (screen.Height * 8) / 10;
	var settings = "toolbar=yes,directories=yes,status=yes,menubar=yes,scrollbars=yes,resizable=yes";
	openCenteredWin(url, dimx, dimy, settings);
}


// link ad un file speciale
function openFile(areaAlias, filePath) {
	location.href = "../file?area=" + areaAlias + "&file_name=" + filePath;
}


// apre una finestra di pop-up per visualizzare un'immagine
function openImage(areaAlias, imagePath) {
	var url = "imagePopUp.jsp?area=" + areaAlias + "&img=" + imagePath;
	var dimx = (screen.Width * 8) / 10;
	var dimy = (screen.Height * 8) / 10;
	var settings = "toolbar=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes";
	openCenteredWin(url, dimx, dimy, settings);
}


// apre una finestra per un link aggiuntivo al sito ma in pop-up
function openLocalLink(area, url) {
	var url2 = area;  // e' il caso di link fatti a mano
	if (url != null) {  // il caso normale derivato dal codice &link;
		url2 = "../file?area=" + area + "&file_name=" + url;
	}
	var dimx = (screen.Width * 8) / 10;
	var dimy = (screen.Height * 8) / 10;
	var settings = "toolbar=yes,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes";
	openCenteredWin(url2, dimx, dimy, settings);
}


// visualizza l'anteprima di stampa per il documento corrente
function printDocument() {
	var url = "print.jsp";
	var dimx = 600;
	var dimy = 550; 
	var settings = "toolbar=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=no";
	openCenteredWin(url, dimx, dimy, settings);
}


// mostra un messaggio di avviso per un'operazione non permessa per utenti non loggati
function registeredUserOnly() {
	var url = "alert.jsp";
	var dimx = 400;
	var dimy = 280;
	var settings = "toolbar=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=no";
	openCenteredWin(url, dimx, dimy, settings);
}


// invia un messaggio di e-mail per utenti loggati
function sendEMessage(eAddress) {
	var url = "mail.jsp?to=" + eAddress;
	var dimx = 600;
	var dimy = 540;
	var settings = "toolbar=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes";
	openCenteredWin(url, dimx, dimy, settings);
}


// controlla e invia i dati del modulo di un messaggio e-mail
function sendMessage() {
	with (document.Message) {
		if (subject.value == "") {
			alert("Scrivere prima l'oggetto del messaggio!");
			subject.focus();
			return;
		}
		if (text.value == "") {
			alert("Scrivere prima il testo del messaggio!");
			text.focus();
			return;
		}
		action = "mail_perform.jsp";
		submit();
	}
}


// invia il modulo di LogOn
function submitLogon() {
	with (document.Logon) {
		if (username.value == "") {
			alert("Inserire prima lo username!");
			username.focus();
			return;
		}
		if (password.value == "") {
			alert("Inserire prima la password!");
			password.focus();
			return;
		}
		action = "validation.jsp";
		submit();
	}
}


// mostra un messaggio di avviso per una funzionalita' ancora da implementare
function underConstruction() {
	alert("Funzionalita' ancora da implementare!");
}


// End Of File --------------------------------------------------------------------

