 
 function calc_amount_sms(type)
	{
	// Calcola il corrispettivo in funzione dei pacchetti di SMS
	var sms;

	if (refill.quality[1].checked == true)
		{
		// Alta qualità
		switch(refill.sms.value)
			{
			case '500':
				sms = 70;	break;    
			case '1000':
				sms = 125; break;    
			case '2000':
				sms = 240; break;    
			case '3000':
				sms = 350; break;    
			case '5000':
				sms = 550; break;    
			case '7000':
				sms = 790; break;    
			case '10000':
				sms = 1100; break;    
			case '15000':
				sms = 1600; break;    
			default:
				sms = 70;
			}		
		}
	else
		{
		// Qualità normale
		switch(refill.sms.value)
			{
			case '500':
				sms = 50;	break;    
			case '1000':
				sms = 90;	break;    
			case '2000':
				sms = 170; break;    
			case '3000':
				sms = 250; break;    
			case '5000':
				sms = 400; break;    
			case '7000':
				sms = 550; break;    
			case '10000':
				sms = 770; break;    
			case '15000':
				sms = 1100; break;    
			default:
				sms = 50;
			}		
		}
	refill.costo_sms.value = sms + ".00 €"
	}
	
 function cancel_sub ()
	{
	if (confirm ("Attenzione: annullando la registrazione verranno eliminati i dati già immessi nel form.\nConfermi l'annullamento?"))
		location.replace ('abbonamento.php');
	}
	
 function clean_form ()
 	{
 	// Svuota il form per la registrazione di un contatto on-line (es. demoreg.php)
 	// quando viene fatto il refresh della pagina (on-load)
 	form_contatto.cognome.value = '';
 	form_contatto.nome.value = '';
 	//form_contatto.citta.value = ''; // città no perchè viene inserita come dato predefinito
 	form_contatto.n_tel.value = '';
 	form_contatto.e_mail.value = '';
 	form_contatto.giorno.value = '1';
 	form_contatto.mese.value = '1';
 	form_contatto.anno.value = '2009';
 	form_contatto.sesso.value = 'M';
 	}
 	
 function conferma_cambio_sms ()
	{
	if (confirm ("Confermi il cambio degli SMS?"))
		form_cambia_sms.submit ();
	else
		return false;
	}

 function conferma_iscrizione(id)
 	{
	form_contatti.selected_cont.value = id;
	form_contatti.action.value = 'confirm';
	form_contatti.submit ();
 	}

 function copy_msg (i)
 	{
 	// Copia un messaggio predefinito nel campo testo_messaggio
 	// Attenzione: se c'è solo un messaggio nella lista dei predefiniti, length è undefined
 	if (form_contatti.scelta_predefinito.length == undefined)
 		form_contatti.testo_messaggio.value = form_contatti.scelta_predefinito.value;
	else 		
 		form_contatti.testo_messaggio.value = form_contatti.scelta_predefinito[i].value;
 	}

 function detect_browser ()
	{
	var browser = navigator.appName;
	var b_version = navigator.appVersion;
	var version = parseFloat(b_version);

	//if ((browser=="Netscape"||browser=="Microsoft Internet Explorer") && (version>=4))
	if (browser == "Microsoft Internet Explorer")
  		{
  		return 'ie';
  		}
	else
  		{
		return 'other';
  		}
	}

function elimina_strade ()
 	{
	// Elimina le strade dallo stradario
	if (confirm ('Confermi l\'eliminazione di tutte le strade?'))
		{
		location.replace ('stradario.php?action=remove_all');
		}
	}	
	
 function esegui_cmd_globale ()
 	{
 	var f = form_contatti;
 	var selected = 0;
 	
	// Check se almeno un contatto è selezionato
	f.selected_cont.value = '';
	if (f.includi.length == undefined)
		{
		// C'è un solo destinatario, quindi length è undefined
		if (f.includi.checked == true)
			{
			// Compila anche l'elenco degli ID dei destinatari
			f.selected_cont.value += (f.id_cont.value + '-')
			selected++;
			}
		}
	else
		{
	 	for(var i = 0; i < f.includi.length; i++)
			{
			if (f.includi[i].checked == true)
				{
				// Compila anche l'elenco degli ID dei destinatari
				f.selected_cont.value += (f.id_cont[i].value + '-')
				
				selected++;
				}
			}
		}
	if (selected == 0)
		{
		alert ("Seleziona almeno un contatto");
		return false;
		}

	if (f.global_cmd.value == 0)
		{
		// Elimina dalla rubrica 
		if (confirm ('Confermi l\'eliminazione dei contatti selezionati dalla rubrica?'))
			{
			f.action.value = 'remove_rubrica';
			f.submit ();
			}
		}
	else if (f.global_cmd.value == 1)
		{
		var grp = f.gruppo3.options[f.gruppo3.selectedIndex].text;
		// Elimina dal gruppo
		if (confirm ('Confermi l\'eliminazione dei contatti selezionati\ndal gruppo ' + grp + '?'))
			{
			f.action.value = 'remove_gruppo';
			f.submit ();
			}
		}
	else
		{
		var grp = f.gruppo3.options[f.gruppo3.selectedIndex].text;
		// Aggiungi al gruppo
		if (confirm ('Confermi l\'aggiunta dei contatti selezionati\nal gruppo ' + grp + '?'))
			{
			f.action.value = 'add_gruppo';
			f.submit ();
			}
		}
 	}

 function filter_assenze (pages)
 	{
 	// Se ci sono dei dati, un nuovo filtro riporta il display sulla pagina 1 dei risultati
 	if (pages > 0)	form_assenze.page.value=1; 
	form_assenze.submit();
 	}
  	
 function filter (pages)
 	{
 	// Se ci sono dei dati, un nuovo filtro riporta il display sulla pagina 1 dei risultati
 	if (pages > 0)	form_contatti.page.value=1; 
	form_contatti.submit();
 	}
  	
 function get_global (browser)
 	{
	var g_name = document.getElementById('aggiungi_al_grp');

 	if (form_contatti.global_cmd.value == 0)
 		{
 		g_name.style.visibility = 'hidden';
 		g_name.style.display = 'none';
 		}
	else 	
 		{
 		g_name.style.visibility = 'visible';
 		if (browser == 'ie')
	 		g_name.style.display = 'inline';
	 	else
	 		g_name.style.display = 'table-cell';
 		}
 	} 
 
 function isblank(s)
 	{
 	for(var i = 0; i < s.length; i++)
 		{
 		var c = s.charAt(i);
 		if ((c != ' ') || (c != '\t')) return false;
 		}
 	// is blank!
 	return true;
 	}

 function isnumber(s)
 	{
 	for(var i = 0; i < s.length; i++)
 		{
 		var c = s.charAt(i);
 		if ((c < '0') || (c > '9')) return false;
 		}
 	// is number!
 	return true;
 	}

 function iscrizione_on_line(f,client_type)
 	{
 	// Iscrizione di un contatto tramite web
 	var selected = 0;
 
 	// Controllo nuovo contatto
 	if (f.cognome.value == '' || isblank (f.cognome.value))
 		{
 		alert ('Manca il cognome');
 		return false;		
 		}
 	if (f.nome.value == '' || isblank (f.nome.value))
 		{
 		alert ('Manca il nome');
 		return false;		
 		}
	// La via deve essere selezionata dall'elenco
 	if (f.indirizzo.value == 'seleziona via')
 		{
 		alert ('Devi selezionare la via dall\'elenco proposto');
 		return false;		
 		}
 	if (f.n_tel.value == '' || isblank (f.n_tel.value))
 		{
 		alert ('Manca il numero del telefono cellulare');
 		return false;		
 		}
  	if (isnumber (f.n_tel.value) == false || f.n_tel.value.charAt(0) != '3' || f.n_tel.value.length < 8)
 		{
 		alert ('Attenzione: numero del telefono cellulare non valido');
 		return false;		
 		}
	if (client_type != "scuola")
		{
		// Check se almeno un gruppo è selezionato
		f.selected_grp.value = '';
		if (f.sel_gruppo.length == undefined)
			{
			// C'è un solo gruppo, quindi length è undefined
			if (f.sel_gruppo.checked == true)
				{
				// Compila anche l'elenco degli ID dei gruppi
				f.selected_grp.value += (f.id_gruppo.value + '-');
				selected++;
				}
			}
		else
			{
		 	for (var i = 0; i < f.sel_gruppo.length; i++)
				{
				if (f.sel_gruppo[i].checked == true)
					{
					// Compila anche l'elenco degli ID dei gruppi
					f.selected_grp.value += (f.id_gruppo[i].value + '-');
					selected++;
					}
				}
			}
		if (selected == 0)
			{
			alert ("Seleziona almeno un gruppo");
			return false;
			}
		}
	else
		{
		f.selected_grp.value = f.sel_gruppo.value + '-';
		}
  	if (f.privacy[0].checked == false)
 		{
 		alert ('L\'accettazione della liberatoria sulla privacy è obbligatoria');
 		return false;		
 		}
	return true;
 	}	

 function predef_msg (action)
 	{
 	// nasconde/visualizza la tabella dei messaggi predefiniti
	var table = document.getElementById('predefined');
	var ctrl_close = document.getElementById('predef_close');
	var ctrl_open = document.getElementById('predef_open');
		
	if (action == 0)
		{
	 	table.style.visibility = 'hidden';
 		table.style.display = 'none';
	 	ctrl_close.style.visibility = 'hidden';
 		ctrl_close.style.display = 'none';
	 	ctrl_open.style.visibility = 'visible';
 		ctrl_open.style.display = 'inline';
		}
	else
		{
	 	table.style.visibility = 'visible';
	 	// In base al tipo di browser, usa l'attributo giusto
		browser = detect_browser ();
		if (browser == 'ie')
		 	table.style.display = 'inline';
	 	else
		 	table.style.display = 'inline-table';
 		// table.style.display = 'inline-table';
	 	ctrl_open.style.visibility = 'hidden';
 		ctrl_open.style.display = 'none';
	 	ctrl_close.style.visibility = 'visible';
 		ctrl_close.style.display = 'inline';
		}
 	}
 
function preferiti()
	{
    	var title = document.title;
    	var url = document.location.href;
    	if (window.sidebar) // Mozilla Firefox
    		{
        	window.sidebar.addPanel(title, url, "");
    		}
    	else if (window.external) // Internet Explorer
    		{
        	window.external.AddFavorite(url, title);
    		}
    	else if (window.opera && window.print) // Opera
    		{
        	var elem = document.createElement('a');
        	elem.setAttribute('href', url);
        	elem.setAttribute('title', title);
        	elem.setAttribute('rel', 'sidebar');
        	elem.click();
    		}
	}

function registra_assenze()
 	{
	var selected = 0;
	var msg_conferma;
	var f = form_assenze;

	// Check se almeno un destinatario è selezionato
	f.selected_ass.value = '';
	f.selected_rit.value = '';
	f.selected_usc.value = '';
	if (f.assenza.length == undefined)
		{
		// C'è un solo destinatario, quindi length è undefined
		if (f.assenza.checked == true)
			{
			// Compila anche l'elenco degli ID dei destinatari
			f.selected_ass.value += (f.id_cont.value + '-')
			selected++;
			}
		if (f.ritardo.checked == true)
			{
			// Compila anche l'elenco degli ID dei destinatari
			f.selected_rit.value += (f.id_cont.value + '-')
			selected++;
			}
		if (f.uscita.checked == true)
			{
			// Compila anche l'elenco degli ID dei destinatari
			f.selected_usc.value += (f.id_cont.value + '-')
			selected++;
			}
		}
	else
		{
	 	for(var i = 0; i < f.assenza.length; i++)
			{
			if (f.assenza[i].checked == true)
				{
				f.selected_ass.value += (f.id_cont[i].value + '-')
				selected++;
				}
			if (f.ritardo[i].checked == true)
				{
				f.selected_rit.value += (f.id_cont[i].value + '-')
				selected++;
				}
			if (f.uscita[i].checked == true)
				{
				f.selected_usc.value += (f.id_cont[i].value + '-')
				selected++;
				}
			}
		}
	if (selected == 0)
		{
		alert ("Seleziona almeno un'assenza, un ritardo o un'uscita");
		return false;
		}
	f.action.value = 'registra';
	return true;
 	}

 function remove_booking(_id)
 	{
	// Elimina prenotazione
	if (confirm ('Confermi l\'eliminazione della prenotazione?'))
		{
		location.replace ('prenotazioni.php?action=remove&id=' + _id);
		}
 	}

 function remove_assenza(id)
 	{
	if (confirm ('Confermi l\'eliminazione del record?'))
		{
		form_assenze.id_remove_assenza.value = id;
		form_assenze.action.value = 'remove';
		form_assenze.submit ();
		}
 	}

 function remove_cont(id)
 	{
	if (confirm ('Confermi l\'eliminazione del contatto dalla rubrica?'))
		{
		form_contatti.selected_cont.value = id;
		form_contatti.action.value = 'remove';
		form_contatti.submit ();
		}
 	}

 function remove_dest(_page,_id)
 	{
	if (confirm ('Confermi la cancellazione del destinatario?'))
		{
		location.replace (_page + 'id=' + _id + '&action=remove');
		}
 	}

 function remove_group(_page,_id,type)
 	{
	if (type == 0)
		{
		// Elimina gruppo
		if (confirm ('Confermi l\'eliminazione?'))
			{
			location.replace (_page + 'id=' + _id + '&action=remove');
			}
		}
	else
		{
		// Elimina gruppo e contatti
		if (confirm ('Attenzione! L\'eliminazione del gruppo\ncausa l\'eliminazione anche dei contatti ad esso associati!\n\nConfermi l\'eliminazione del gruppo?'))
			{
			location.replace (_page + 'id=' + _id + '&action=remove_all');
			}
		}
 	}

 function remove_predefined (id)
 	{
	// Mantiene lo stato dei contatti selezionati
	form_contatti.selected_cont.value = '';

	// Check se s'è un solo contatto
 	if (form_contatti.includi.length == undefined)
 		{
		if (form_contatti.includi.checked == true)
			{
			form_contatti.selected_cont.value += (form_contatti.id_cont.value + '-')
			}
 		}
	else
		{
	 	for(var i = 0; i < form_contatti.includi.length; i++)
			{
			if (form_contatti.includi[i].checked == true)
				{
				// Compila anche l'elenco degli ID dei destinatari
				form_contatti.selected_cont.value += (form_contatti.id_cont[i].value + '-')
				}
			}
		}
	// Setta l'azione reale
 	form_contatti.action.value = 'remove_predefined';
	form_contatti.predefined_msg.value = id;
 	// Il submit invia il form per mantenere le info di stato, ma l'azione è expand
	form_contatti.submit();
 	}

 function remove_robot(_page,_id)
 	{
	// Elimina msg automatico
	if (confirm ('Confermi l\'eliminazione?'))
		{
		location.replace (_page + 'id=' + _id + '&action=remove');
		}
 	}

 function ricerca (pages)
 	{
 	var f = form_contatti;
 	
 	if ((f.cognome.value == '' || isblank (f.cognome.value)) && (f.nome.value == '' || isblank (f.nome.value)))
 		{
 		alert ('Inserisci almeno o il cognome o il nome');
 		return false;		
 		}
 	// Se ci sono dei dati, un nuovo filtro riporta il display sulla pagina 1 dei risultati
 	if (pages > 0)	f.page.value=1; 
	f.submit();
 	}
  	
 function select_allievi(all,n)
 	{
 	// n: numero di destinatari
 	for(var i = 0; i < n; i++)
 		{
 		if (all == 1)
 			form_assenze.includi[i].checked = true;
 		else
 			form_assenze.includi[i].checked = false;
 		}
 	}

 function select_contatti(all,n)
 	{
 	// n: numero di destinatari
 	for(var i = 0; i < n; i++)
 		{
 		if (all == 1)
 			form_contatti.includi[i].checked = true;
 		else
 			form_contatti.includi[i].checked = false;
 		}
 	}

 function select_dest(all,n)
 	{
 	// n: numero di destinatari
 	for(var i = 0; i < n; i++)
 		{
 		if (all == 1)
 			componi.includi[i].checked = true;
 		else
 			componi.includi[i].checked = false;
 		}
 	}

 function send_assenze(sicurezza)
 	{
	var selected = 0;
	var msg_conferma;
	var n_sms = 1;
	var f = form_assenze;

	// Check se almeno un destinatario è selezionato
	f.selected_cont.value = '';
	if (f.includi.length == undefined)
		{
		// C'è un solo destinatario, quindi length è undefined
		if (f.includi.checked == true)
			{
			// Compila anche l'elenco degli ID dei destinatari
			f.selected_cont.value += (f.id_cont.value + '-')
			selected++;
			}
		}
	else
		{
	 	for(var i = 0; i < f.includi.length; i++)
			{
			if (f.includi[i].checked == true)
				{
				// Compila anche l'elenco degli ID dei destinatari
				f.selected_cont.value += (f.id_cont[i].value + '-')				
				selected++;
				}
			}
		}
	if (selected == 0)
		{
		alert ("Seleziona almeno un allievo");
		return false;
		}
	
	// Controlla il PIN se è abilitato
	if (sicurezza == 1)
		{
	 	if (f.pin.value == '' || isblank (f.pin.value))
	 		{
	 		alert ('Inserisci il PIN');
	 		return false;		
	 		}
	 	if (!isnumber (f.pin.value))
	 		{
	 		alert ('PIN non valido');
	 		return false;		
	 		}
	 	n_sms = selected;
		msg_conferma = 'Dopo il controllo del PIN\nverranno inviati ' + n_sms + ' SMS.\n\nConfermi?'
		}
	else
		{
	 	n_sms = n_sms * selected;
		msg_conferma = 'Verranno ora inviati ' + n_sms + ' SMS.\n\nConfermi?'
		}
	// Chiede conferma
	if (confirm (msg_conferma))
		{
		f.action.value = 'send';
		return true;
		}
 	return false;
 	}

 function send_msg(sicurezza,network)
 	{
 	// sicurezza: indica se il cliente ha attiva l'opzione di sicurezza con PIN
 	// network: indica se l'invio avviene dalla pagina di rete o meno (1=network; 0=invio normale)
	var selected = 0;
	var msg_conferma;
	var n_sms = 1;
	var f = form_contatti;

	// Check testo messaggio se <> 0
 	if (f.testo_messaggio.value == '' || isblank (f.testo_messaggio.value))
 		{
 		alert ('Inserisci il testo del messaggio');
 		return false;		
 		}
 	if (f.testo_messaggio.value.length > 160)
 		{
 		var resto = f.testo_messaggio.value.length % 160;
 		n_sms = ((f.testo_messaggio.value.length - resto) / 160) + 1;
		if (!confirm ('Il messaggio e\' lungo ' + f.testo_messaggio.value.length + ' caratteri.\nVerranno inviati ' + n_sms + ' SMS per ogni destinatario.\n\nConfermi?'))
			{
			return false;
			}
 		}
	
	// Check se almeno un destinatario è selezionato
	f.selected_cont.value = '';
	if (f.includi.length == undefined)
		{
		// C'è un solo destinatario, quindi length è undefined
		if (f.includi.checked == true)
			{
			// Compila anche l'elenco degli ID dei destinatari
			f.selected_cont.value += (f.id_cont.value + '-')
			// Conta il numero di destinatari
			if (network == 1)
				selected = f.num_contatti.value;
			else
				selected++;
			}
		}
	else
		{
	 	for(var i = 0; i < f.includi.length; i++)
			{
			if (f.includi[i].checked == true)
				{
				// Compila anche l'elenco degli ID dei destinatari
				f.selected_cont.value += (f.id_cont[i].value + '-')			
				// Conta il numero di destinatari
				if (network == 1)
					selected += parseInt (f.num_contatti[i].value);
				else
					selected++;
				}
			}
		}
	if (selected == 0)
		{
		alert ("Seleziona almeno un destinatario");
		return false;
		}
	// Controllo se nel testo esiste un nome di mese per esteso.
	// Suggerisce l'uso di riferimenti a date nel formato gg/mm/aaaa
	// Usa la funzione 'search' con una regular expression per una ricerca case insensitive
	if (f.testo_messaggio.value.search(/gennaio/i) > 0 || 
		f.testo_messaggio.value.search(/febbraio/i) > 0 ||
		f.testo_messaggio.value.search(/marzo/i) > 0 ||
		f.testo_messaggio.value.search(/aprile/i) > 0 ||
		f.testo_messaggio.value.search(/maggio/i) > 0 ||
		f.testo_messaggio.value.search(/giugno/i) > 0 ||
		f.testo_messaggio.value.search(/luglio/i) > 0 ||
		f.testo_messaggio.value.search(/agosto/i) > 0 ||
		f.testo_messaggio.value.search(/settembre/i) > 0 ||
		f.testo_messaggio.value.search(/ottobre/i) > 0 ||
		f.testo_messaggio.value.search(/novembre/i) > 0 ||
		f.testo_messaggio.value.search(/dicembre/i) > 0)
		{
		if (confirm ('Il messaggio contiene il nome di un mese per esteso\ne potrebbe essere cestinato dai filtri anti-spam.\nSi invita a modificare il testo inserendo le date\nnella forma gg/mm/aaaa per non incorrere in problemi.\n\nRitornare al testo del messaggio per la modifica suggerita?'))
			{
			return false;
			}
		}
	
	// Controllo flag RR (Ricevuta di Ritorno)
	if (f.rr.checked == true)
		{
		if (!confirm ('E\' stata richiesta la Ricevuta di Ritorno.\nVerranno addebitati il doppio degli SMS in Qualità Standard\noppure 1,5 volte gli SMS in Alta Qualità.\n\nConfermi?'))
			{
			return false;
			}
		}
	// Controlla il PIN se è abilitato
	if (sicurezza == 1)
		{
	 	if (f.pin.value == '' || isblank (f.pin.value))
	 		{
	 		alert ('Inserisci il PIN');
	 		return false;		
	 		}
	 	if (!isnumber (f.pin.value))
	 		{
	 		alert ('PIN non valido');
	 		return false;		
	 		}
	 	n_sms = n_sms * selected;
		msg_conferma = 'Dopo il controllo del PIN\nverranno inviati ' + n_sms + ' SMS a ' + selected + ' destinatari.\n\nConfermi?'
		}
	else
		{
	 	n_sms = n_sms * selected;
		msg_conferma = 'Verranno ora inviati ' + n_sms + ' SMS a ' + selected + ' destinatari.\n\nConfermi?'
		}
	// Chiede conferma
	if (confirm (msg_conferma))
		{
		f.action.value = 'send';
		return true;
		}
 	return false;
 	}

 function send_mnc(sicurezza)
 	{
 	// Send Mobile Number Check (verifica dell'esistenza e attività di un n. di cellulare)
	var selected = 0;
	var msg_conferma;
	var f = form_contatti;

	// Check se almeno un destinatario è selezionato
	f.selected_cont.value = '';
	if (f.includi.length == undefined)
		{
		// C'è un solo destinatario, quindi length è undefined
		if (f.includi.checked == true)
			{
			// Compila anche l'elenco degli ID dei destinatari
			f.selected_cont.value += (f.id_cont.value + '-')
			selected++;
			}
		}
	else
		{
	 	for(var i = 0; i < f.includi.length; i++)
			{
			if (f.includi[i].checked == true)
				{
				// Compila anche l'elenco degli ID dei destinatari
				f.selected_cont.value += (f.id_cont[i].value + '-')			
				selected++;
				}
			}
		}
	if (selected == 0)
		{
		alert ("Seleziona almeno un destinatario");
		return false;
		}
	
	// Controlla il PIN se è abilitato
	if (sicurezza == 1)
		{
	 	if (f.pin.value == '' || isblank (f.pin.value))
	 		{
	 		alert ('Inserisci il PIN');
	 		return false;		
	 		}
	 	if (!isnumber (f.pin.value))
	 		{
	 		alert ('PIN non valido');
	 		return false;		
	 		}
		msg_conferma = 'Dopo il controllo del PIN\nverranno verificati ' + selected + ' destinatari.\n\nConfermi?'
		}
	else
		{
		msg_conferma = 'Verranno ora verificati ' + selected + ' destinatari.\n\nConfermi?'
		}
	// Chiede conferma
	if (confirm (msg_conferma))
		{
		f.action.value = 'send';
		return true;
		}
 	return false;
 	}

 function send_single_mnc(sicurezza)
 	{
	// Singola verifica MNC
	var msg_conferma;
	var f = form_contatti;

	// Check n. telefono
  	if (f.tel.value == '' || isblank (f.tel.value))
 		{
 		alert ('Manca il numero di telefono');
 		return false;		
 		}
  	if (isnumber (f.tel.value) == false)
 		{
 		alert ('Attenzione: numero di telefono non valido');
 		return false;		
 		}
	
	// Controlla il PIN se è abilitato
	if (sicurezza == 1)
		{
	 	if (f.pin.value == '' || isblank (f.pin.value))
	 		{
	 		alert ('Inserisci il PIN');
	 		return false;		
	 		}
	 	if (!isnumber (f.pin.value))
	 		{
	 		alert ('PIN non valido');
	 		return false;		
	 		}
		msg_conferma = 'Dopo il controllo del PIN\nverra\' verificato il destinatario.\n\nConfermi?'
		}
	else
		msg_conferma = 'Verra\' ora verificato il destinatario.\n\nConfermi?'
	
	// Chiede conferma
	if (confirm (msg_conferma)) return true;
 	return false;
 	}

 function send_single_msg(sicurezza)
 	{
	var msg_conferma;
	var f = form_contatti;

	// Check n. telefono
  	if (f.tel.value == '' || isblank (f.tel.value))
 		{
 		alert ('Manca il numero di telefono');
 		return false;		
 		}
  	if (isnumber (f.tel.value) == false)
 		{
 		alert ('Attenzione: numero di telefono non valido');
 		return false;		
 		}
	// Check testo messaggio se <> 0
 	if (f.testo_messaggio.value == '' || isblank (f.testo_messaggio.value))
 		{
 		alert ('Inserisci il testo del messaggio');
 		return false;		
 		}
 	if (f.testo_messaggio.value.length > 160)
 		{
 		var resto = f.testo_messaggio.value.length % 160;
 		var n_sms = ((f.testo_messaggio.value.length - resto) / 160) + 1;
		if (!confirm ('Il messaggio e\' lungo ' + f.testo_messaggio.value.length + ' caratteri.\nVerranno inviati ' + n_sms + ' SMS per ogni destinatario.\n\nConfermi?'))
			{
			return false;
			}
 		}
	// Controllo se nel testo esiste un nome di mese per esteso.
	// Suggerisce l'uso di riferimenti a date nel formato gg/mm/aaaa
	// Usa la funzione 'search' con una regular expression per una ricerca case insensitive
	if (f.testo_messaggio.value.search(/gennaio/i) > 0 || 
		f.testo_messaggio.value.search(/febbraio/i) > 0 ||
		f.testo_messaggio.value.search(/marzo/i) > 0 ||
		f.testo_messaggio.value.search(/aprile/i) > 0 ||
		f.testo_messaggio.value.search(/maggio/i) > 0 ||
		f.testo_messaggio.value.search(/giugno/i) > 0 ||
		f.testo_messaggio.value.search(/luglio/i) > 0 ||
		f.testo_messaggio.value.search(/agosto/i) > 0 ||
		f.testo_messaggio.value.search(/settembre/i) > 0 ||
		f.testo_messaggio.value.search(/ottobre/i) > 0 ||
		f.testo_messaggio.value.search(/novembre/i) > 0 ||
		f.testo_messaggio.value.search(/dicembre/i) > 0)
		{
		if (confirm ('Il messaggio contiene il nome di un mese per esteso\ne potrebbe essere cestinato dai filtri anti-spam.\nSi invita a modificare il testo inserendo le date\nnella forma gg/mm/aaaa per non incorrere in problemi.\n\nRitornare al testo del messaggio per la modifica suggerita?'))
			{
			return false;
			}
		}
	
	// Controllo flag RR (Ricevuta di Ritorno)
	if (f.rr.checked == true)
		{
		if (!confirm ('E\' stata richiesta la Ricevuta di Ritorno.\nVerranno addebitati il doppio degli SMS in Qualità Standard\noppure 1,5 volte gli SMS in Alta Qualità.\n\nConfermi?'))
			{
			return false;
			}
		}
	// Controlla il PIN se è abilitato
	if (sicurezza == 1)
		{
	 	if (f.pin.value == '' || isblank (f.pin.value))
	 		{
	 		alert ('Inserisci il PIN');
	 		return false;		
	 		}
	 	if (!isnumber (f.pin.value))
	 		{
	 		alert ('PIN non valido');
	 		return false;		
	 		}
		msg_conferma = 'Dopo il controllo del PIN\nverra\' inviato l\'SMS richiesto.\n\nConfermi?'
		}
	else
		msg_conferma = 'Verra\' ora inviato l\'SMS richiesto.\n\nConfermi?'
	
	// Chiede conferma
	if (confirm (msg_conferma)) return true;
 	return false;
 	}

 function set_network (state)
	{
	var s;
	
	if (state == 4)
		{
		// Stato=4: Richiesta di sconnessione
		s = "Attenzione!\n";
		s += "Tutti i contatti verranno definitivamente rimossi dal gruppo Mercurio NET\n";
		s += "Tutte le pagine di reportistica non saranno più accessibili\n";
		s += "Tutti gli altri aderenti alla rete verranno informati dell'uscita\n\n";
		s += "Confermi l'uscita dalla rete Mercurio NET?";
		}
	else
		{
		// Stato=2: Richiesta di adesione
		s = "Attenzione!\n"
		s += "Assicurati di aver letto l'informativa\n\n"
		s += "Confermi l'adesione alla rete Mercurio NET?";
		}
	if (confirm (s))
		{
		return true;
		}
	return false;
 	}
 
function set_page_size (element)
 	{
	var form = element.form;

 	// N. record pagina contatti
 	form.action.value = 'filter';
 	form.submit ();
 	}
 
 function set_page (element,pages)
 	{
 	// N. pagina - pagina contatti
 	var pname;
	var form = element.form;
	var pg;
	var browser;

	// Nasconde tutte le pagine
 	for(var i = 1; i <= pages; i++)
 		{
 		pname = 'page' + i;
		pg = document.getElementById(pname);
		
	 	pg.style.visibility = 'hidden';
 		pg.style.display = 'none';
 		}
	// Visualizza la pagina selezionata
	pname = 'page' + form.page.options[form.page.selectedIndex].value;
	pg = document.getElementById(pname);

 	pg.style.visibility = 'visible';
 	
 	// In base al tipo di browser, usa l'attributo giusto
	browser = detect_browser ();
	if (browser == 'ie')
	 	pg.style.display = 'inline';
 	else
	 	pg.style.display = 'inline-table';
	}
 
 function show_remaining(element) 
 	{
 	var LIMIT = 160;
 	var maxlength;

// 	var last;
	// Replacement delle lettere accentate
//	last = element.value[element.value.length-1];

	// Codifica simbolo Euro
	// In UTF-8 viene trasformato nella sequenza E2 82 AC
	// Sul cellulare arriva come EUR: allora tanto vale trasformarlo subito e considerare 3 caratteri
	// old:	if (last.charCodeAt(0).toString(16) == '20ac')
	// Trasforma € in E!
	// Controlla se nella riga è stato inserito un € 
	// (in qualsiasi posizione, non necessariamente nell'ultima)
	if (element.value.indexOf('€') != -1)
		{
		// NB: il replacement sposta il cursore a fine riga
		//     perchè il valore del campo viene reinserito
		// element.value = element.value.replace('\u20ac',"E");
		element.value = element.value.replace('€',"E");
		}

/* 	var last;
	// Replacement delle lettere accentate
	last = element.value[element.value.length-1];
	if (last == 'à')
		{
		element.value = element.value.replace("à","a'");
		element.value.length++;
		}
*/

	maxlength = LIMIT * form_contatti.numero_sms.value;
	form_contatti.rimanenti.value = maxlength - element.value.length;

	if (form_contatti.rimanenti.value < 0)
		{
		form_contatti.numero_sms.value++;
		maxlength = LIMIT * form_contatti.numero_sms.value;
		form_contatti.rimanenti.value = maxlength - element.value.length;
		//form_contatti.totale_sms.value = form_contatti.numero_sms.value * form_contatti.n_destinatari.value;
		}
	else if (form_contatti.rimanenti.value >= LIMIT && form_contatti.numero_sms.value > 1)
		{
		form_contatti.numero_sms.value--;
		maxlength = LIMIT * form_contatti.numero_sms.value;
		form_contatti.rimanenti.value = maxlength - element.value.length;
		//form_contatti.totale_sms.value = form_contatti.numero_sms.value * form_contatti.n_destinatari.value;
		}
	}

 function sort(f,order)
 	{
	// --- 5/10/2011 --- Introdotto ordinamento
	f.order.value = order;
	f.action.value = 'filter';
	f.submit ();
 	}

 function svuota_prenotazione ()
 	{
 	form_prenota.contatto.value = "";
 	form_prenota.tel.value = "";
 	form_prenota.titolo.value = "";
 	form_prenota.id_cont.value = "";
	document.getElementById("contatto").readOnly = false;
	document.getElementById("tel").readOnly = false;
 	}
 	
 function validate_email (field)
	{
	// Verifica almeno la presenza di @ e .
	with (field)
		{
		apos = value.indexOf ("@");
		dotpos = value.lastIndexOf (".");
		if (apos < 1 || dotpos-apos < 2) 
			return false;
		else 
			return true;
		}
	}

 function verify(f)
 	{
	// return: false, non invia il modulo. true: tutto OK
 	if (f.nome.value == '' || isblank (f.nome.value))
 		{
 		alert ('Inserisci un nome di gruppo nella casella');
 		return false;		
 		}
 	else
 		{
		return true;
		}
 	//location.pathname = '/cdm/newsletter/add_unsub.php?action=add_email';
 	}
 	
 function verify_account(f)
 	{
	// return: false, non invia il modulo. true: tutto OK
 	if (f.username.value == '' || isblank (f.username.value))
 		{
 		alert ('Manca lo username');
 		return false;		
 		}
 	if (f.username.value.length < 6)
 		{
 		alert ('Lo username deve avere almeno 6 caratteri.');
		return false; 		
 		}
 	if (f.password.value == '' || isblank (f.password.value) || f.password2.value == '' || isblank (f.password2.value))
 		{
 		alert ('Manca la password');
 		return false;		
 		}
	if (f.password.value != f.password2.value)
 		{
 		alert ('Le passwords inserite non coincidono');
 		return false;		
 		}
 	if (f.password.value.length < 8)
 		{
 		alert ('La password deve avere almeno 8 caratteri.');
		return false; 		
 		}
	return true;
 	}

 function verify_dest(f)
 	{
	// return: false, non invia il modulo. true: tutto OK
 	if (f.cognome.value == '' || isblank (f.cognome.value))
 		{
 		alert ('Manca il cognome del destinatario');
 		return false;		
 		}
 	if (f.nome.value == '' || isblank (f.nome.value))
 		{
 		alert ('Manca il nome del destinatario');
 		return false;		
 		}
 	if (f.n_tel.value == '' || isblank (f.nome.value))
 		{
 		alert ('Manca il numero di telefono del destinatario');
 		return false;		
 		}
	if (!isnumber (f.n_tel.value))
		{
 		alert ('Numero di telefono non valido');
 		return false;		
		}
	return true;
 	}
 	
 function verify_group(f)
 	{
	// return: false, non invia il modulo. true: tutto OK
 	if (f.gruppo.value == '-- Lista Gruppi --')
 		{
 		alert ('Scegli un gruppo dall\'elenco');
 		return false;		
 		}
 	else
 		{
		return true;
		}
 	}
 	
 function verify_group_import(f)
 	{
 	var s = f.grp_import.value;
 	
	// return: false, non invia il modulo. true: tutto OK
 	if (s == '' || isblank (s))
 		{
 		alert ('Inserisci il nome di un file da importare');
 		return false;		
 		}
 	if (s.charAt(s.length-1) != 'v' && s.charAt(s.length-2) != 's' && s.charAt(s.length-3) != 'c')
 		{
 		alert ('Il file scelto non è un file .csv');
 		return false;		
 		}
	return true;
 	}
 	
 function verify_group_on_page(field,_page)
 	{
	if (field.options[field.selectedIndex].text == '-- Lista Gruppi --')
 		{
 		alert ('Scegli un gruppo dall\'elenco');
 		}
 	else
 		{
		location.replace (_page + '?id_gruppo=' + field.options[field.selectedIndex].value);
		}
 	}
 	
 function verify_new(f,client_type)
 	{
 	var selected = 0;
 
 	// Controllo nuovo contatto
 	if (f.cognome.value == '' || isblank (f.cognome.value))
 		{
 		alert ('Manca il cognome');
 		return false;		
 		}
 	if (f.nome.value == '' || isblank (f.nome.value))
 		{
 		alert ('Manca il nome');
 		return false;		
 		}
 	if (f.n_tel.value == '' || isblank (f.n_tel.value))
 		{
 		alert ('Manca il numero di telefono');
 		return false;		
 		}
  	if (isnumber (f.n_tel.value) == false)
 		{
 		alert ('Attenzione: numero di telefono non valido');
 		return false;		
 		}
	
//	if (client_type != "scuola")
//		{
		// Check se almeno un gruppo è selezionato
		f.selected_grp.value = '';
		if (f.sel_gruppo.length == undefined)
			{
			// C'è un solo gruppo, quindi length è undefined
			if (f.sel_gruppo.checked == true)
				{
				// Compila anche l'elenco degli ID dei gruppi
				f.selected_grp.value += (f.id_gruppo.value + '-');
				selected++;
				}
			}
		else
			{
		 	for(var i = 0; i < f.sel_gruppo.length; i++)
				{
				if (f.sel_gruppo[i].checked == true)
					{
					// Compila anche l'elenco degli ID dei gruppi
					f.selected_grp.value += (f.id_gruppo[i].value + '-');
					
					selected++;
					}
				}
			}
		if (selected == 0)
			{
			alert ("Seleziona almeno un gruppo");
			return false;
			}
/*		}
	else
		{
		f.selected_grp.value = f.sel_gruppo.value + '-';
		}
*/
	return true;
 	}	

 function verify_password(f)
 	{
	// return: false, non invia il modulo. true: tutto OK
 	if (f.password.value == '' || isblank (f.password.value) || f.password2.value == '' || isblank (f.password2.value))
 		{
 		alert ('Manca la password');
 		return false;		
 		}
	if (f.password.value != f.password2.value)
 		{
 		alert ('Le passwords inserite non coincidono');
 		return false;		
 		}
 	if (f.password.value.length < 8)
 		{
 		alert ('La password deve avere almeno 8 caratteri.');
		return false; 		
 		}
	return true;
 	}

 function verify_prenotazione(f)
 	{
 	if (f.contatto.value == '' || isblank (f.contatto.value))
 		{
 		alert ('Manca il riferimento del contatto');
 		return false;		
 		}
 	if (f.tel.value == '' || isblank (f.tel.value))
 		{
 		alert ('Manca il numero di telefono del contatto');
 		return false;		
 		}
	if (!isnumber (f.tel.value))
		{
 		alert ('Numero di telefono non valido');
 		return false;		
		}
 	if (f.titolo.value == '' || isblank (f.titolo.value))
 		{
 		alert ('Manca il titolo del libro');
 		return false;		
 		}
	return true;
 	}
 	
 function verify_robot(f)
 	{
	// return: false, non invia il modulo. true: tutto OK
	// Descrizione e testo del messaggio non devono essere vuoti
 	if (f.descrizione.value == '' || isblank (f.descrizione.value))
 		{
 		alert ('Inserisci la descrizione del messaggio automatico\r\n(es. Festa patronale)');
 		return false;		
 		}
 	if (f.testo.value == '' || isblank (f.testo.value))
 		{
 		alert ('Inserisci il testo del messaggio SMS da inviare');
 		return false;		
 		}
	return true;
 	}
 	
 function verify_subscribe(f)
 	{
 	if (f.nome.value == '' || isblank (f.nome.value))
 		{
 		alert ('Manca la ragione sociale');
 		return false;		
 		}
 	if (f.piva.value == '' || isblank (f.piva.value))
 		{
 		alert ('Manca la Partita IVA (o il Codice Fiscale)');
 		return false;		
 		}
  	if (f.indirizzo.value == '' || isblank (f.indirizzo.value))
 		{
 		alert ('Manca l\'indirizzo');
 		return false;		
 		}
  	if (f.citta.value == '' || isblank (f.citta.value))
 		{
 		alert ('Manca la città');
 		return false;		
 		}
  	if (f.tel.value == '' || isblank (f.tel.value))
 		{
 		alert ('Manca il numero di telefono');
 		return false;		
 		}
  	if (isnumber (f.tel.value) == false)
 		{
 		alert ('Attenzione: numero di telefono non valido');
 		return false;		
 		}
  	if (f.e_mail.value == '' || isblank (f.e_mail.value))
 		{
 		alert ('Manca l\'indirizzo e-mail');
 		return false;		
 		}
  	if (validate_email (f.e_mail) == false)
 		{
 		alert ('Attenzione: indirizzo e-mail non valido');
 		return false;		
 		}
  	if (f.referente.value == '' || isblank (f.referente.value))
 		{
 		alert ('Manca il referente');
 		return false;		
 		}
  	if (f.privacy[0].checked == false)
 		{
 		alert ('L\'accettazione della liberatoria sulla privacy è obbligatoria');
 		return false;		
 		}

	var s;
	s = "Riepilogo dati:\n\n";	
	s += "Ragione sociale: " + f.nome.value + "\n";
	s += "Partita IVA: " + f.piva.value + "\n";
	s += "Indirizzo: " + f.indirizzo.value + " " + f.citta.value + "\n";
	s += "Telefono: " + f.tel.value + "\n";
	s += "E-mail: " + f.e_mail.value + "\n";
	s += "Referente: " + f.referente.value + "\n";
	s += "Tipo cliente: " + f.tipo.value + "\n";
	s += "\nConfermi l'iscrizione?";
	if (confirm (s))
		{
		return true;
		}
	return false;
 	}
 	
  function verify_user_account(f)
 	{
	// return: false, non invia il modulo. true: tutto OK
 	if (f.password.value == '' || isblank (f.password.value) || f.password2.value == '' || isblank (f.password2.value))
 		{
 		alert ('Manca la password');
 		return false;		
 		}
	if (f.password.value != f.password2.value)
 		{
 		alert ('Le passwords inserite non coincidono');
 		return false;		
 		}
 	if (f.password.value.length < 8)
 		{
 		alert ('La password deve avere almeno 8 caratteri.');
		return false; 		
 		}
	// Controlla il mittente per messaggi HQ
 	if (f.mittente.value.length > 11)
 		{
 		alert ('Il mittente non deve avere più di 11 caratteri.');
		return false; 		
 		}
	return true;
 	}

// Effetto testo flash
function colore1()
	{
	codice='<font color=red><b>Promozione fino al 30 Aprile 2009</b></font>'
	if(document.all)
		{
		document.all('testo').innerHTML=codice;
		document.all('testo2').innerHTML=codice;
		}
	else if(document.getElementById)
		{
		document.getElementById("testo").innerHTML = codice
		document.getElementById("testo2").innerHTML = codice
		}
	attesa = window.setTimeout("colore2()",500);
	}


function colore2()
	{
	codice='<font color=darkorange><b>Promozione fino al 30 Aprile 2009</b></font>'
	if(document.all)
		{
		document.all('testo').innerHTML=codice;
		document.all('testo2').innerHTML=codice;
		}
	else if(document.getElementById)
		{
		document.getElementById("testo").innerHTML = codice
		document.getElementById("testo2").innerHTML = codice
		}
	attesa = window.setTimeout("colore1()",500)
	}


function avvia()
	{
     attesa = window.setTimeout("colore1()",100);
	}

  	

