// ArtPrint Web Application
// ========================
//
// [ FormCheck JavaScript ]
// Script per il controllo dei dati inseriti nei form preventivi
//
// Versione: 1.05 [05.12.2008]
// Autore: Enrico Alborali
// Copyright: ©2007-2009 ArtPrint s.a.s.

// Inizializzo le variabli globali
max_fogli_punto_metallico	= 36;
min_fogli_brossura_fresata	= 24;

/// Funzione per ottenere il link al template formato carta
/// \author: Enrico Alborali
/// \version: 1.01 [09.06.2009]
function apGetFormatTemplateLink( tag )
{
	var checked = true;
	
	var formato = document.getElementById(tag);
	var link = document.getElementById('format_link');
	var uri = "";
	
	if (formato != null && link != null)
	{
		valore_formato = formato.options[formato.selectedIndex].value;
		valore_nome = formato.options[formato.selectedIndex].innerHTML;
		
		valore_nome = valore_nome.replace('&nbsp;&nbsp;&nbsp;&nbsp;','');
		valore_nome = valore_nome.replace('&nbsp;&nbsp;&nbsp;&nbsp;','');
		valore_nome = valore_nome.replace('&nbsp;&nbsp;&nbsp;','');
		valore_nome = valore_nome.replace('&nbsp;&nbsp;&nbsp;','');
		valore_nome = valore_nome.replace('&nbsp;&nbsp;','');
		valore_nome = valore_nome.replace('&nbsp;&nbsp;','');
		valore_nome = valore_nome.replace('&nbsp;','');
		valore_nome = valore_nome.replace('&nbsp;','');
		
		uri = 'download/fto_' + valore_nome + '_' + valore_formato + '.zip';

		//alert(uri);
		
		link.href = uri;
	}
	
	return checked;
}

/// Funzione per controllare le incongruenze dei campi form ReC
/// \author: Enrico Alborali
/// \version: 1.05 [11.04.2009]
function apReCFormCheck()
{
	var formato			= document.getElementById('formato_chiuso');
	var rilegatura			= document.getElementById('copertina_rilegatura');
	var facciate			= document.getElementById('facciate_totali');
	var max_facciate		= document.getElementById('max_faces');
	var fronte_retro		= document.getElementById('fronte_retro');
	var copertina_tipo		= document.getElementById('copertina_tipo');
	
	var copertina_carta		= document.getElementById('copertina_carta');
	var copertina_grammatura	= document.getElementById('copertina_grammatura');
	
	var msg				= "";
	var checked			= true;
	
	var force_copertina_rigida	= false;
	var force_nessuna_rilegatura	= false;
	var force_brossura_fresata	= false;
	
	if (formato != null && rilegatura != null && facciate != null)
	{
		valore_formato = formato.options[formato.selectedIndex].value;
		valore_rilegatura = rilegatura.options[rilegatura.selectedIndex].value;
		valore_facciate = facciate.value;
		valore_max_facciate = max_facciate.value;
		valore_fronte_retro = fronte_retro.value;
		valore_max_facciate *= valore_fronte_retro;
		valore_min_facciate_brossura_fresata = min_fogli_brossura_fresata*valore_fronte_retro;
		valore_max_facciate_punto_metallico = max_fogli_punto_metallico*valore_fronte_retro;
		
		// --- Check "brossura frestata" (lavorazione 7) ---
		if (valore_rilegatura == 7)
		{	
			if ( valore_facciate != "" && valore_facciate < valore_min_facciate_brossura_fresata )
			{
				msg = msg + "Non \u00E8 possibile eseguire una rilegatura a brossura di qualit\u00E1 con meno di "+ valore_min_facciate_brossura_fresata +" facciate.\n";
				checked = false;
				force_nessuna_rilegatura = true;
			}
			if ( valore_facciate != "" && valore_facciate > valore_max_facciate )
			{
				msg = msg + "Non \u00E8 possibile eseguire con questo tipo di carta una rilegatura a brossura di qualit\u00E1 con pi\u00FA di " + valore_max_facciate + " facciate.\n";
				checked = false;
				force_nessuna_rilegatura = true;
			}
			if (valore_formato == 3 || valore_formato == 2) // 30x42 o 30x21 [orrizontale]
			{
				msg = msg + "Non \u00E8 possibile eseguire la rilegatura a brossura con questo formato.\n";
				checked = false;
				force_nessuna_rilegatura = true;
			}
			if (checked == true)
			{
				force_copertina_rigida = true;
			}
		}
		// --- Check "spirale metallica" (lavorazione 8) ---
		else if (valore_rilegatura == 8)
		{
			if ( valore_facciate != "" && valore_facciate > valore_max_facciate )
			{
				msg = msg + "Non \u00E8 possibile eseguire con questo tipo di carta una rilegatura a spirale metallica di qualit\u00E1 con pi\u00FA di " + valore_max_facciate + " facciate.\n";
				checked = false;
				force_nessuna_rilegatura = true;
			}
		}
		// --- Check "punto metallico" (lavorazione 9) ---
		else if (valore_rilegatura == 9)
		{
			if (valore_facciate != "" && valore_facciate > valore_max_facciate_punto_metallico)
			{
				msg = msg + "Non \u00E8 possibile eseguire una rilegatura a punto metallico di qualit\u00E1 con pi\u00FA di " + valore_max_facciate_punto_metallico + " facciate.\n";
				checked = false;
				/*
				force_brossura_fresata = true;
				force_copertina_rigida = true;
				*/
				force_nessuna_rilegatura = true;
			}
			if (valore_formato == 3 || valore_formato == 2) // 30x42 o 30x21 [orrizontale]
			{
				msg = msg + "Non \u00E8 possibile eseguire la rilegatura a punto metallico con questo formato.\n";
				checked = false;
				/*
				force_brossura_fresata = true;
				force_copertina_rigida = true;
				*/
				force_nessuna_rilegatura = true;
			}	
		}
		
		if (msg != "")
		{
			alert("ATTENZIONE:\n" + msg);
		}
		if (force_copertina_rigida == true)
		{
			copertina_tipo.selectedIndex = 0;
			copertina_tipo.disabled = true;
			copertina_carta.disabled = false;
			copertina_grammatura.disabled = false;
			//apAJAXGetHardCover();
			apAJAXUpdateCoverData();
		}
		else
		{
			//apAJAXGetCovers();
			copertina_tipo.disabled = false;
		}
		if (force_nessuna_rilegatura == true)
		{
			rilegatura.selectedIndex = 0;
			//apAJAXGetSpiralBinding();
		}
		else if (force_brossura_fresata == true)
		{
			rilegatura.selectedIndex = 1;
			//apAJAXGetPaperBackBindings();
		}
		/*
		else
		{
			apAJAXGetBindings();
		}
		*/
	}

	return checked;
}

/// Funzione per controllare le incongruenze dei campi form LeR
/// \author: Enrico Alborali
/// \version: 1.05 [11.04.2009]
function apLeRFormCheck()
{
	var formato			= document.getElementById('formato_chiuso');
	var rilegatura			= document.getElementById('copertina_rilegatura');
	var facciate			= document.getElementById('facciate_totali');
	var max_facciate		= document.getElementById('max_faces');
	var fronte_retro		= document.getElementById('fronte_retro');
	var copertina_tipo		= document.getElementById('copertina_tipo');
	
	var copertina_carta		= document.getElementById('copertina_carta');
	var copertina_grammatura	= document.getElementById('copertina_grammatura');
	
	var msg				= "";
	var checked			= true;
	
	var force_copertina_rigida	= false;
	var force_nessuna_rilegatura	= false;
	var force_brossura_fresata	= false;
	
	if (formato != null && rilegatura != null && facciate != null)
	{
		valore_formato = formato.options[formato.selectedIndex].value;
		valore_rilegatura = rilegatura.options[rilegatura.selectedIndex].value;
		valore_facciate = facciate.value;
		valore_max_facciate = max_facciate.value;
		valore_fronte_retro = fronte_retro.value;
		valore_max_facciate *= valore_fronte_retro;
		valore_min_facciate_brossura_fresata = min_fogli_brossura_fresata*valore_fronte_retro;
		valore_max_facciate_punto_metallico = max_fogli_punto_metallico*valore_fronte_retro;
		
		// --- Check "brossura frestata" (lavorazione 7) ---
		if (valore_rilegatura == 7)
		{	
			if ( valore_facciate != "" && valore_facciate < valore_min_facciate_brossura_fresata )
			{
				msg = msg + "Non \u00E8 possibile eseguire una rilegatura a brossura di qualit\u00E1 con meno di "+ valore_min_facciate_brossura_fresata +" facciate.\n";
				checked = false;
				force_nessuna_rilegatura = true;
			}
			if ( valore_facciate != "" && valore_facciate > valore_max_facciate )
			{
				msg = msg + "Non \u00E8 possibile eseguire con questo tipo di carta una rilegatura a brossura di qualit\u00E1 con pi\u00FA di " + valore_max_facciate + " facciate.\n";
				checked = false;
				force_nessuna_rilegatura = true;
			}
			if (valore_formato == 13 || valore_formato == 12) // 30x42 o 30x21 [orrizontale]
			{
				msg = msg + "Non \u00E8 possibile eseguire la rilegatura a brossura con questo formato.\n";
				checked = false;
				force_nessuna_rilegatura = true;
			}
			if (checked == true)
			{
				force_copertina_rigida = true;
			}
		}
		// --- Check "spirale metallica" (lavorazione 8) ---
		else if (valore_rilegatura == 8)
		{
			if ( valore_facciate != "" && valore_facciate > valore_max_facciate )
			{
				msg = msg + "Non \u00E8 possibile eseguire con questo tipo di carta una rilegatura a spirale metallica di qualit\u00E1 con pi\u00FA di " + valore_max_facciate + " facciate.\n";
				checked = false;
				force_nessuna_rilegatura = true;
			}
		}
		// --- Check "punto metallico" (lavorazione 9) ---
		else if (valore_rilegatura == 9)
		{
			if (valore_facciate != "" && valore_facciate > valore_max_facciate_punto_metallico)
			{
				msg = msg + "Non \u00E8 possibile eseguire una rilegatura a punto metallico di qualit\u00E1 con pi\u00FA di " + valore_max_facciate_punto_metallico + " facciate.\n";
				checked = false;
				/*
				force_brossura_fresata = true;
				force_copertina_rigida = true;
				*/
				force_nessuna_rilegatura = true;
			}
			if (valore_formato == 13 || valore_formato == 12) // 30x42 o 30x21 [orrizontale]
			{
				msg = msg + "Non \u00E8 possibile eseguire la rilegatura a punto metallico con questo formato.\n";
				checked = false;
				/*
				force_brossura_fresata = true;
				force_copertina_rigida = true;
				*/
				force_nessuna_rilegatura = true;
			}	
		}
		
		if (msg != "")
		{
			alert("ATTENZIONE:\n" + msg);
		}
		if (force_copertina_rigida == true)
		{
			copertina_tipo.selectedIndex = 0;
			copertina_tipo.disabled = true;
			copertina_carta.disabled = false;
			copertina_grammatura.disabled = false;
			//apAJAXGetHardCover();
			apAJAXUpdateCoverData();
		}
		else
		{
			//apAJAXGetCovers();
			copertina_tipo.disabled = false;
		}
		if (force_nessuna_rilegatura == true)
		{
			rilegatura.selectedIndex = 0;
			//apAJAXGetSpiralBinding();
		}
		else if (force_brossura_fresata == true)
		{
			rilegatura.selectedIndex = 1;
			//apAJAXGetPaperBackBindings();
		}
		/*
		else
		{
			apAJAXGetBindings();
		}
		*/
	}

	return checked;
}

/// Funzione per controllare le incongruenze dei campi form TiR
/// \author: Enrico Alborali
/// \version: 1.00 [12.05.2008]
function apTiRFormCheck()
{
	var formato	= document.getElementById('formato');
	var piegatura	= document.getElementById('piegatura');
	var msg		= "";
	var checked	= true;
	
	if (formato != null && piegatura != null)
	{
		
		valore_formato = formato.options[formato.selectedIndex].value;
		valore_piegatura = piegatura.options[piegatura.selectedIndex].value;
		
		// --- Check "piegatura" ---
		if (valore_formato == 17) // 32cm x 45cm = 17
		{
			if (valore_piegatura != 20)
			{
				msg = msg + "Non \u00E8 possibile eseguire la piega con questo formato.\n";
				checked = false;
				piegatura.selectedIndex = 0;
			}
		}
		if (msg != "")
		{
			alert("ATTENZIONE: " + msg);
		}
	}

	return checked;
}

/// Funzione per formattare correttamente un campo float
/// \author: Enrico Alborali
/// \version: 1.01 [24.06.2008]
function apFloatFormat( oggetto )
{
	if (oggetto != null)
	{
		if (oggetto.value != null)
		{
			oggetto.value = oggetto.value.replace(",",".");
		}
	}
}

/// Funzione per formattare correttamente un campo float
/// \author: Enrico Alborali
/// \version: 1.01 [25.07.2008]
function apIntFormat( oggetto )
{
	if (oggetto != null)
	{
		if (oggetto.value != null)
		{
			int_value = parseInt(oggetto.value);
			oggetto.value = int_value;
		}
	}
}

/// Funzione per controllare le incongruenze dei campi form EA
/// \author: Enrico Alborali
/// \version: 1.02 [23.06.2008]
function apEAFormCheck()
{
	var base		= document.getElementById('base');
	var altezza		= document.getElementById('altezza');
	var materiale_larghezza = document.getElementById('materiale_larghezza');
	var materiale_altezza	= document.getElementById('materiale_altezza');
	var msg			= "";
	var checked		= true;
	
	if (base != null && altezza != null && materiale_larghezza != null && materiale_altezza != null
		&& base != "" && altezza != "" && materiale_larghezza != "" && materiale_altezza != ""
		&& parseFloat(base.value) > 0 && parseFloat(altezza.value) > 0
	 	&& parseFloat(materiale_larghezza.value) > 0 && parseFloat(materiale_altezza.value) > 0)
	{
		var max_x,max_y,dim_x,dim_y;
		
		if (base.value < altezza.value)
		{
			dim_x = base.value;
			dim_y = altezza.value;
		}
		else
		{
			dim_x = altezza.value;
			dim_y = base.value;
		}
		
		/*
		if (materiale_larghezza.value < materiale_altezza.value)
		{
			max_x = materiale_larghezza.value;
			max_y = materiale_altezza.value;
		}
		else
		{
			max_x = materiale_altezza.value;
			max_y = materiale_larghezza.value;
		}
		*/
		// Massimo formato 32 x 45 cm
		max_x = 32;
		max_y = 45;
		
		//alert("DEBUG: maxx=" + max_x + "maxy=" + max_y + "dimx=" + dim_x + "dimy=" + dim_y);
		
		if (dim_x > max_x || dim_y > max_y)
		{
			msg = msg + "il formato massimo consentito \u00E8 "+max_x+"cm x "+max_y+"cm - utilizza \"Adesivi & Banners\" da \"Stampa grande formato\" per stampe di dimensioni superiori.";
			checked = false;
			// Azzero i campi
			base.value = 0;
			altezza.value = 0;
		}
		if (msg != "")
		{
			alert("ATTENZIONE: " + msg);
		}
	}

	return checked;
}

/// Funzione per controllare le incongruenze dei campi form AQ
/// \author: Enrico Alborali
/// \version: 1.01 [14.07.2008]
function apAQFormCheck()
{
	var base		= document.getElementById('base');
	var altezza		= document.getElementById('altezza');
	var materiale_larghezza = document.getElementById('materiale_larghezza');
	var materiale_altezza	= document.getElementById('materiale_altezza');
	var msg			= "";
	var checked		= true;
	
	if (base != null && altezza != null && materiale_larghezza != null && materiale_altezza != null
		&& base != "" && altezza != "" && materiale_larghezza != "" && materiale_altezza != ""
		&& parseFloat(base.value) > 0 && parseFloat(altezza.value) > 0
	 	&& parseFloat(materiale_larghezza.value) > 0 && parseFloat(materiale_altezza.value) > 0)
	{
		var max_x,max_y,dim_x,dim_y;
		
		dim_x = parseFloat(base.value);
		dim_y = parseFloat(altezza.value);
		
		if (dim_y < dim_x)
		{
			dim_a = dim_x;
			dim_x = dim_y;
			dim_y = dim_a;
		}

		if (parseFloat(materiale_larghezza.value) < parseFloat(materiale_altezza.value))
		{
			max_x = Math.floor(materiale_larghezza.value*100);
			max_y = Math.floor(materiale_altezza.value*100);
		}
		else
		{
			max_x = Math.floor(materiale_altezza.value*100);
			max_y = Math.floor(materiale_larghezza.value*100);
		}
		
		//alert("DEBUG: maxx=" + max_x + " maxy=" + max_y + " dimx=" + dim_x + " dimy=" + dim_y);
		
		// Controllo sul formato inserito nel form "Alta Qualità"
		// originale: if (dim_x > (max_x-5) || dim_y > max_y)
		if (dim_x > (max_x+32) || dim_y > max_y)
		{
			//msg = msg + "il formato massimo consentito e' "+(max_x-5)+" cm in larghezza.";
			msg = msg + "il formato massimo consentito \u00E8 "+(max_x+32)+" cm in larghezza.";
			checked = false;
			// Azzero i campi
			base.value = 0;
			altezza.value = 0;
		}
		if (msg != "")
		{
			alert("ATTENZIONE: " + msg);
		}
	}

	return checked;
}

/// Funzione per controllare le incongruenze dei campi form MeA
/// \author: Enrico Alborali
/// \version: 1.01 [14.07.2008]
function apMeAFormCheck()
{
	var formato		= document.getElementById('formato');
	var base		= document.getElementById('base');
	var altezza		= document.getElementById('altezza');
	var materiale_larghezza = document.getElementById('materiale_larghezza');
	var materiale_altezza	= document.getElementById('materiale_altezza');
	var msg			= "";
	var checked		= true;
	
	if (base != null && altezza != null && materiale_larghezza != null && materiale_altezza != null
			&& base != "" && altezza != "" && materiale_larghezza != "" && materiale_altezza != ""
			&& parseFloat(base.value) > 0 && parseFloat(altezza.value) > 0
		 	&& parseFloat(materiale_larghezza.value) > 0 && parseFloat(materiale_altezza.value) > 0)
	{
		var max_x,max_y,dim_x,dim_y;
		
		dim_x = parseFloat(base.value);
		dim_y = parseFloat(altezza.value);
		
		if (dim_y < dim_x)
		{
			dim_a = dim_x;
			dim_x = dim_y;
			dim_y = dim_a;
		}

		if (parseFloat(materiale_larghezza.value) < parseFloat(materiale_altezza.value))
		{
			max_x = Math.floor(materiale_larghezza.value*100);
			max_y = Math.floor(materiale_altezza.value*100);
		}
		else
		{
			max_x = Math.floor(materiale_altezza.value*100);
			max_y = Math.floor(materiale_larghezza.value*100);
		}
		
		//alert("DEBUG: maxx=" + max_x + " maxy=" + max_y + " dimx=" + dim_x + " dimy=" + dim_y);
		
		// Controllo sul formato inserito nel form "Manifesti e Affissioni"
		// originale: if (dim_x > (max_x-5) || dim_y > max_y)
		if (dim_x > (max_x+500) || dim_y > max_y)
		{
			//msg = msg + "il formato massimo consentito e' "+max_x+"cm x "+max_y+"cm.";
			msg = msg + "il formato massimo consentito \u00E8 "+(max_x+500)+" cm in larghezza.";

			checked = false;
			// Azzero i campi
			base.value = 0;
			altezza.value = 0;
		}
		if (msg != "")
		{
			alert("ATTENZIONE: " + msg);
		}
	}

	return checked;
}

/// Funzione per controllare le incongruenze dei campi form AeB
/// \author: Enrico Alborali
/// \version: 1.01 [06.08.2008]
function apAeBFormCheck()
{
	var base		= document.getElementById('base');
	var altezza		= document.getElementById('altezza');
	var materiale_larghezza	= document.getElementById('materiale_larghezza');
	var materiale_altezza	= document.getElementById('materiale_altezza');
	var occhielli		= document.getElementById('numero_occhielli');
	var msg			= "";
	var checked		= true;
	
	if (occhielli != null)
	{
		if (occhielli.value == null || isNaN(occhielli.value) || parseInt(occhielli.value) < 0)
		{
			occhielli.value = "0";
		}
	}
	
	if (base != null && altezza != null && materiale_larghezza != null && materiale_altezza != null
		&& base != "" && altezza != "" && materiale_larghezza != "" && materiale_altezza != ""
		&& parseFloat(base.value) > 0 && parseFloat(altezza.value) > 0
	 	&& parseFloat(materiale_larghezza.value) > 0 && parseFloat(materiale_altezza.value) > 0)
	{
		var max_x,max_y,dim_x,dim_y;
		
		dim_x = parseFloat(base.value);
		dim_y = parseFloat(altezza.value);
		
		if (dim_y < dim_x)
		{
			dim_a = dim_x;
			dim_x = dim_y;
			dim_y = dim_a;
		}

		if (parseFloat(materiale_larghezza.value) < parseFloat(materiale_altezza.value))
		{
			max_x = Math.floor(materiale_larghezza.value*100);
			max_y = Math.floor(materiale_altezza.value*100);
		}
		else
		{
			max_x = Math.floor(materiale_altezza.value*100);
			max_y = Math.floor(materiale_larghezza.value*100);
		}
		
		//alert("DEBUG: maxx=" + max_x + " maxy=" + max_y + " dimx=" + dim_x + " dimy=" + dim_y);
		
		//mod_max_x = max_x - 5;
		//if (dim_x > mod_max_x || dim_y > max_y)

		// Controllo sul formato inserito nel form "Adesivi e Banners"
		// originale: if (dim_x > (max_x-5) || dim_y > max_y)
		if (dim_x > (max_x+500) || dim_y > max_y)
		{
			//msg = msg + "il formato massimo consentito e' "+max_x+"cm x "+max_y+"cm.";
			msg = msg + "il formato massimo consentito \u00E8 "+(max_x+500)+" cm in larghezza.";
			checked = false;
			// Azzero i campi
			base.value = 0;
			altezza.value = 0;
		}
		if (msg != "")
		{
			alert("ATTENZIONE: " + msg);
		}
	}

	return checked;
}

/// Funzione per controllare le incongruenze dei campi form TiR BN
/// \author: Enrico Alborali
/// \version: 1.00 [12.05.2008]
function apTiRBNFormCheck()
{
	var formato	= document.getElementById('formato');
	var piegatura	= document.getElementById('piegatura');
	var msg		= "";
	var checked	= true;
	
	if (formato != null && piegatura != null)
	{
		
		valore_formato = formato.options[formato.selectedIndex].value;
		valore_piegatura = piegatura.options[piegatura.selectedIndex].value;
		
		// --- Check "piegatura" ---
		if (valore_formato == 26) // 32cm x 45cm = 26
		{
			if (valore_piegatura != 20)
			{
				msg = msg + "Non \u00E8 possibile eseguire la piega con questo formato.\n";
				checked = false;
				piegatura.selectedIndex = 0;
			}
		}
		if (msg != "")
		{
			alert("ATTENZIONE: " + msg);
		}
	}

	return checked;
}

/// Funzione per controllare i campi obbligatori e inoltrare il form ReC
/// \author: Enrico Alborali
/// \version: 1.00 [16.06.2008]
function apReCInputCheckAndSubmit()
{
	var copie	= document.getElementById('numero_copie');
	var facciate	= document.getElementById('facciate_totali');
	var file_stampa	= document.getElementById('file_stampa');
	var msg		= "Si prega di compilare i campi segnati in rosso&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;";
	var checked 	= false;
	
	if (copie != null && facciate != null && file_stampa != null)
	{
		checked = true;
		// --- Recupero i valori dei campi obbligatori ---
		value_copie	= copie.value;
		value_facciate	= facciate.value;
		value_file	= file_stampa.value;
		
		if (isNaN(value_copie))
		{
			copie.value = "";
			checked = false;
			copie.style.background='#cc0000';
		}
		else if (value_copie == null || value_copie == "" || parseInt(value_copie)<0)
		{
			checked = false;
			copie.style.background='#cc0000';
		}
		else
		{
			copie.style.background='#ffffff';
		}
		
		if (isNaN(value_facciate))
		{
			facciate.value = "";
			checked = false;
			facciate.style.background='#cc0000';
		}
		else if (value_facciate == null || value_facciate == "" || parseInt(value_facciate)<0)
		{
			checked = false;
			facciate.style.background='#cc0000';
		}
		else
		{
			facciate.style.background='#ffffff';
		}
		
		if (value_file == null || value_file == "")
		{
			checked = false;
			file_stampa.style.background='#cc0000';
		}
		else
		{
			file_stampa.style.background='#ffffff';
		}
		
		// --- Stampo/cancello messaggio di errore ---
		var span_errormsg_final = document.getElementById("inputerrormsg");
		if (checked)
		{
			span_errormsg_final.innerHTML = "&nbsp;";
		}
		else
		{
			span_errormsg_final.innerHTML = msg;
			span_errormsg_final.style.color = '#cc0000';
			span_errormsg_final.style.fontSize = '9pt';
			span_errormsg_final.style.fontWeight = 'bold';
		}
	}

	return checked;
}

/// Funzione per controllare i campi obbligatori e inoltrare il form TiR
/// \author: Enrico Alborali
/// \version: 1.00 [16.06.2008]
function apTiRInputCheckAndSubmit()
{
	var copie	= document.getElementById('numero_copie');
	var file_stampa	= document.getElementById('file_stampa');
	var msg		= "Si prega di compilare i campi segnati in rosso&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;";
	var checked 	= false;
	
	if (copie != null && file_stampa != null)
	{
		checked = true;
		// --- Recupero i valori dei campi obbligatori ---
		value_copie	= copie.value;
		value_file	= file_stampa.value;
		
		if (isNaN(value_copie))
		{
			copie.value = "";
			checked = false;
			copie.style.background='#cc0000';
		}
		else if (value_copie == null || value_copie == "" || parseInt(value_copie)<0)
		{
			checked = false;
			copie.style.background='#cc0000';
		}
		else
		{
			copie.style.background='#ffffff';
		}
		
		if (value_file == null || value_file == "")
		{
			checked = false;
			file_stampa.style.background='#cc0000';
		}
		else
		{
			file_stampa.style.background='#ffffff';
		}
		
		// --- Stampo/cancello messaggio di errore ---
		var span_errormsg_final = document.getElementById("inputerrormsg");
		if (checked)
		{
			span_errormsg_final.innerHTML = "&nbsp;";
		}
		else
		{
			span_errormsg_final.innerHTML = msg;
			span_errormsg_final.style.color = '#cc0000';
			span_errormsg_final.style.fontSize = '9pt';
			span_errormsg_final.style.fontWeight = 'bold';
		}
	}

	return checked;
}

/// Funzione per controllare i campi obbligatori e inoltrare il form EA
/// \author: Enrico Alborali
/// \version: 1.00 [20.06.2008]
/// \last modify: 03/08/09 - Diego Vicentini
function apEAInputCheckAndSubmit()
{
	var copie		= document.getElementById('numero_copie');
	var formato		= document.getElementById('formato');
	var base		= document.getElementById('base');
	var altezza		= document.getElementById('altezza');
	var file_stampa		= document.getElementById('file_stampa');
	var msg			= "Si prega di compilare i campi segnati in rosso&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;";
	var checked	 	= false;
	
	if (copie != null && file_stampa != null)
	{
		checked = true;
		// --- Recupero i valori dei campi obbligatori ---
		value_copie		= copie.value;
		if (formato != null)
			value_formato = formato.options[formato.selectedIndex].value;
		else
			value_formato = null;
		value_base		= base.value;
		value_altezza	= altezza.value;
		value_file		= file_stampa.value;
		
		if (isNaN(value_copie))
		{
			copie.value = "";
			checked = false;
			copie.style.background='#cc0000';
		}
		else if (value_copie == null || value_copie == "" || parseInt(value_copie)<=0)
		{
			checked = false;
			copie.style.background='#cc0000';
		}
		else
		{
			copie.style.background='#ffffff';
		}
		
		if (value_formato == -1 || value_formato == null)
		{
			if (isNaN(value_base))
			{
				base.value = "";
				checked = false;
				base.style.background='#cc0000';
			}
			else if ( (value_base == null || value_base == "" || parseInt(value_base)<=0) )
			{
				checked = false;
				base.style.background='#cc0000';
			}
			else
			{
				base.style.background='#ffffff';
			}
			
			if (isNaN(value_altezza))
			{
				altezza.value = "";
				checked = false;
				altezza.style.background='#cc0000';
			}
			else if ( (value_altezza == null || value_altezza == "" || parseInt(value_altezza)<=0) )
			{
				checked = false;
				altezza.style.background='#cc0000';
			}
			else
			{
				altezza.style.background='#ffffff';
			}
		}
		
		if (value_file == null || value_file == "")
		{
			checked = false;
			file_stampa.style.background='#cc0000';
		}
		else
		{
			file_stampa.style.background='#ffffff';
		}
		
		// --- Stampo/cancello messaggio di errore ---
		var span_errormsg_final = document.getElementById("inputerrormsg");
		if (checked)
		{
			span_errormsg_final.innerHTML = "&nbsp;";
		}
		else
		{
			span_errormsg_final.innerHTML = msg;
			span_errormsg_final.style.color = '#cc0000';
			span_errormsg_final.style.fontSize = '9pt';
			span_errormsg_final.style.fontWeight = 'bold';
		}
	}

	return checked;
}

/// Funzione per controllare i campi obbligatori e inoltrare il form AeB
/// \author: Enrico Alborali
/// \version: 1.01 [06.08.2008]
function apAeBInputCheckAndSubmit()
{
	var copie	= document.getElementById('numero_copie');
	var base	= document.getElementById('base');
	var altezza	= document.getElementById('altezza');
	var occhielli	= document.getElementById('numero_occhielli');
	var file_stampa	= document.getElementById('file_stampa');
	var msg		= "Si prega di compilare i campi segnati in rosso&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;";
	var checked 	= false;
	
	if (copie != null && file_stampa != null)
	{
		checked = true;
		// --- Recupero i valori dei campi obbligatori ---
		value_copie	= copie.value;
		value_base	= base.value;
		value_altezza	= altezza.value;
		value_occhielli	= occhielli.value;
		value_file	= file_stampa.value;
		
		if (isNaN(value_copie))
		{
			copie.value = "";
			checked = false;
			copie.style.background='#cc0000';
		}
		else if (value_copie == null || value_copie == "" || parseInt(value_copie)<=0)
		{
			checked = false;
			copie.style.background='#cc0000';
		}
		else
		{
			copie.style.background='#ffffff';
		}
		
		if (isNaN(value_base))
		{
			base.value = "";
			checked = false;
			base.style.background='#cc0000';
		}
		else if (value_base == null || value_base == "" || parseInt(value_base)<=0)
		{
			checked = false;
			base.style.background='#cc0000';
		}
		else
		{
			base.style.background='#ffffff';
		}
		
		if (isNaN(value_altezza))
		{
			altezza.value = "";
			checked = false;
			altezza.style.background='#cc0000';
		}
		else if (value_altezza == null || value_altezza == "" || parseInt(value_altezza)<=0)
		{
			checked = false;
			altezza.style.background='#cc0000';
		}
		else
		{
			altezza.style.background='#ffffff';
		}
		
		if (isNaN(value_occhielli))
		{
			occhielli.value = "0";
			checked = false;
			occhielli.style.background='#cc0000';
		}
		else if (value_occhielli == null || value_occhielli == "" || parseInt(value_occhielli)<0)
		{
			checked = false;
			occhielli.style.background='#cc0000';
		}
		else
		{
			occhielli.style.background='#ffffff';
		}
		
		if (value_file == null || value_file == "")
		{
			checked = false;
			file_stampa.style.background='#cc0000';
		}
		else
		{
			file_stampa.style.background='#ffffff';
		}
		
		// --- Stampo/cancello messaggio di errore ---
		var span_errormsg_final = document.getElementById("inputerrormsg");
		if (checked)
		{
			span_errormsg_final.innerHTML = "&nbsp;";
		}
		else
		{
			span_errormsg_final.innerHTML = msg;
			span_errormsg_final.style.color = '#cc0000';
			span_errormsg_final.style.fontSize = '9pt';
			span_errormsg_final.style.fontWeight = 'bold';
		}
	}

	return checked;
}

/// Funzione per controllare i campi obbligatori e inoltrare il form LeR
/// \author: Enrico Alborali
/// \version: 1.00 [16.06.2008]
function apLeRInputCheckAndSubmit()
{
	var copie	= document.getElementById('numero_copie');
	var facciate	= document.getElementById('facciate_totali');
	var file_stampa	= document.getElementById('file_stampa');
	var msg		= "Si prega di compilare i campi segnati in rosso&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;";
	var checked 	= false;
	
	if (copie != null && facciate != null && file_stampa != null)
	{
		checked = true;
		// --- Recupero i valori dei campi obbligatori ---
		value_copie	= copie.value;
		value_facciate	= facciate.value;
		value_file	= file_stampa.value;
		
		if (isNaN(value_copie))
		{
			copie.value = "";
			checked = false;
			copie.style.background='#cc0000';
		}
		else if (value_copie == null || value_copie == "" || parseInt(value_copie)<0)
		{
			checked = false;
			copie.style.background='#cc0000';
		}
		else
		{
			copie.style.background='#ffffff';
		}
		
		if (isNaN(value_facciate))
		{
			facciate.value = "";
			checked = false;
			facciate.style.background='#cc0000';
		}
		else if (value_facciate == null || value_facciate == "" || parseInt(value_facciate)<0)
		{
			checked = false;
			facciate.style.background='#cc0000';
		}
		else
		{
			facciate.style.background='#ffffff';
		}
		
		if (value_file == null || value_file == "")
		{
			checked = false;
			file_stampa.style.background='#cc0000';
		}
		else
		{
			file_stampa.style.background='#ffffff';
		}
		
		// --- Stampo/cancello messaggio di errore ---
		var span_errormsg_final = document.getElementById("inputerrormsg");
		if (checked)
		{
			span_errormsg_final.innerHTML = "&nbsp;";
		}
		else
		{
			span_errormsg_final.innerHTML = msg;
			span_errormsg_final.style.color = '#cc0000';
			span_errormsg_final.style.fontSize = '9pt';
			span_errormsg_final.style.fontWeight = 'bold';
		}
	}

	return checked;
}

/// Funzione per controllare i campi obbligatori e inoltrare il form TiR BN
/// \author: Enrico Alborali
/// \version: 1.00 [16.06.2008]
function apTiRBNInputCheckAndSubmit()
{
	var copie	= document.getElementById('numero_copie');
	var file_stampa	= document.getElementById('file_stampa');
	var msg		= "Si prega di compilare i campi segnati in rosso&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;";
	var checked 	= false;
	
	if (copie != null && file_stampa != null)
	{
		checked = true;
		// --- Recupero i valori dei campi obbligatori ---
		value_copie		= copie.value;
		value_file		= file_stampa.value;
		
		if (isNaN(value_copie))
		{
			copie.value = "";
			checked = false;
			copie.style.background='#cc0000';
		}
		else if (value_copie == null || value_copie == "" || parseInt(value_copie)<0)
		{
			checked = false;
			copie.style.background='#cc0000';
		}
		else
		{
			copie.style.background='#ffffff';
		}
		
		if (value_file == null || value_file == "")
		{
			checked = false;
			file_stampa.style.background='#cc0000';
		}
		else
		{
			file_stampa.style.background='#ffffff';
		}
		
		// --- Stampo/cancello messaggio di errore ---
		var span_errormsg_final = document.getElementById("inputerrormsg");
		if (checked)
		{
			span_errormsg_final.innerHTML = "&nbsp;";
		}
		else
		{
			span_errormsg_final.innerHTML = msg;
			span_errormsg_final.style.color = '#cc0000';
			span_errormsg_final.style.fontSize = '9pt';
			span_errormsg_final.style.fontWeight = 'bold';
		}
	}

	return checked;
}

function apTiRBNFormatChange()
{
	apGetFormatTemplateLink('formato');
	apTiRBNFormCheck();
	apAJAXGetTiRPrintEstimation();
}

/// Funzione per resettare il form ReC
/// \author: Enrico Alborali
/// \version: 1.00 [18.06.2009]
function apReCFormReset()
{
	// --- Funzioni onload ---
	apAJAXGetPaperInfo();
	apAJAXGetPaperGr();
	apAJAXGetPaperMaxFaces();
	apAJAXUpdateCoverData();
	// --- Abilitazioni/disabilitazioni di default ---
	var copertina_tipo			= document.getElementById('copertina_tipo');
	var copertina_carta			= document.getElementById('copertina_carta');
	var copertina_grammatura		= document.getElementById('copertina_grammatura');
	var copertina_rilegatura		= document.getElementById('copertina_rilegatura');
	var copertina_plastificazione		= document.getElementById('copertina_plastificazione');
	copertina_tipo.disabled 		= false;
	copertina_carta.disabled		= true;
	copertina_grammatura.disabled 		= true;
	copertina_rilegatura.disabled		= false;
	copertina_plastificazione.disabled	= false;
	apAJAXGetPaperInfo();
}

/// Funzione per resettare il form TiR
/// \author: Enrico Alborali
/// \version: 1.00 [18.06.2009]
function apTiRFormReset()
{
	// --- Funzioni onload ---
	apAJAXGetPaperGr();
	apAJAXGetPaperInfo();
	apAJAXGetWorkInfo('piegatura');
}

/// Funzione per resettare il form LeR
/// \author: Enrico Alborali
/// \version: 1.00 [18.06.2009]
function apLeRFormReset()
{
	// --- Funzioni onload ---
	apAJAXGetPaperInfo();
	apAJAXGetPaperGr();
	apAJAXGetPaperMaxFaces();
	apAJAXUpdateCoverData();
	// --- Abilitazioni/disabilitazioni di default ---
	var copertina_tipo			= document.getElementById('copertina_tipo');
	var copertina_carta			= document.getElementById('copertina_carta');
	var copertina_grammatura		= document.getElementById('copertina_grammatura');
	var copertina_rilegatura		= document.getElementById('copertina_rilegatura');
	var copertina_plastificazione		= document.getElementById('copertina_plastificazione');
	copertina_tipo.disabled 		= false;
	copertina_carta.disabled		= true;
	copertina_grammatura.disabled 		= true;
	copertina_rilegatura.disabled		= false;
	copertina_plastificazione.disabled	= false;
	apAJAXGetPaperInfo();
}

/// Funzione per resettare il form TiR BN
/// \author: Enrico Alborali
/// \version: 1.00 [18.06.2009]
function apTiRBNFormReset()
{
	// --- Funzioni onload ---
	apAJAXGetPaperGr();
	apAJAXGetPaperInfo();
	apAJAXGetWorkInfo('piegatura');
}

/// Funzione per resettare il form EA
/// \author: Enrico Alborali
/// \version: 1.00 [18.06.2009]
function apEAFormReset()
{
	// --- Funzioni onload ---
	apAJAXGetPaperSize();
	apAJAXGetPaperInfo();
	apAJAXGetWorkInfo('taglio');
}

/// Funzione per resettare il form AQ
/// \author: Enrico Alborali
/// \version: 1.00 [18.06.2009]
function apAQFormReset()
{
	// --- Funzioni onload ---
	apAJAXGetPaperSize();
	apAJAXGetPaperInfo();
	apAJAXGetPaperWorks();
}

/// Funzione per resettare il form AeB
/// \author: Enrico Alborali
/// \version: 1.00 [18.06.2009]
function apAeBFormReset()
{
	// --- Funzioni onload ---
	apAJAXGetPaperSize();
	apAJAXGetPaperInfo();
	apAJAXGetPaperWorks();
}

/// Funzione per resettare il form Mea
/// \author: Enrico Alborali
/// \version: 1.00 [18.06.2009]
function apMeAFormReset()
{
	// --- Funzioni onload ---
	apAJAXGetPaperSize();
	apAJAXGetPaperInfo();
	apAJAXGetPaperWorks();
}

/// Funzione per controllare i campi obbligatori e inoltrare il form consiglia sito
/// \author: Diego Vicentini
/// \version: 1.00 [21.09.2009]
function apFriendInputCheckAndSubmit()
{
	var nome		= document.getElementById('nome');
	var mail_mittente	= document.getElementById('mail_mittente');
	var mail_dest		= document.getElementById('mail_dest');
	var msg			= "Si prega di compilare i campi segnati in rosso&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;";
	var checked 		= true;
	
	if (nome == null || nome.value == "")
	{
		checked = false;
		nome.style.background = '#cc0000';
	}
	else
	{
		nome.style.background = '#ffffff';
	}
	
	if (mail_mittente == null || mail_mittente.value == "")
	{
		checked = false;
		mail_mittente.style.background = '#cc0000';
	}
	else
	{
		mail_mittente.style.background = '#ffffff';
	}
	
	if (mail_dest == null || mail_dest.value == "")
	{
		checked = false;
		mail_dest.style.background = '#cc0000';
	}
	else
	{
		mail_dest.style.background = '#ffffff';
	}

	// --- Stampo/cancello messaggio di errore ---
	var span_errormsg_final = document.getElementById("inputerrormsg");
	if (checked)
	{
		span_errormsg_final.innerHTML = "&nbsp;";
	}
	else
	{
		span_errormsg_final.innerHTML = msg;
		span_errormsg_final.style.color = '#cc0000';
		span_errormsg_final.style.fontSize = '9pt';
		span_errormsg_final.style.fontWeight = 'bold';
	}
	
	return checked;
}

/// Funzione per controllare i campi obbligatori e inoltrare il form di iscrizione alla newsletter
/// \author: Diego Vicentini
/// \version: 1.00 [21.09.2009]
function apNewsletterInputCheckAndSubmit()
{
	var nome	= document.getElementById('nome');
	var cognome	= document.getElementById('cognome');
	var mail	= document.getElementById('mail');
	var msg		= "Si prega di compilare i campi segnati in rosso&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;";
	var checked 	= true;
	
	if (nome == null || nome.value == "")
	{
		checked = false;
		nome.style.background = '#cc0000';
	}
	else
	{
		nome.style.background = '#ffffff';
	}

	if (cognome == null || cognome.value == "")
	{
		checked = false;
		cognome.style.background = '#cc0000';
	}
	else
	{
		cognome.style.background = '#ffffff';
	}
	
	if (mail == null || mail.value == "")
	{
		checked = false;
		mail.style.background = '#cc0000';
	}
	else
	{
		mail.style.background = '#ffffff';
	}
	
	// --- Stampo/cancello messaggio di errore ---
	var span_errormsg_final = document.getElementById("inputerrormsg");
	if (checked)
	{
		span_errormsg_final.innerHTML = "&nbsp;";
	}
	else
	{
		span_errormsg_final.innerHTML = msg;
		span_errormsg_final.style.color = '#cc0000';
		span_errormsg_final.style.fontSize = '9pt';
		span_errormsg_final.style.fontWeight = 'bold';
	}
	
	return checked;	
}

/// Funzione per controllare i campi obbligatori e inoltrare il form di contattaci
/// \author: Diego Vicentini
/// \version: 1.00 [01.10.2009]
function apContactInputCheckAndSubmit()
{
	var nome	= document.getElementById('nome');
	var cognome	= document.getElementById('cognome');
	var mail	= document.getElementById('email');
	var telefono	= document.getElementById('telefono');
	var richiesta	= document.getElementById('richiesta');
	var privacy	= document.getElementById('privacy');
	var msg		= "Si prega di compilare i campi segnati in rosso&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;";
	var checked 	= true;
	
	if (nome == null || nome.value == "")
	{
		checked = false;
		nome.style.background = '#cc0000';
	}
	else
	{
		nome.style.background = '#ffffff';
	}

	if (cognome == null || cognome.value == "")
	{
		checked = false;
		cognome.style.background = '#cc0000';
	}
	else
	{
		cognome.style.background = '#ffffff';
	}
	
	if (mail == null || mail.value == "")
	{
		checked = false;
		mail.style.background = '#cc0000';
	}
	else
	{
		mail.style.background = '#ffffff';
	}

	if (telefono == null || telefono.value == "")
	{
		checked = false;
		telefono.style.background = '#cc0000';
	}
	else
	{
		telefono.style.background = '#ffffff';
	}

	if (richiesta == null || richiesta.value == "")
	{
		checked = false;
		richiesta.style.background = '#cc0000';
	}
	else
	{
		richiesta.style.background = '#ffffff';
	}

	// --- Stampo/cancello messaggio di errore ---
	var span_errormsg_final = document.getElementById("inputerrormsg");
	if (checked)
	{
		span_errormsg_final.innerHTML = "&nbsp;";
	}
	else
	{
		span_errormsg_final.innerHTML = msg;
		span_errormsg_final.style.color = '#cc0000';
		span_errormsg_final.style.fontSize = '9pt';
		span_errormsg_final.style.fontWeight = 'bold';
	}
	
	return checked;
}

/// Funzione per ripristinare i valori di default della form
/// di filtraggio per le pagine di configurazione del db.
/// \author: Diego Vicentini
/// \version: 2.00 [25.11.2009]
function apOrderFilterDefaultValue()
{
	// Pagina ordini
	var stato			= document.getElementById('stato');
	var periodo 		= document.getElementById('periodo');
	var invio_file 		= document.getElementById('invio_file');
	var pagamento		= document.getElementById('pagamento');
	var fattura			= document.getElementById('fattura');
	if (stato != null) stato[1].selected = true;
	if (periodo != null) periodo[0].selected = true;
	if (invio_file != null) invio_file[0].selected = true;
	if (pagamento != null) pagamento[0].selected = true;
	if (fattura != null) fattura[0].selected = true;
	
	// Pagina config_cartaTipo, config_cartaFormato, config_ordineLavoro, config_stampaCosto
	var tipoMateriale	= document.getElementById('tipoMateriale');
	var categoriaStampa = document.getElementById('categoriaStampa');
	var tipoStampa = document.getElementById('tipoStampa');
	if (tipoMateriale != null) tipoMateriale[0].selected = true;
	if (categoriaStampa != null) categoriaStampa[0].selected = true;
	if (tipoStampa != null) tipoStampa[0].selected = true;
	
	// Pagina config_cartaGrammatura
	var tipoCarta = document.getElementById('tipoCarta');
	if (tipoCarta != null) tipoCarta[0].selected = true;

	// Pagina config_lavorazione
	var tipoLavorazione = document.getElementById('tipoLavorazione');
	if (tipoLavorazione != null) tipoLavorazione[0].selected = true;

	// Pagina config_ordine
	var utente = document.getElementById('utente');
	var statoOrdine = document.getElementById('statoOrdine');
	var tipoConsegna = document.getElementById('tipoConsegna');
	if (utente != null) utente[0].selected = true;
	if (statoOrdine != null) statoOrdine[0].selected = true;
	if (tipoConsegna != null) tipoConsegna[0].selected = true;
	
	// Pagina config_spedizioneCosto
	var tipoSpedizione = document.getElementById('tipoSpedizione');
	if (tipoSpedizione != null) tipoSpedizione[0].selected = true;
	
	// Pagina config_utente
	var tipoUtente = document.getElementById('tipoUtente');
	if (tipoUtente != null) tipoUtente[0].selected = true;
}

/// Funzione per sincronizzare lo scorrimento della riga di intestazione della tabella
/// con lo scorrimento orizzontale del contenuto.
/// \author: Diego Vicentini
/// \version: 1.00 [01.12.2009]
function apSynchroScroll()
{
	var content = document.getElementById('scrollContent');
	var header  = document.getElementById('fixedHeader');

	header.scrollLeft = content.scrollLeft;
//	alert(content.scrollLeft+"\n"+header.scrollLeft);
}

/// Funzione per il controllo del form di invio dei dati per la valutazione degli ordini.
/// \author: Diego Vicentini
/// \version: 1.01 [13.01.2010]
function apFeedbackInputCheckAndSubmit()
{
	var checked = true;
	
	var moltoProbabile = document.getElementById('sehr_wahrscheinlich');
	var probabile      = document.getElementById('wahrscheinlich');
	var improbabile    = document.getElementById('unwahrscheinlich');
	var consiglieresti = document.evaluationform.recommend;
	var tableVote      = document.getElementById('voteNow');
	var msg		       = null;
	
	// Verifica che tutti i criteri siano stati valutati
	var criteri = tableVote.getElementsByTagName("input");
//	alert("Criteri = "+criteri.length);
	for (i=0;i<criteri.length;i++) {
		var criterio = criteri.item(i);
//		alert("Criterio = "+criterio.value);
		if (criterio.value == null || criterio.value == '') {
			checked = false;
			msg = "Non tutti i criteri sono stati valutati (controlla le stelline).\nCompleta la scheda ed invia nuovamente la tua valutazione. Grazie.";
		}
	}
	
	// Verifica la selezione sulla domanda consiglieresti
	if (consiglieresti[0].checked == false && consiglieresti[1].checked == false && consiglieresti[2].checked == false)
	{
		checked = false;
		msg = "Non hai risposto alla domanda \"Consiglieresti ArtPrint?\".\nCompleta la scheda ed invia nuovamente la tua valutazione. Grazie.";
	}

	// --- Stampo messaggio di errore ---
	if (msg != null) alert(msg);
	
	return checked;
}