function notifyMsg(msg){
	var so = document.viewport.getScrollOffsets();
	$('divNotifier').style.top = (so[1] + 10) + 'px';
	$("divNotifier").update(msg);
	$("divNotifier").show();
	new PeriodicalExecuter(function(pe) {
	 	$("divNotifier").hide();
	    pe.stop();
	}, 3);
}

var mese = 1;// = d.getMonth() + 1;
var anno = 2008;// = d.getFullYear();
var d = new Date();
mese = d.getMonth() + 1;
anno = d.getFullYear();
var dataInvioCorrente = "";
var formDataHasChanged = false;

var myGlobalHandlers = {
	onCreate: function(){
		var so = document.viewport.getScrollOffsets();
		//if($('loading')){
			$('loading').style.top = (so[1] - 2) + 'px';
			$("loading").show();
		//}
	},

	onComplete: function() {
		//if(Ajax.activeRequestCount === 0){
			if($('loading')){
				$('loading').hide();
			}
		//}
	}, 
	onException: showException
};

Ajax.Responders.register(myGlobalHandlers);

/*
	Div subliminale
*/
/*var igorTimeOut = null;

function hideIgor(){
	if($("subliminal")){
		$("subliminal").hide();
		window.clearTimeout(igorTimeOut);
	}
}
function showIgor(){
	if($("subliminal")){
		$("subliminal").show();
		igorTimeOut = window.setTimeout(hideIgor, 250);
	}
}
*/
/*
	Chiamata per mantenere attiva la sessione
*/

function keepAlive(){
	new Ajax.Request("/invii/keepAlive.php");
}
/*function setDefaultData(){
	var d = new Date();
	mese = d.getMonth() + 1;
	anno = d.getFullYear();
	window.alert("Caio");
}*/
Event.observe(window, "load", function(event){new PeriodicalExecuter(keepAlive, 120);});

function showException(req, e){
	$('loading').hide();
	window.alert(e.message);
}

//function errorHandle(dom){
function errorHandle(transport){
	if(transport.responseXML && transport.responseXML.documentElement){
		var dom = transport.responseXML.documentElement;
		var er = dom.getElementsByTagName('error');
		if(er.length > 0){
			var error = er.item(0);
			if(error.firstChild && error.firstChild.data){
				var errorMsg = error.firstChild.data;
				if(errorMsg != ""){
					if($("loading"))
						$('loading').hide();
					window.alert(errorMsg);
					return true;
				}
			}
		}
	}
	return false;
}

/* Funzioni comuni alle pagine */
function displayLoadingDiv() {
	var elem = $('loading');
	if(elem){
		elem.style.display = 'block';
	}
}

function hideLoadingDiv() {
	var elem = $('loading');
	if(elem){
		elem.style.display = 'none';
	}
}

/* Pagina promo.php */

function buildSelectNewsletters() {
  new Ajax.Updater($('selNews'),'/getNewsletters.php');
}

function setData(vmese, vanno) {
	mese = vmese;
	anno = vanno;
	buildCalendar();
}
function buildCalendar() {
	id_newsletter = $('selNewsletter').value;
	if(id_newsletter != -1){
		var url = '/getCalendar.php';
		var pars = 'id_newsletter=' + id_newsletter + '&mese=' + mese + '&anno=' + anno;
		var myAjax = new Ajax.Request(url, 
		{method: 'post',
			parameters: pars,
			onComplete: drawCalendar});
	}
}
function drawCalendar(req) {
	var elem = $('calendar');
	if(elem){
		elem.style.display= 'block';
		elem.innerHTML = req.responseText;
		attachEvent();
		clearDetails();
	}
}

function displayDetailsFromObj(el) {
	giorno = el.innerHTML;
	id_newsletter = $('selNewsletter').value;
	var url = '/getDetails.php';
	var pars = 'giorno=' + giorno + '&mese=' + mese + '&anno=' + anno + '&id_newsletter=' + id_newsletter;
	var myAjax = new Ajax.Request(url,
																{method: 'post',
																	parameters: pars,
																 	onComplete: drawDetails,
																	onLoading: displayLoadingDiv,
																	onLoaded: hideLoadingDiv});
}
function displayDetails() {
	displayDetailsFromObj(this);
}
function drawDetails(req) {
	var details = $('daysummary');
	details.style.display= 'block';
	details.innerHTML = req.responseText;
}
function clearDetails() {
	var details = $('daysummary');
	details.style.display= 'none';
}

function attachEvent () {
	var elem = $('calendario');
	if(elem){
		var tds = elem.getElementsByTagName('td', 'calendario');
		for(i=0; i<tds.length; i++){
			if(tds[i].className != "outOfRange"){
					tds[i].onmouseup = keepIt;
			}
		}
	}
}

function hideAll () {
	clearDetails();
}
function keepIt() {
	displayDetailsFromObj(this);
}

function displayResult(req) {
	notifyMsg(req.responseText);
}

function displayResultAndReload(req) {
	displayResult(req);
	buildCalendar();
}

function inserisci_direttamente(tipo_offerta) {
	var periodicita;
	var dal = "";
	var al = "";
	var gp = 0;
	if($("p_none").checked)
		periodicita = 0;
	if($("p_giornaliera").checked){
		periodicita = 1;
		dal = $F("g_dal");
		al = $F("g_al");
	}
	if($("p_settimanale").checked){
		periodicita = 2;
		dal = $F("s_dal");
		al = $F("s_al");
		gp = $F("s_g");
	}
	if($("p_bisettimanale").checked){
		periodicita = 3;
		dal = $F("b_dal");
		al = $F("b_al");
		gp = $F("b_g");
	}
	if(periodicita > 0){
		if(dal == "" || al == ""){
			alert("Impostare correttamente le date");
			return;
		}
		if(!isDate(dal) || !isDate(al)){
			alert("Date non valide");
		}
	}
	id_newsletter = $('selNewsletter').value;
	var url = '/insertPrenotazioneDiretta.php';
	var usa_modello = 0;
	if($("usa_modello")){
		usa_modello = $F("usa_modello") == "on" ? 1 : 0;
	}
	var inviatore = $("inviatore") ? $F("inviatore") : -1; 
	var escludiFeste = $F("cbEscludiFeste") == "on" ? 1 : 0;
	var pars = 'giorno=' + giorno + '&mese=' + mese + '&anno=' + anno + '&id_newsletter=' + id_newsletter +
						 '&azienda=' + $('edAzienda').value + '&prenotatore=' + $('selPrenotatore').value + '&tipo_offerta=' + tipo_offerta + '&usa_modello=' + usa_modello +
		'&periodicita=' + periodicita + '&dal=' + dal + '&al=' + al + '&gp=' + gp + '&escludiFeste=' + escludiFeste + '&inviatore=' + inviatore + '&s_g_out=' + $F("s_g_out");
	var myAjax = new Ajax.Request(url,
																{method: 'post',
																	parameters: pars,
																 	onComplete: displayResultAndReload,
																	onLoading: displayLoadingDiv,
																	onLoaded: hideLoadingDiv});
}
function prenota() {
	id_newsletter = $('selNewsletter').value;
	var url = '/insertPrenotazione.php';
	var pars = 'giorno=' + giorno + '&mese=' + mese + '&anno=' + anno + '&id_newsletter=' + id_newsletter +
						 '&azienda=' + $('edAzienda').value + '&prenotatore=' + $('selPrenotatore').value;
	var myAjax = new Ajax.Request(url,
																{method: 'post',
																	parameters: pars,
																 	onComplete: displayResultAndReload,
																	onLoading: displayLoadingDiv,
																	onLoaded: hideLoadingDiv});
}

function isDate(dateStr) {
	var datePat = /^(\d{1,2})(\/|-)(\d{1,2})(\/|-)(\d{4})$/;
	var matchArray = dateStr.match(datePat); // is the format ok?
	if (matchArray == null) {
		return false;
	}
	month = matchArray[3]; // p@rse date into variables
	day = matchArray[1];
	year = matchArray[5];

	if (month < 1 || month > 12) { // check month range
		return false;
	}

	if (day < 1 || day > 31) {
		return false;
	}

	if ((month==4 || month==6 || month==9 || month==11) && day==31) {
		return false;
	}

	if (month == 2) { // check for february 29th
		var isleap = (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0));
		if (day > 29 || (day==29 && !isleap)) {
			return false;
		}
		}
	return true; // date is valid
}

function imposta(tipo_offerta) {
	var periodicita;
	var dal = "";
	var al = "";
	var gp = 0;
	if($("p_none").checked)
		periodicita = 0;
	if($("p_giornaliera").checked){
		periodicita = 1;
		dal = $F("g_dal");
		al = $F("g_al");
	}
	if($("p_settimanale").checked){
		periodicita = 2;
		dal = $F("s_dal");
		al = $F("s_al");
		gp = $F("s_g");
	}
	if($("p_bisettimanale").checked){
		periodicita = 3;
		dal = $F("b_dal");
		al = $F("b_al");
		gp = $F("b_g");
	}
	if(periodicita > 0){
		if(dal == "" || al == ""){
			alert("Impostare correttamente le date");
			return;
		}
		if(!isDate(dal) || !isDate(al)){
			alert("Date non valide");
		}
	}
	var id_newsletter = $('selNewsletter').value;
	var url = '/impostaPrenotazione.php';
	var usa_modello = 0;
	if($("usa_modello")){
		usa_modello = $F("usa_modello") == "on" ? 1 : 0;
	}
	var escludiFeste = $F("cbEscludiFeste") == "on" ? 1 : 0;
	var inviatore = $("inviatore") ? $F("inviatore") : -1;
  var modoinvio = $("modoinvio") ? $F("modoinvio") : 0;
	var pars = 'giorno=' + giorno + '&mese=' + mese + '&anno=' + anno + '&id_newsletter=' + id_newsletter + '&tipo_offerta=' + tipo_offerta + '&usa_modello=' + usa_modello +
		'&periodicita=' + periodicita + '&dal=' + dal + '&al=' + al + '&gp=' + gp + '&escludiFeste=' + escludiFeste + '&inviatore=' + inviatore + 
    '&s_g_out=' + $F("s_g_out") + '&modoinvio=' + modoinvio + '&orainvio=' + $F("orainvio");
	new Ajax.Request(url,
		{method: 'post',
			parameters: pars,
		 	onComplete: displayResultAndReload,
			onLoading: displayLoadingDiv,
			onLoaded: hideLoadingDiv});
}

function accetta() {
	id_newsletter = $('selNewsletter').value;
	var url = '/accettaPrenotazione.php';
	var pars = 'giorno=' + giorno + '&mese=' + mese + '&anno=' + anno + '&id_newsletter=' + id_newsletter;
	var myAjax = new Ajax.Request(url,
																{method: 'post',
																	parameters: pars,
																 	onComplete: displayResultAndReload,
																	onLoading: displayLoadingDiv,
																	onLoaded: hideLoadingDiv});
}

function rifiuta() {
	id_newsletter = $('selNewsletter').value;
	var url = '/rifiutaPrenotazione.php';
	var pars = 'giorno=' + giorno + '&mese=' + mese + '&anno=' + anno + '&id_newsletter=' + id_newsletter;
	var myAjax = new Ajax.Request(url,
																{method: 'post',
																	parameters: pars,
																 	onComplete: displayResultAndReload,
																	onLoading: displayLoadingDiv,
																	onLoaded: hideLoadingDiv});
}
function elimina() {
	if(window.confirm("Confermi l'eliminazione della prenotazione?")){
		var id_newsletter = $('selNewsletter').value;
		var url = '/eliminaPrenotazione.php';
		var pars = 'giorno=' + giorno + '&mese=' + mese + '&anno=' + anno + '&id_newsletter=' + id_newsletter;
		new Ajax.Request(url,
			{method: 'post',
			parameters: pars,
			onComplete: displayResultAndReload,
			onLoading: displayLoadingDiv,
			onLoaded: hideLoadingDiv});
	} 
}
function inviata() {
	id_newsletter = $('selNewsletter').value;
	var url = '/impostaPrenotazioneInviata.php';
	var pars = 'giorno=' + giorno + '&mese=' + mese + '&anno=' + anno + '&id_newsletter=' + id_newsletter;
	var myAjax = new Ajax.Request(url,
																{method: 'post',
																	parameters: pars,
																 	onComplete: displayResultAndReload,
																	onLoading: displayLoadingDiv,
																	onLoaded: hideLoadingDiv});
}

/* Funzioni pagina newsletters.php */

function displayResultAndReloadNews(req) {
	displayResult(req);
	buildTblNewsletters();
}

function buildTblNewsletters() {
	var url = '/getNewslettersTbl.php';
	var myAjax = new Ajax.Request(url, {method: 'post',
		onComplete: drawTblNewsletters});	
}
function drawTblNewsletters(req) {
	var elem = $('news_elenco');
	elem.innerHTML = req.responseText;
}

function news_elimina(id_news) {
	if(confirm('Confermi la cancellazione della newsletter?')){
		var url = '/news_elimina.php';
		var pars = 'id_newsletter=' + id_news;
		var myAjax = new Ajax.Request(url,
		{method: 'post',
			parameters: pars,
		 	onComplete: displayResultAndReloadNews,
			onLoading: displayLoadingDiv,
			onLoaded: hideLoadingDiv});
	}
}

function news_modifica(id_news) {
	var newDescr = window.prompt("Inserisci il nuovo nome della newsletter","");
	if(newDescr){
		var url = '/news_modifica.php';
		var pars = 'id_newsletter=' + id_news + '&descrizione=' + newDescr;
		var myAjax = new Ajax.Request(url,
		{method: 'post',
			parameters: pars,
		 	onComplete: displayResultAndReloadNews,
			onLoading: displayLoadingDiv,
			onLoaded: hideLoadingDiv});
	}
}

function news_nuova() {
	var newDescr = window.prompt("Inserisci il nome della newsletter","");
	if(newDescr){
		var url = '/news_inserisci.php';
		var pars = 'descrizione=' + newDescr;
		var myAjax = new Ajax.Request(url,
		{method: 'post',
			parameters: pars,
		 	onComplete: displayResultAndReloadNews,
			onLoading: displayLoadingDiv,
			onLoaded: hideLoadingDiv});
	}
}

/* Funzioni della pagina utenti.php */

function displayResultAndReloadUtenti(req) {
	displayResult(req);
	$('daysummary').style.display = 'none';
	buildTblUtenti();
}

/*function loadDetailsUtenti(id_utenti) {
	var url = '/utenti_getDetails.php';
	var pars = 'id=' + id_utenti;
	var myAjax = new Ajax.Request(url, {method: 'post',
		parameters: pars,
		onComplete: drawDetailsUtenti,
		onLoading: displayLoadingDiv,
		onLoaded: hideLoadingDiv});	
}
function drawDetailsUtenti(req) {
	var elem = $('daysummary');
	elem.innerHTML = req.responseText;
	elem.style.display = 'block';
}
*/
function utenti_details(id_utenti) {
  setUpModalForm("divModalForm", 380, 0);
  new Ajax.Updater($("divModalForm"), "/utenti_getDetails.php",
    {parameters: {id: id_utenti}});
	
//  loadDetailsUtenti(id_utenti);
}

function utenti_modifica() {
	var url = '/utenti_update.php';
	new Ajax.Request(url,
	{method: 'post',
		parameters: $("frmActionUtente").serialize(true),
	 	onComplete: function(e){
      if(e.responseText != ""){
        alert(e.responseText);
      } else {
        window.location.reload(true);
      }
    }});
}

function utenti_nuovo() {
	var url = '/utenti_insert.php';
	new Ajax.Request(url,
	{method: 'post',
		parameters: $("frmActionUtente").serialize(true),
	 	onComplete: function(e){
      window.location.reload(true);
    }});
}

/******** Statistiche **********/
function caricaStatistica(){
	id_statistica = $('selStatistiche').value;

	var url = '/statistiche/manage.php';
	var pars = 	'id=' + id_statistica;
	var myAjax = new Ajax.Request(url,
	{method: 'post',
		parameters: pars,
	 	onComplete: displayStatistica,
		onLoading: displayLoadingDiv,
		onLoaded: hideLoadingDiv});
}

function displayStatistica(req) {
	if(errorHandle(req))
			return;
	var elem = $('divStatistica');
	if(elem) {
		elem.innerHTML = req.responseText;
		elem.style.display = 'block';
	}
}

function stats_buildSelectDate() {
	var url = '/statistiche/getSelects.php';
	var myAjax = new Ajax.Request(url,
	{method: 'post',
	 	onComplete: displaySelMesi});
}

function displaySelMesi (req) {
	var xmlDoc = req.responseXML.documentElement;
	if(errorHandle(req))
		return;
	var selMesi = xmlDoc.getElementsByTagName('selMesi').item(0).firstChild.data;
	var selPrenotatori = xmlDoc.getElementsByTagName('selPrenotatori').item(0).firstChild.data;
	if($('div_selMesi'))
		$('div_selMesi').innerHTML = selMesi;
	if($('div_selPrenotatori'))
		$('div_selPrenotatori').innerHTML = selPrenotatori;
}

function statsByMese(){
	var val = new String($('selMesi').value);
	arr = val.split('_');
	if(arr.length == 2){
		mese = arr[0];
		anno = arr[1];
	}
	var url = '/statistiche/prenotazioniPerMese.php';
	var pars = 	'mese=' + mese + '&anno=' + anno;
	var myAjax = new Ajax.Request(url,
	{method: 'post',
		parameters: pars,
	 	onComplete: displayStatistica,
		onLoading: displayLoadingDiv,
		onLoaded: hideLoadingDiv});
}
function statsByPrenotatori(){
	var val = new String($('selPrenotatori').value);
	var url = '/statistiche/prenotazioniPerPrenotatore.php';
	var pars = 	'prenotatore=' + val;
	var myAjax = new Ajax.Request(url,
	{method: 'post',
		parameters: pars,
	 	onComplete: displayStatistica,
		onLoading: displayLoadingDiv,
		onLoaded: hideLoadingDiv});
}
function statByMeseAndPrenotatore(){
	var prenotatore = new String($('selPrenotatori').value);
	if(prenotatore == "-1")
		prenotatore = "";
	var val = new String($('selMesi').value);
	if(val == "-1"){
		mese = "";
		anno = "";
	} else {
		arr = val.split('_');
		if(arr.length == 2){
			mese = arr[0];
			anno = arr[1];
		}
	}
	var url = '/statistiche/prenotazioni.php';
	var pars = 	'mese=' + mese + '&anno=' + anno + '&prenotatore=' + prenotatore;
	
	var myAjax = new Ajax.Request(url,
	{method: 'post',
		parameters: pars,
	 	onComplete: displayStatistica,
		onLoading: displayLoadingDiv,
		onLoaded: hideLoadingDiv});
}

function modifica(){
	id_newsletter = $('selNewsletter').value;
	var url = '/modifica.php';
	var pars = 'giorno=' + giorno + '&mese=' + mese + '&anno=' + anno + '&id_newsletter=' + id_newsletter;
	var myAjax = new Ajax.Request(url,
	{method: 'post',
		parameters: pars,
	 	onComplete: displayUpdateForm,
		onLoading: displayLoadingDiv,
		onLoaded: hideLoadingDiv});
}

function displayUpdateForm(req) {
	var elem = $('divModifica');
	if(elem) {
		elem.innerHTML = req.responseText;
		elem.style.display = 'block';
	}
}

function salva_modifiche(){
	id_newsletter = $('selNewsletter').value;
	stato = $('upd_stato').value;
	data = $('upd_data').value;
	azienda = $('upd_azienda').value;
	tipo = $('upd_tipo').value;
	prenotatore = $('upd_prenotatore').value;
	var url = '/do_modifica.php';
	var pars =	'giorno=' + giorno +
							'&mese=' + mese +
							'&anno=' + anno +
							'&id_newsletter=' + id_newsletter +
							'&stato=' + stato +
							'&data=' + data +
							'&azienda=' + azienda +
							'&tipo=' + tipo +
							'&prenotatore=' + prenotatore;


	var myAjax = new Ajax.Request(url,
	{method: 'post',
		parameters: pars,
	 	onComplete: displayResultAndReload,
		onLoading: displayLoadingDiv,
		onLoaded: hideLoadingDiv});
}

function caricaInvio(){
	caricaInvioNew(dataInvioCorrente);
	return;
	var url = "/invii/listByDay.php";
	var idSel = $("selInvii").getValue();
	if(idSel == "2"){
		idSel = window.prompt("Inserisci la data (YYYY-MM-DD)");
	}
	var myAjax = new Ajax.Request(url,
	{method: "post",
		parameters: {id: idSel},
		onComplete: function(transport){
			$('divInvii').update(transport.responseText).show();
			$('frmMaildef').hide();
		}});
}

function impostaPrioritaSel(id_p){
	var url = "/invii/setPriorita.php";
	new Ajax.Request(url,
	{method: "post",
		parameters: {id: id_p, pl: $F("selPr" + id_p)},
		onComplete: function(transport){
			if(errorHandle(transport)){
				return;
			}}
	});
}
function impostaPriorita(id_p){
	var newPr = window.prompt("Inserisci la priorità\n0: inviata comunque\n1: massima priorità","");
	if(parseInt(newPr) != newPr){
		window.alert("Valore non valido");
		return;
	}
	var url = "/invii/setPriorita.php";
	var myAjax = new Ajax.Request(url,
	{method: "post",
		parameters: {id: id_p, pl: newPr},
		onComplete: function(transport){
			if(errorHandle(transport)){
				return;
			}
			caricaInvio();}
	});
	
}

function impostaTipoInvio(id_p){
	var url = "/invii/setTipoInvio.php";
	var myAjax = new Ajax.Request(url,
	{method: "post",
		parameters: {id: id_p, pl: $F("selTipoInvio_" + id_p)},
		onComplete: function(transport){
			if(errorHandle(transport)){
				return;
			}}
	});
	
}

function frmMaildef(id_p){
	var url = "/invii/frmMaildef.php";
	var myAjax = new Ajax.Request(url,
	{method: "post",
		parameters: {id: id_p},
		onComplete: function(transport){
			if(errorHandle(transport)){
				return;
			} else {
				$('frmMaildef').update(transport.responseText).show();
        $('tblListaInviiDelGiorno').hide();
        $("content").select(".btnMngListaGiorno").each(function(elem){
          elem.hide();
        });
        $("btnBackToList").show();
				disableFormElements();
				if($("theForm"))
					new FileUploader('theForm', 'status'); 
			}
		}
	});
}
function backToList() {
  $('frmMaildef').update("").hide();
  $("content").select("a.btnMngListaGiorno").each(function(elem){
    elem.show();
  });
  $("btnBackToList").hide();
  $("tblListaInviiDelGiorno").show();
}
function enableElements(prefix, value){
	Form.getElements('frmIndirizzi').each(function(elem){
		if(elem.name.startsWith(prefix)){
			if(value){
				elem.enable();
			} else {
				elem.disable();
			}
		}
	})
}
function enableElementsOut(prefix, value){
	Form.getElements('frmIndirizzi').each(function(elem){
		if(elem.name.startsWith(prefix)){
			if(value){
				elem.enable();
			} else {
				elem.disable();
			}
		}
	})
}
function observeFormElements() {
  formDataHasChanged = false;
	Form.getElements('frmIndirizzi').each(function(elem){
		elem.observe("change", function(e){formDataHasChanged = true});
	})
}

function fnc_switch_ut(){
	enableElements('ut', $('switch_ut').checked);
}
function fnc_switch_nl(){
	enableElements('nl', $('switch_nl').checked);
}
function fnc_switch_as(){
	enableElements('as', $('switch_as').checked);
}
function fnc_switch_dg(){
	enableElements('dg', $('switch_dg').checked);
}
function fnc_switch_lotus(){
	enableElements('lotus', $('switch_lotus').checked);
}
function fnc_switch_autoform(){
	enableElements('af', $('switch_autoform').checked);
}
function fnc_switch_fsi(){
	enableElements('fsi', $('switch_fsi').checked);
}
function fnc_switch_fsi_out(){
	enableElementsOut('fsi', $('switch_fsi_out').checked);
}
function fnc_switch_autoform_out(){
	enableElementsOut('af', $('switch_autoform_out').checked);
}
function fnc_switch_ut_out(){
	enableElementsOut('ut', $('switch_ut_out').checked);
}
function fnc_switch_nl_out(){
	enableElementsOut('nl', $('switch_nl_out').checked);
}
function fnc_switch_as_out(){
	enableElementsOut('as', $('switch_as_out').checked);
}
function fnc_switch_dg_out(){
	enableElementsOut('dg', $('switch_dg_out').checked);
}
function fnc_switch_lotus_out(){
	enableElementsOut('lotus', $('switch_lotus_out').checked);
}
function fnc_switch_mod(){
	enableElements('mod', $('switch_mod').checked);
}
function fnc_switch_mod_out(){
	enableElementsOut('mod', $('switch_mod_out').checked);
}
function fnc_switch_ft(){
	enableElements('ft', $('switch_ft').checked);
}
function fnc_switch_ft_out(){
	enableElementsOut('ft', $('switch_ft_out').checked);
}
function fnc_switch_sv(){
  enableElements('sv', $('switch_sv').checked);
}
function fnc_switch_sv_out(){
  enableElements('sv', $('switch_sv_out').checked);
}

function disableFormElements(){
	if($("switch_ut"))
		enableElements('ut', $('switch_ut').checked);
	if($("switch_nl"))
		enableElements('nl', $('switch_nl').checked);
	if($("switch_as"))
		enableElements('as', $('switch_as').checked);
	if($("switch_dg"))
		enableElements('dg', $('switch_dg').checked);
	if($("switch_lotus"))
		enableElements('lotus', $('switch_lotus').checked);
	if($("switch_autoform"))
		enableElements('af', $('switch_autoform').checked);
	if($("switch_fsi"))
		enableElements('fsi', $('switch_fsi').checked);
	if($("switch_mod"))
		enableElements('mod', $('switch_mod').checked);
	if($("switch_ft"))
		enableElements('ft', $('switch_ft').checked);
	if($("switch_sv"))
		enableElements('sv', $('switch_sv').checked);

	if($("switch_ut_out"))
		enableElementsOut('ut', $('switch_ut_out').checked);
	if($("switch_nl_out"))
		enableElementsOut('nl', $('switch_nl_out').checked);
	if($("switch_as_out"))
		enableElementsOut('as', $('switch_as_out').checked);
	if($("switch_dg_out"))
		enableElementsOut('dg', $('switch_dg_out').checked);
	if($("switch_lotus_out"))
		enableElementsOut('lotus', $('switch_lotus_out').checked);
	if($("switch_autoform_out"))
		enableElementsOut('af', $('switch_autoform_out').checked);
	if($("switch_fsi_out"))
		enableElementsOut('fsi', $('switch_fsi_out').checked);
	if($("switch_mod_out"))
		enableElementsOut('mod', $('switch_mod_out').checked);
	if($("switch_ft_out"))
		enableElementsOut('ft', $('switch_ft_out').checked);
	if($("switch_sv_out"))
		enableElementsOut('sv', $('switch_sv_out').checked);
}

function caricaProvince(sourceElemName, destElemName){
	var param = "";
	if(typeof $F(sourceElemName) == "string"){
		param = $F(sourceElemName);
	} else {
		param = $F(sourceElemName).join(',');
	} 
	var url = "/invii/getProvince.php";
	var myAjax = new Ajax.Request(url,
	{method: "post",
//		parameters: {id_regioni: $F(sourceElemName).join(',')},
		parameters: {id_regioni: param},
		onComplete: function(transport){
			if(errorHandle(transport)){
				return;
			} 
			$(destElemName).update(transport.responseText);}
	});
}

function loadAutoform(sourceElemName, destElemName){
	var param = "";
	if(typeof $F(sourceElemName) == "string"){
		param = $F(sourceElemName);
	} else {
		param = $F(sourceElemName).join(',');
	} 
	var url = "/invii/getAutoformForm.php";
	new Ajax.Updater($(destElemName), url,
	{method: "post",
		parameters: {id_utenti: param}
	});
}

function caricaMicro(sourceElemName, destElemName){
	var url = "/invii/getMicro.php";
	var myAjax = new Ajax.Request(url,
	{method: "post",
		parameters: {id_macro: $F(sourceElemName).join(',')},
		onComplete: function(transport){
			if(errorHandle(transport)){
				return;
			} 
			$(destElemName).update(transport.responseText);}
	});
}

function isValidString(string){
	return string.toArray().all(function(ch){
		var charCode = (ch+'').charCodeAt(0);
		return (charCode >= 32 && charCode <= 126) ||
			[224,232,233,236,242,249,176,186].indexOf(charCode) != -1;
	});
}

function submitFormMailDef(){
	var pars = $('frmMd').serialize(false);
	/* Check dei parametri */
	var numEmpty = 0;
	Form.getElements('frmMd').each(function(elem){
		if(!elem.name.startsWith("lu") && !elem.getValue() && elem.name != "oggetto"){
			Element.addClassName(elem, 'err');
			numEmpty++;
		} else {
			Element.removeClassName(elem, 'err');
		}
	});
	if(numEmpty >0){
		window.alert("Compilare i campi vuoti");
		return;
	} 

	if(!isValidString($F("oggetto"))){
		window.alert("L'oggetto contiene dei caratteri non validi");
		$("oggetto").focus();
		return;
	} 

	var myAjax = new Ajax.Request("/invii/saveMailDef.php",
	{method: "post",
		encoding: "ISO-8859-1",
		parameters: $('frmMd').serialize(true),
		onComplete: function(transport){
			if(errorHandle(transport)){
				return;
			} else {
        notifyMsg("Definizione della mail salvata");
			}
		}
	});
} 

function updateLblFileName(){
	if($('span_file_testo')){
		var url = "/invii/getFileName.php";
		var myAjax = new Ajax.Request(url,
		{
			method: "post",
			parameters: {id_p: id_prenotazioni},
			onComplete: function(transport){
				$('span_file_testo').update(transport.responseText);
			}
		});
	}
}

function updateLblNumIndirizziAggiuntivi(){
	if($('numIndirizziAggiuntivi')){
		var url = "/invii/getNumIndirizziAggiuntivi.php";
		new Ajax.Request(url,
		{
			method: "post",
			parameters: {id_p: id_prenotazioni, aggiunta: 1},
			onComplete: function(transport){
				$('numIndirizziAggiuntivi').update(transport.responseText);
			}
		});
	}
	if($('numIndirizziDaEscludere')){
		new Ajax.Request(url,
		{
			method: "post",
			parameters: {id_p: id_prenotazioni, aggiunta: 0},
			onComplete: function(transport){
				$('numIndirizziDaEscludere').update(transport.responseText);
			}
		});
	}
} 

function updateAllegati() {
  if($('usoUploadForm').value == "allegato"){
    new Ajax.Updater($("ulAllegati"), "/invii/getAllegati.php",{
      parameters: {id_prenotazioni: id_prenotazioni}
    })
  }
}

function submitFormIndirizzi(){
  // Vedi salvaFonteEProsegui
  new Ajax.Request("/invii/saveIndirizzi.php",
	{method: "post",
		parameters: $('frmIndirizzi').serialize(true),
		onComplete: function(transport){
			if(errorHandle(transport)){
				return;
			} else {
        formDataHasChanged = false;
				notifyMsg("Definizione della mail salvata");
			}
		}
	});
}

function addIsbn(elemSource, elemDest, elemPre){
	var v_isbn = $F(elemSource).toUpperCase().strip();
	if(v_isbn == ""){
		window.alert("Impostare un valore per l'ISBN");
		return;
	}
	var isbns = v_isbn.split("-");
	
	isbns.uniq().each(function(elem){
		v_isbn = elem.strip();
		var arrval = $F(elemDest);
		if(arrval && arrval.indexOf($F(elemPre).strip() + v_isbn) != -1){
			return;
		}
		new Ajax.Request("/invii/checkIsbn.php",
		{method: "post",
			parameters: {isbn: v_isbn, pre: $F(elemPre).strip()},
			onComplete: function(transport){
				if(errorHandle(transport)){
					return;
				} else {
					$(elemDest).insert(transport.responseText, 'bottom');
					$(elemDest).show();
				}
			}
		});
	});
}

function eliminaListaIndirizzi(idmd){
	if(window.confirm("Confermi l'eliminazione della lista attuale di indirizzi?")){
		var url = "/invii/eliminaListaIndirizzi.php";
		var myAjax = new Ajax.Request(url,
		{method: "post",
			parameters: {id: idmd},
			onComplete: function(transport){
				if(errorHandle(transport)){
					return;
				}
				caricaInvio();}
		});
	}	
}

function confermaInvio(idmd){
	if(window.confirm("Confermi l'invio? L'operazione non può essere annullata")){
		var url = "/invii/confermaInvio.php";
		var myAjax = new Ajax.Request(url,
		{method: "post",
			parameters: {id: idmd},
			onComplete: function(transport){
				if(errorHandle(transport)){
					return;
				}
				caricaInvio();}
		});
	}	
}

function showUploadForm(uso){
	var vp = document.viewport.getScrollOffsets();
	
	$('usoUploadForm').value = uso;
	var vtop = (vp.top + 250) + 'px';
	$('divFormUpload').setStyle({top: vtop});
	$('status').update();
	$('divFormUpload').show();
}

function hideUploadForm(){
	$('divFormUpload').hide();
}

function caricaFileDaUrl(){
	var url = window.prompt("Inserisci l'url", "");
	if(url) {
		new Ajax.Request("/invii/caricaFileDaUrl.php", {
			method: "post",
			parameters: {id_prenotazioni: id_prenotazioni, url: url},
			onComplete: function(transport){
				if(errorHandle(transport)){
					return;
				}
				updateLblFileName();
			}
		});
	}
}
function eliminaIndirizziAggiuntivi(idmd, aggiunta){
	if(window.confirm("Confermi l'eliminazione della lista attuale di indirizzi aggiuntivi?")){
		var url = "/invii/eliminaListaIndirizziAggiuntivi.php";
		new Ajax.Request(url,
		{method: "post",
			parameters: {id: idmd, ag: aggiunta},
			onComplete: function(transport){
				if(errorHandle(transport)){
					return;
				}
				updateLblNumIndirizziAggiuntivi();}
		});
	}	
}

function eliminaListaIndirizziPerData(d) {
	if(window.confirm("Confermi l'eliminazione della lista di indirizzi per il " + d + "?")){
		var url = "/invii/eliminaListaIndirizziPerData.php";
		var myAjax = new Ajax.Request(url,
		{method: "post",
			parameters: {data: d},
			onComplete: function(transport){
				if(errorHandle(transport)){
					return;
				}
				caricaInvio();}
		});
	}	
}

function creaListaIndirizziPerData(d) {
	if(window.confirm("Procedo con la creazione della lista di indirizzi per il " + d + "?")){
		var url = "/invii/creaListaIndirizziPerData.php";
		var myAjax = new Ajax.Request(url,
		{method: "post",
			parameters: {data: d},
			onComplete: function(transport){
				if(errorHandle(transport)){
					return;
				}
				notifyMsg("Operazione completata");
				caricaInvio();}
		});
	}	
}

function changeTab(id){
	switch(id){
		case 0:
			$('mdfDestinatari').hide();
			$('mdfDefinizione').show();
			break;
		case 1:
			$('mdfDefinizione').hide();
      new Ajax.Request("/invii/frmMaildefDestinatari.php",
      {method: "post",
        parameters: {id: id_prenotazioni, inout: 'in'},
        onComplete: function(transport){
          if(errorHandle(transport)){
            return;
          }
          $("mdfDestinatari").show();
          $("mdfDestinatari").update(transport.responseText);
          disableFormElements();
        }
      });
			break;
		case 2:
			$('mdfDefinizione').hide();
      new Ajax.Request("/invii/frmMaildefDestinatari.php",
      {method: "post",
        parameters: {id: id_prenotazioni, inout: 'out'},
        onComplete: function(transport){
          if(errorHandle(transport)){
            return;
          }
          $("mdfDestinatari").show();
          $("mdfDestinatari").update(transport.responseText);
          disableFormElements();
        }
      });
	}
}

function getEmails(idmd, idstato){
	new Ajax.Request("/invii/getEmails.php",
		{method: "post",
		parameters: {id: idmd, stato: idstato},
		onComplete: function(transport){
			if(errorHandle(transport)){
				return;
			}
			$("tblEmails").update(transport.responseText).show();}});
}

function exportEmails(idmd, idstato){
	new Ajax.Request("/invii/exportEmails.php",
		{method: "post",
		parameters: {id: idmd, stato: idstato},
		onComplete: function(transport){
			if(errorHandle(transport)){
				return;
			}
		}
	});
}

function impostazioni(){
	$("frmMaildef").hide();
	new Ajax.Updater($("divInvii").show(), "/invii/impostazioni.php");
}

function servers(){
	$("frmMaildef").hide();
	new Ajax.Updater($("divInvii").show(), "/invii/servers.php");
}

function serverInvio(){
	$("frmMaildef").hide();
	new Ajax.Updater($("divInvii").show(), "/invii/serverInvio.php");
}

function statoServerInvio(){
	$("frmMaildef").hide();
	new Ajax.Updater($("divInvii").show(), "/invii/statoServerInvio.php");
}

function autocancellazioni(){
	$("frmMaildef").hide();
	new Ajax.Updater($("divInvii").show(), "/invii/autocancellazioni.php");
}

function bounced(){
	$("frmMaildef").hide();
	new Ajax.Updater($("divInvii").show(), "/invii/bounced.php");
}

function bouncituri(){
	$("frmMaildef").hide();
	new Ajax.Updater($("divInvii").show(), "/invii/abouttobebounced.php");
}

function nospam(){
	$("frmMaildef").hide();
	new Ajax.Updater($("divInvii").show(), "/invii/nospam.php");
}

function nospamselettivo(){
	$("frmMaildef").hide();
	new Ajax.Updater($("divInvii").show(), "/invii/nospamselettivo.php");
}

function abbonatiPerNewsletter(){
	$("frmMaildef").hide();
	new Ajax.Updater($("divInvii").show(), "/invii/abbonatiPerNewsletter.php");
}
function emailInfo(id_email){
	so = document.viewport.getScrollOffsets();
	$('dEmailInfo').style.top = (so[1] + 50) + 'px';
	$("dEmailInfo").update("");
	new Ajax.Updater($("dEmailInfo").show(), "/invii/email_info.php", {parameters: {id: id_email}});
}

function emailinfo_invii(id_email){
	$("emailinfo_invii").update("<img src='/images/ajax-loader.gif'/>").show();
	new Ajax.Updater($("emailinfo_invii"), "/invii/email_info_invii_effettuati.php", {parameters: {id: id_email}});
}

function emailinfo_richiesteautocancellazioni(id_email){
	$("emailinfo_richiesteautocancellazioni").update("<img src='/images/ajax-loader.gif'/>").show();
	new Ajax.Updater($("emailinfo_richiesteautocancellazioni"), "/invii/email_info_richieste_autocancellazioni.php", {parameters: {id: id_email}});
}

function emailinfo_fonti(id_email){
	$("emailinfo_fonti").update("<img src='/images/ajax-loader.gif'/>").show();
	new Ajax.Updater($("emailinfo_fonti"), "/invii/email_info_fonti.php", {parameters: {id: id_email}});
}

function setNoSpam(id_email, fld) {
  $("img_" + fld).show();
  new Ajax.Request("/invii/setNoSpam.php",
  {parameters: {id_email: id_email, fld: fld, value: $("cb_" + fld).checked ? 1 : 0},
  onComplete: function(transport){
    $("img_" + fld).hide();
  }})
}

function eliminaNoSpamNews(id_email, id_newsletter) {
  $("img_nospam_news_" + id_email + "_" + id_newsletter).show();
 new Ajax.Request("/invii/setNoSpamNewsletter.php",
  {parameters: {id_email: id_email, id_newsletter: id_newsletter}})
}

function updParam(fldName){
	new Ajax.Request("/invii/updParam.php",
		{method: "post",
		parameters: {fld: fldName, val: $("p_" + fldName).getValue()},
		onComplete: function(transport){
			if(errorHandle(transport)){
				return;
			}
			notifyMsg("Operazione completata");
		}});
}

function updSmtp(idSmtp){
	new Ajax.Request("/invii/updSmtp.php",
		{method: "post",
		parameters: {id: idSmtp,
			usabile: $F("smtpus_" + idSmtp),
			load: $F("smtpload_" + idSmtp),
			invio_test: $F("smtptest_" + idSmtp)},
		onComplete: function(transport){
			if(errorHandle(transport)){
				return;
			}
			notifyMsg("Operazione completata");
		}});
}

function insertEmailProva(){
	var newEmail = window.prompt("Inserisci il nuovo indirizzo di email","");
	if(newEmail){
		new Ajax.Request("/invii/insertEmailProva.php",
		{method: 'post',
			parameters: {email: newEmail},
		 	onComplete: function(transport){
				if(errorHandle(transport)){
					return;
				}
				impostazioni();
			}
		});
	}
}

function eliminaEmailProva(e) {
	if(window.confirm("Confermi l'eliminazione dell'indirizzo " + e + " dagli invii di prova?")){
		var url = "/invii/eliminaEmailProva.php";
		new Ajax.Request(url,
		{method: "post",
			parameters: {email: e},
			onComplete: function(transport){
				if(errorHandle(transport)){
					return;
				}
				impostazioni();}
		});
	}	
}

function invioProva(id){
	new Ajax.Request("/invii/invioProva.php",
	{method: "post",
		parameters: {idPrenotazioni: id, email_ipos: $F("email_ipos")},
		onComplete: function(transport){
			if(errorHandle(transport)){
				return;
			}
			frmMaildef(id);
		}
	});
} 

function invioProvaBis(id){
	new Ajax.Request("/invii/invioProvaBis.php",
	{method: "post",
		parameters: {idPrenotazioni: id, email_ipos: $F("email_ipos")},
		onComplete: function(transport){
			if(errorHandle(transport)){
				return;
			}
			frmMaildef(id);
		}
	});
} 

function cercaEmail(){
	$("frmMaildef").hide();
	$("divInvii").update();
	new Ajax.Updater($("frmMaildef").show(), "/invii/cercaEmail.php", {parameters: {email: $('edCercaEmail').getValue()}});
}

function salvaFonteEProsegui( elem ) {
  // Vedi submitFormIndirizzi
  new Ajax.Request("/invii/saveIndirizzi.php",
	{method: "post",
		parameters: $('frmIndirizzi').serialize(true),
		onComplete: function(transport){
			if(errorHandle(transport)){
				return;
			} else {
        formDataHasChanged = false;
				notifyMsg("Definizione della mail salvata");
        closeModalForm();
        showDiv(elem);
			}
		}
	});
}

function annullaEProsegui( elem ){
  $("frmIndirizzi").reset();
  formDataHasChanged = false;
  closeModalForm();
  showDiv(elem);
}
function richiediSalvataggioForm( elem ){
  setUpModalForm("divModalForm", 380, 0);
  new Ajax.Updater($("divModalForm"), "/invii/richiediSalvataggioForm.php",
    {parameters: {elem: elem}});
}

function showDiv(elem){
  if(formDataHasChanged){
    richiediSalvataggioForm(elem);
    return;
/*    if(!window.confirm("Dati non salvati!\nProseguo?")){
      return;
    } else {
      $("frmIndirizzi").reset();
    }*/
  }
  var elemContainer = elem + "_dest";
  $("content").select(".frmDestinatari").each(function(lnk){
//    var elemDest = lnk.id + "_dest";
//    if($(elemDest))
//      $(elemDest).update();
		lnk.hide();
	});
  if($(elemContainer) && $(elemContainer).empty()) {
    $(elemContainer).update("<img src='/images/ajax-loaderfb.gif'/>");
    new Ajax.Updater($(elemContainer), "/invii/frmDestinatari/loadFrmDestinatari.php",{
      parameters: {id: $(elemContainer).getAttribute("id_prenotazioni"),
        id_fonti: $(elemContainer).getAttribute("fonte"),
        inout: $(elemContainer).getAttribute("inout")},
      onComplete: function(e){
        disableFormElements(),
        observeFormElements()
      }
    });
  }
  $(elem).show();
}

function eliminaMaildef(id){
	var msg = "Attenzione!\nSe è già stata generata la lista di indirizzi per il giorno " +
		"potrebbe essere necessario rigenerarla.\n\nTutte le impostazioni per l'invio verranno perse.\n" +
		"Continuo?";
	if(window.confirm(msg)){ 
		new Ajax.Request("/invii/eliminaMaildef.php",
		{method: "post",
			parameters: {idPrenotazioni: id},
			onComplete: function(transport){
				if(errorHandle(transport)){
					return;
				}
				notifyMsg("Definizione della newsletter eliminata");
				caricaInvio();
			}
		});
	}
}

function reinviaRemoved(id){
	if(window.confirm("Confermi il reinvio delle mail?")){
		new Ajax.Request("/invii/reinviaRemoved.php",
		{method: "post",
		 parameters: {id_maildef: id},
		 onComplete: function(transport){
				if(errorHandle(transport)){
					return;
				}
				notifyMsg("Invio reinviato");
		 }
		});
	}
}

function ricaricaFonti(){
	if(window.confirm("Vuoi ricaricare le fonti")){
		new Ajax.Request("/invii/ricaricaFonti.php",
		{method: "post",
		 onComplete: function(transport){
				if(errorHandle(transport)){
					return;
				}
				alert("Ricaricamento fonti in corso");
		 }
		});
	}
}

function calcolaIndirizzi(){
	$("divResult").update("conteggio in corso...").setStyle("background-color: rgb(234, 156, 142)").show();
	new Ajax.Updater($("divResult"), "/calcolaStats.php",
		{parameters: $("frmStats").serialize(true),
			evalScripts: true});
}

function enableStatControls(id){
	$("frmStats").select(".a_" + id).each(function(elem){
		if($("cb_" + id).checked){
			elem.enable();
//			$("frm_" + id).setStyle("background-color: #fff");
		} else {
			elem.disable();
//			$("frm_" + id).setStyle("background-color: #efefef");
		}
	});
}

function salvaModello(id){
	var nome = window.prompt("Inserisci il nome per il modello di newsletter");
	if(nome.empty()){
		return;
	}
	new Ajax.Request("/invii/salvaModello.php",
	{method: "post",
		parameters: {idMaildef: id, nome_modello: nome},
		onComplete: function(transport){
			if(errorHandle(transport)){
				return;
			}
			notifyMsg(transport.responseText);
		}
	});
}

function salvaModelloPerNews(idn) {
	var idm = $F("sel_" + idn);
	new Ajax.Request("/invii/salvaModelloPerNews.php",
	{method: "post",
		parameters: {idNewsletter: idn, modello: idm},
		onComplete: function(transport){
			if(errorHandle(transport)){
				return;
			}
			notifyMsg(transport.responseText);
		}
	});
} 

function salvaAreaNews(idn) {
	var idm = $F("selArea_" + idn);
	$("spSelAr" + idn).update("<img src='/images/progress-indicator.gif'/>").show();
	new Ajax.Request("/invii/salvaAreaNews.php",
	{method: "post",
		parameters: {idNewsletter: idn, area: idm},
		onComplete: function(transport){
			if(errorHandle(transport)){
				return;
			}
			$("spSelAr" + idn).update("<img src='/images/green-check.jpg'/>").show();
			new PeriodicalExecuter(function(pe) {
			 	$("spSelAr" + idn).hide();
			    pe.stop();
			}, 3);
		}
	});
} 

function salvaTemplateOggetto(idn) {
	var to = $F("template_oggetto_" + idn);
	$("spTemplateOggetto" + idn).update("<img src='/images/progress-indicator.gif'/>").show();
	new Ajax.Request("/invii/salvaTemplateOggetto.php",
	{method: "post",
		parameters: {idNewsletter: idn, template_oggetto: to},
		onComplete: function(transport){
			if(errorHandle(transport)){
				return;
			}
			$("spTemplateOggetto" + idn).update("<img src='/images/green-check.jpg'/>").show();
			new PeriodicalExecuter(function(pe) {
			 	$("spTemplateOggetto" + idn).hide();
			    pe.stop();
			}, 3);
		}
	});
} 

function change_data(elem_data){
	var gNow = new Date();
	var mese = new String(gNow.getMonth());
	var anno = new String(gNow.getFullYear());
	show_calendar(elem_data, mese, anno);
}


function detailMail2Send(idm){
	new Ajax.Updater($("frmMail2Send"), "/m2sDetail.php",
	{parameters: {id_maildef: idm},
	 evalScripts: true});
}

function m2sSalvaOggetto(idm){
	if(!$("txt_oggetto").present()){
		window.alert("Inserisci l'oggetto");
		return;
	}
	new Ajax.Request("/m2sSalvaOggetto.php",
	{method: "post",
	parameters: {id_maildef: idm, oggetto: $F("txt_oggetto")},
	onComplete: function(transport){
		window.alert(transport.responseText);
		detailMail2Send(idm);		
	}
	});
}

function m2sInvioProva(id){
	new Ajax.Request("/invii/invioProva.php",
	{method: "post",
		parameters: {idPrenotazioni: id},
		onComplete: function(transport){
			if(errorHandle(transport)){
				return;
			}
			window.alert("Invio di prova eseguito");
			window.location.reload(true);
		}
	});
} 

function m2sInvioDiretto(id_maildef) {
	new Ajax.Request("/invii/setInvioDiretto.php",
			{method: "post",
				parameters: {id_maildef: id_maildef, valore: $F("cbInvioDiretto")},
				onComplete: function(transport){
					if(errorHandle(transport)){
						return;
					}
					detailMail2Send(id_maildef);
				}
			});
}

function setInvioDiretto(id_maildef) {
	new Ajax.Request("/invii/setInvioDiretto.php",
			{method: "post",
				parameters: {id_maildef: id_maildef, valore: $F("cbInvioDiretto")},
				onComplete: function(transport){
					if(errorHandle(transport)){
						$("cbInvioDiretto").checked = false;
            return;
					}
				}
			});
}


function m2sConfermaInvio(idmd){
	if(window.confirm("Confermi l'invio? L'operazione non puo' essere annullata")){
		var url = "/invii/confermaInvio.php";
		var myAjax = new Ajax.Request(url,
		{method: "post",
			parameters: {id: idmd},
			onComplete: function(transport){
				if(errorHandle(transport)){
					return;
				}
				window.alert("Invio confermato");
				window.location.reload(true);}
		});
	}	
}

function m2sInvioProvaBis(id){
	new Ajax.Request("/invii/invioProvaBis.php",
	{method: "post",
		parameters: {idPrenotazioni: id},
		onComplete: function(transport){
			if(errorHandle(transport)){
				return;
			}
			window.alert("Invio di prova eseguito nuovamente");
			window.location.reload(true);
		}
	});
} 

function m2sSalvaNews(){
	if(!$("txt_oggetto").present()){
		window.alert("Inserisci l'oggetto");
		return;
	}
	$("frmSalva").request({
	onComplete: function(transport){alert(transport.responseText)} 
	});
}

function abilitaSceltaInviatore(){
	if($("usa_modello").checked){
		$("inviatore").enable();
	} else {
		$("inviatore").disable();
	}
}

function annullaInvio(id){
	if(window.confirm("Vuoi annullare l'invio?")){
		new Ajax.Request("/invii/annullaInvio.php",
		{method: "post",
			parameters: {idPrenotazioni: id},
			onComplete: function(transport){
				if(errorHandle(transport)){
					return;
				}
				notifyMsg("Invio annullato");
				window.location.reload(true);
			}
		});
	}
}

function redCheckEmail(){
	$("divCheckEmailRed").style.display = "block";
	$("divCheckEmailRed").update("Attendere, prego...");
	new Ajax.Updater($("divCheckEmailRed"), "/invii/email_info_redattori.php",
	{parameters: {email: $F("txtCheckEmail")}, evalScripts: "true"});
}

function redDettagliInvio(idmd){
	var so = document.viewport.getScrollOffsets();
	$('frmMaildefRed').style.top = (so[1] + 60) + 'px';
	$("frmMaildefRed").update("<p style='text-align: center; font-weight: bold'>Caricamento dettagli dell'invio in corso...</p>").show();
	new Ajax.Updater($("frmMaildefRed"), "/redDettagliInvio.php",
	{parameters: {id_maildef: idmd},
	 evalScripts: true});
}

function cercaInviiPublimaggioli(){
	$("divElencoInviiPM").update("");
	$("divResult").update("");
	new Ajax.Updater($("divElencoInviiPM"), "/cercaInviiPublimaggioli.php",
		{parameters: {data: $F("data")},
	 	 evalScripts: true});
}

function caricaRiepilogoInvii(idmd){
	$("divResult").update("aggiornamento dati in corso");
	new Ajax.Updater($("divResult"), "/caricaRiepilogoInvii.php",
		{parameters: {id_maildef: idmd}});
}

function riepilogoInvii(idmd){
	$("divResult").show();
	$("divResult").update("conteggio in corso, please wait");
	new Ajax.Request("/creaRiepilogoInvii.php",
		{parameters: {id_maildef: idmd},
		onComplete: function(transport){
			if(errorHandle(transport)){
				return;
			}
			caricaRiepilogoInvii(idmd);
		}});
}

function updateAzienda(idaz) {
	new Ajax.Request("/updateAzienda.php",
		{parameters: {id: idaz, azienda: $F("upAz" + idaz)},
		onComplete: function(transport){
			if(errorHandle(transport)){
				return;
			}
			notifyMsg(transport.responseText);
		}});
}

function buildCalInvii(anno, mese){
	new Ajax.Updater($("divModalForm"), "/buildCalInvii.php",
		{parameters: {anno: anno, mese: mese}});
}
function frmCalInvii() {
  setUpModalForm("divModalForm", 380, 0);
  new Ajax.Updater($("divModalForm"), "/buildCalInvii.php",
    {parameters: {mese: mese, anno: anno}});
}

function caricaInvioNew(d){
dataInvioCorrente = d;
var url = "/invii/listByDay.php";
new Ajax.Request(url,
{method: "post",
  parameters: {id: d},
  onComplete: function(transport){
    $('divInvii').update(transport.responseText).show();
    $('frmMaildef').hide();
    closeModalForm();
  }});
}

function addEmailPrenotatori(id_prenotatori){
  var newEmail = window.prompt("Inserisci l'indirizzo di mail", "");
  if(newEmail){
    new Ajax.Request("/addEmailPrenotatori.php",
      {method: "post", parameters: {id_prenotatori: id_prenotatori, newEmail: newEmail},
      onComplete: function(transport){
			if(transport.responseText != ""){
				alert(transport.responseText);
			}
      window.location.reload(true);
  }})
  }
}

function deleteEmailPrenotatori(id){
  if(window.confirm("Confermi l'eliminazione dell'indirizzo?")){
    new Ajax.Request("/deleteEmailPrenotatori.php",
      {method: "post", parameters: {id: id},
      onComplete: function(transport){
			if(transport.responseText != ""){
				alert(transport.responseText);
			}
      window.location.reload(true);
  }})
  }
}

function inviaSubito(id_maildef, id_prenotazioni){
  if(window.confirm("Vuoi inviare subito la newsletter?")){
    new Ajax.Request("/invii/inviaSubito.php",
      {method: "post", parameters: {id_maildef: id_maildef},
      onComplete: function(transport){
			if(transport.responseText != ""){
				alert(transport.responseText);
			}
      frmMaildef(id_prenotazioni);
  }})
  }
}

function eliminaIndirizziNonAccodati(id_maildef, id_prenotazioni){
  if(window.confirm("Confermi l'eliminazione degli indirizzi non ancora accodati?")){
    new Ajax.Request("/invii/eliminaIndirizziNonAccodati.php",
      {method: "post", parameters: {id_maildef: id_maildef},
      onComplete: function(transport){
			if(transport.responseText != ""){
				alert(transport.responseText);
			}
      frmMaildef(id_prenotazioni);
  }})
  }
}

function impostaInvioTerminato(id_maildef, id_prenotazioni){
  if(window.confirm("Vuoi impostare l'invio come terminato?")){
    new Ajax.Request("/invii/impostaInvioTerminato.php",
      {method: "post", parameters: {id_maildef: id_maildef},
      onComplete: function(transport){
			if(transport.responseText != ""){
				alert(transport.responseText);
			}
      frmMaildef(id_prenotazioni);
  }})
  }
}

function cercaInvii() {
	new Ajax.Updater($("selListaElenchi"), "/invii/cercaInvii.php",
		{parameters: {data: $F("edDataInvioPrec")}});
}

function clonaInvio(id_prenotazioni, id) {
  if(window.confirm("Vuoi clonare le impostazioni di invio?")){
    new Ajax.Request("/invii/clonaImpostazioni.php",
      {method: "post", parameters: {id_maildef_dest: id, id_maildef_orig: $F("selListaElenchi")},
      onComplete: function(transport){
			if(transport.responseText != ""){
				alert(transport.responseText);
			}
      frmMaildef(id_prenotazioni);
  }})
  }
}

function filtraConvegniLotus(tipo){
  new Ajax.Updater($("lotus_convegni_" + tipo), "/invii/filtraConvegniLotus.php",
  {parameters: {tipo: tipo, filtro: $F("fltLotusConvegni" + tipo)}});
}

function filtraConvegniLotusOut(tipo){
  new Ajax.Updater($("lotus_out_convegni_" + tipo), "/invii/filtraConvegniLotus.php",
  {parameters: {tipo: tipo, filtro: $F("fltLotusOutConvegni" + tipo)}});
}

function conteggioInviiPerGiorno() {
	$("divResult").update("conteggio in corso...").show();
	new Ajax.Updater($("divResult"), "/conteggioInviiPerGiorno.php",
		{parameters: {data: $F("data"), dataal: $F("dataal")},
	 	 evalScripts: true});
}

function eliminaAllegato(id_allegati, id_prenotazioni){
  if(window.confirm("Confermi l'eliminazion dell'allegato?")){
    new Ajax.Request("/invii/eliminaAllegato.php",{
      parameters: {id_allegati: id_allegati},
      onComplete: function(e){
        new Ajax.Updater($("ulAllegati"), "/invii/getAllegati.php",{
          parameters: {id_prenotazioni: id_prenotazioni}
        })
      }
    })
  }
 
}

function adjustFormWidth(form, w) {
  var v_width = document.viewport.getWidth();
  $(form).style.width = w + 'px';
  $(form).style.left = ((v_width / 2) - (w / 2)) + 'px';
}
function setUpModalForm(form, w, h) {
  var so = document.viewport.getScrollOffsets();
	$(form).style.top = (so[1] + 100) + 'px';
  adjustFormWidth(form, w);
  if(h != 0) {
    $(form).style.height = h + 'px';
  } else {
    $(form).style.height = 'auto';
  }
	$(form).update("<img src='/images/ajax-loaderfb.gif'/>")
  $("content").setOpacity(.3);
  $(form).show();
}
function closeModalForm(frm, callerElem) {
  if(frm == undefined){
    frm = 'divModalForm';
  }
  $(frm).update();
  $(frm).hide();
  $("content").setOpacity(1);
}

function pickColor(id, color){
  $("tdCol" + id).setStyle({
    backgroundColor: color
  })
  new Ajax.Request("/invii/salvaColorePrenotazione.php",{
    parameters: {id: id, color: color}
  })
}

function setFatt(id_fonti) {
  var v = $F("fatt_" + id_fonti);
  $("imgfatt_" + id_fonti).show();
  new Ajax.Request("/fonti/setFonteAttiva.php",{
    parameters: {id: id_fonti, v: v},
    onComplete: function(e){
      $("imgfatt_" + id_fonti).hide();
      if(e.responseText != "")
        alert(e.responseText);
    }
  });
}

function setSVFatt(id_sv, sv) {
  var v = $F("fattsv_" + id_sv);
  $("imgfattsv_" + id_sv).show();
  new Ajax.Request("/fonti/setFonteSVAttiva.php",{
    parameters: {sv: sv, v: v},
    onComplete: function(e){
      $("imgfattsv_" + id_sv).hide();
      if(e.responseText != "")
        alert(e.responseText);
    }
  });
}

function reload_singola_fonte(id_fonti){
  $("imgrf_" + id_fonti).show();
  new Ajax.Request("/fonti/reload_singola_fonte.php",{
    parameters: {id_fonti: id_fonti},
    onComplete: function(e){
      var data = e.responseJSON;
      if(data.error != "") {
        alert(data.error);
      } else {
        $("tduc_" + id_fonti).update(data.uc);
        $("tdoi_" + id_fonti).update(data.oi);
        $("tdof_" + id_fonti).update(data.of);
        $("tdsf_" + id_fonti).update(data.sf);
      }
      $("imgrf_" + id_fonti).hide();
    }
  })
}

function switchGruppo() {
  new Ajax.Request("/invii/switchGruppo.php",
    {parameters: {id: $F("sgSw")},
    onComplete: function(e){window.location.reload(true)}}
  )
}

function filtraCategorieFt(){
  new Ajax.Updater($("ft_categorie"), "/invii/filtraCategorieFt.php",
  {parameters: {filtro: $F("fltFtCategorie")}});
}

function filtraProdottiFt(){
  new Ajax.Updater($("ft_prodotti"), "/invii/filtraProdottiFt.php",
  {parameters: {filtro: $F("fltFtProdotti")}});
}

function help(helpId){
  setUpModalForm("divModalForm", 510, 0);
  new Ajax.Updater($("divModalForm"), "/invii/help/switcher.php",
    {parameters: {helpId: helpId}});
}

function sg_set_usabile(id_gruppi, id_smtp){
  $("smtptest_" + id_gruppi + "_" + id_smtp).disabled = !$("smtpus_" + id_gruppi + "_" + id_smtp).checked;
  $("smtpload_" + id_gruppi + "_" + id_smtp).disabled = !$("smtpus_" + id_gruppi + "_" + id_smtp).checked;
  if(!$("smtpus_" + id_gruppi + "_" + id_smtp).checked){
    $("smtpload_" + id_gruppi + "_" + id_smtp).value = "0";
    $("smtptest_" + id_gruppi + "_" + id_smtp).checked = false;
  }
  sg_set_host(id_gruppi, id_smtp);
}

function sg_set_host(id_gruppi, id_smtp) {
  var usabile = $("smtpus_" + id_gruppi + "_" + id_smtp).checked ? 1 : 0;
  var test = $("smtptest_" + id_gruppi + "_" + id_smtp).checked ? 1 : 0;
  var load = $F("smtpload_" + id_gruppi + "_" + id_smtp);
  new Ajax.Request("/invii/sg_set_host.php",{
    parameters: {id_gruppi: id_gruppi, id_smtp: id_smtp, usabile: usabile, test: test, load: load},
    onComplete: function(e){
      notifyMsg(e.responseText);
    }
  });
}

function verificaPresenzaEmail(id_maildef) {
  $("img_vpe").show();
  $("sp_vpe").update();
  new Ajax.Request("/invii/verificaPresenzaEmail.php",{
    parameters: {id_maildef: id_maildef, email: $F("edVPE")},
    onComplete: function(e){
      $("img_vpe").hide();
      $("sp_vpe").update(e.responseText);
    }
  });
}
