var FormRq = {};
FormRq.STARTANNO = 1930;
FormRq.ENDANNO = 2000;
FormRq.prov = ['AG', 'AL', 'AN', 'AO', 'AP', 'AQ', 'AR', 'AT', 'AV', 'BA', 'BG', 'BI', 'BL', 'BN', 'BO', 'BR', 'BS', 'BZ', 'CA', 'CB', 'CE', 'CH', 'CL', 'CN', 'CO', 'CR', 'CS', 'CT', 'CZ', 'EN', 'FE', 'FG', 'FI', 'FO', 'FR', 'GE', 'GO', 'GR', 'IM', 'IS', 'KR', 'LC', 'LE', 'LI', 'LO', 'LT', 'LU', 'MC', 'ME', 'MI', 'MN', 'MO', 'MS', 'MT', 'NA', 'NO', 'NU', 'OR', 'PA', 'PC', 'PD', 'PE', 'PG', 'PI', 'PN', 'PO', 'PR', 'PT', 'PU', 'PV', 'PZ', 'RA', 'RC', 'RE', 'RG', 'RI', 'RM', 'RN', 'RO', 'SA', 'SI', 'SO', 'SP', 'SR', 'SS', 'SV', 'TA', 'TE', 'TN', 'TO', 'TP', 'TR', 'TS', 'TV', 'UD', 'VA', 'VB', 'VC', 'VE', 'VI', 'VR', 'VT', 'VV'];

FormRq.titolo_studi_value = { "superiore": 1, "universita": 1, "laureando": 1 };
FormRq.templates = {};
FormRq.appo_job_esp = {};
FormRq.close = [ 1, 1 ];

//{{{ MM_preloadImages ()
FormRq.MM_preloadImages = function () 
{ 
	var d = document; 
	var i, j, a; 
	if ( d.images ) 
	{ 
		if ( ! d.MM_p ) d.MM_p = new Array();
    		j = d.MM_p.length;
		a = FormRq.MM_preloadImages.arguments; 
		for ( i = 0; i < a.length; i++)
		{
    			if ( a [ i ].indexOf ( "#" ) != 0 )
			{ 
				d.MM_p [ j ] = new Image; 
				d.MM_p [ j++ ].src = a [ i ];
			}
		}
	}
};
//}}}
//{{{ create_templates ()
FormRq.create_templates = function ()
{
	var t, l, s = '';
        s  = '<div class="label_field">Titologia di Diploma<\/div>';
        s += '	<div id="tipo_studi" class="input_field">';
	s += '<select id="studi" name="studi" class="input_data" onblur="javascript:FormRq.check_empty_input(this,\'tipologia di diploma\');" onchange="javascript:FormRq.check_empty_input(this,\'tipologia di diploma\');">';
	s += '	<option value="">( Selezionare )<\/option>';
	s += '	<option value="Conservatorio">Conservatorio<\/option>';
	s += '	<option value="Istituto Arte">Istituto d\'Arte<\/option>';
	s += '	<option value="Istituto Magistrale">Istituto Magistrale<\/option>';
	s += '	<option value="Istituto Professionale">Istituto Professionale<\/option>';
	s += '	<option value="Istituto Tecnico Aeronautico">Istituto Tecnico Aeronautico<\/option>';
	s += '	<option value="Istituto Tecnico Agrario">Istituto Tecnico Agrario<\/option>';
	s += '	<option value="Istituto Tecnico Commerciale">Istituto Tecnico Commerciale<\/option>';
	s += '  <option value="Istituto Tecnico per Geometri">Istituto Tecnico per Geometri</option>';
	s += '  <option value="Istituto Tecnico per Periti Aziendali">Istituto Tecnico per Periti Aziendali</option>';
	s += '  <option value="Istituto Tecnico Industriale">Istituto Tecnico Industriale<\/option>';
	s += '  <option value="Istituto Tecnico Nautico">Istituto Tecnico Nautico<\/option>';
	s += '  <option value="Istituto Tecnico per il Turismo">Istituto Tecnico per il Turismo<\/option>';
	s += '  <option value="Istituto Alberghiero">Istituto Alberghiero<\/option>';
	s += '  <option value="Liceo Sperimentale">Liceo Sperimentale<\/option>';
	s += '  <option value="Liceo Classico">Liceo Classico<\/option>';
	s += '  <option value="Liceo Linguistico">Liceo Linguistico<\/option>';
	s += '  <option value="Liceo Pedagogico">Liceo Pedagogico<\/option>';
	s += '  <option value="Liceo Scientifico">Liceo Scientifico<\/option>';
	s += '	<option value="altro">Altro<\/option>';
	s += '<\/select>';
	s += '<\/div>';
        s += '	<div class="mandatory">*<\/div>';

	FormRq.templates [ 'studi_sup' ] = s;

        s  = '<div class="label_field">Corso di Laurea<\/div>';
        s += '  <div id="tipo_studi" class="input_field">';
        s += '<select id="studi" name="studi" class="input_data" onblur="javascript:FormRq.check_empty_input(this,\'corso di laurea\');" onchange="javascript:FormRq.check_empty_input(this,\'corso di laurea\');">';
        s += '  <option value="">( Selezionare )<\/option>';
        s += '  <option value="Agraria">Agraria<\/option>';
        s += '  <option value="Biotecnologie">Biotecnologie<\/option>';
        s += '  <option value="Scienze dei Servizi Giuridici">Scienze dei Servizi Giuridici<\/option>';
        s += '  <option value="Scienze della Mediazione Linguistica">Scienze della Mediazione Linguistica<\/option>';
        s += '  <option value="Scienze Architettura e Ingegneria Edile">Scienze dell\'Architettura e dell\'Ingegneria Edile<\/option>';
        s += '  <option value="Lettere">Lettere<\/option>';
        s += '  <option value="Scienze del Servizio Sociale">Scienze del Servizio Sociale<\/option>';
        s += '  <option value="Urbanistica e Scienze della Pianificazione Territoriale e Ambientale">Urbanistica e Pianificazione Territoriale<\/option>';
        s += '  <option value="Ingegneria Civile e Ambientale">Ingegneria Civile e Ambientale<\/option>';
        s += '  <option value="Ingegneria Informazione">Ingegneria dell\'Informazione<\/option>';
        s += '  <option value="Ingegneria Industriale">Ingegneria Industriale<\/option>';
        s += '  <option value="Lingue e Culture Moderne">Lingue e Culture Moderne<\/option>';
        s += '  <option value="Scienze Biologiche">Scienze Biologiche<\/option>';
        s += '  <option value="Scienze della Comunicazione">Scienze della Comunicazione<\/option>';
        s += '  <option value="Scienze Politiche e delle Relazioni Internazionali">Scienze Politiche e delle Relazioni Internazionali<\/option>';
        s += '  <option value="Scienze della Terra">Scienze della Terra<\/option>';
        s += '  <option value="Scienze Economia e della Gestione Aziendale">Scienze dell\'Economia e della Gestione Aziendale<\/option>';
        s += '  <option value="Scienze Educazione e della Formazione">Scienze dell\'Educazione e della Formazione<\/option>';
        s += '  <option value="Scienze Amministrazione">Scienze dell\'Amministrazione<\/option>';
        s += '  <option value="Scienze e Tecnologie Agrarie, Agroalimentari e Forestali">Scienze e Tecnologie Agrarie<\/option>';
        s += '  <option value="Scienze e Tecnologie Chimiche">Scienze e Tecnologie Chimiche<\/option>';
        s += '  <option value="Scienze e Tecnologie della Navigazione Marittima e Aerea">Scienze della Navigazione Marittima e Aerea<\/option>';
        s += '  <option value="Scienze e Tecnologie delle Arti Figurative">Scienze e Tecnologie delle Arti Figurative<\/option>';
        s += '  <option value="Scienze e Tecnologie Farmaceutiche">Scienze e Tecnologie Farmaceutiche<\/option>';
        s += '  <option value="Scienze e Tecnologie Fisiche">Scienze e Tecnologie Fisiche<\/option>';
        s += '  <option value="Scienze e Tecnologie Informatiche">Scienze e Tecnologie Informatiche<\/option>';
        s += '  <option value="Scienze e Tecnologie per Ambiente e la Natura">Scienze e Tecnologie per l\'Ambiente e la Natura<\/option>';
        s += '  <option value="Scienze Economiche">Scienze Economiche<\/option>';
        s += '  <option value="Filosofia">Filosofia<\/option>';
        s += '  <option value="Scienze Geografiche">Scienze Geografiche<\/option>';
        s += '  <option value="Scienze Giuridiche">Scienze Giuridiche<\/option>';
        s += '  <option value="Scienze Matematiche">Scienze Matematiche<\/option>';
        s += '  <option value="Scienze delle Attivita Motorie e Sportive">Scienze delle Attivit&agrave; Motorie e Sportive<\/option>';
        s += '  <option value="Scienze e Tecniche Psicologiche">Scienze e Tecniche Psicologiche<\/option>';
        s += '  <option value="Scienze Sociali per lo Sviluppo e la Pace">Scienze Sociali per lo Sviluppo e la Pace<\/option>';
        s += '  <option value="Scienze Sociologiche">Scienze Sociologiche<\/option>';
        s += '  <option value="Scienze Statistiche">Scienze Statistiche<\/option>';
        s += '  <option value="Scienze Storiche">Scienze Storiche<\/option>';
        s += '  <option value="Scienze del Turismo">Scienze del Turismo<\/option>';
        s += '  <option value=" Scienze e Tecnologie Zootecniche"> Scienze e Tecnologie Zootecniche<\/option>';
        s += '  <option value="Tecnologie per il Restauro dei Beni Culturali">Tecnologie per il Restauro dei Beni Culturali<\/option>';
        s += '  <option value="Disegno Industriale">Disegno Industriale<\/option>';
        s += '  <option value="altro">Altro<\/option>';
        s += '<\/select>';
        s += '<\/div>';
        s += '  <div class="mandatory">*<\/div>';

	FormRq.templates [ 'tipo_laurea' ] = s;

	s  = '<div class="inputbox">';
	s += '	<div class="label_field">Azienda<\/div>';
	s += '	<div class="input_field">';
	s += '		<input class="input_data" type="text" id="azienda%(num)s" size="28" maxlength="30" name="azienda%(num)s"/>';
	s += '	<\/div>';
	s += '	<div class="mandatory"><\/div>';
	s += '<\/div>';
	s += '<div class="inputbox">';
	s += '	<div class="label_field">Settore<\/div>';
	s += '	<div class="input_field">';
	s += '		<select id="sett_az%(num)s" name="sett_az%(num)s">';
	s += '			<option value="">( Selezionare )<\/option>';
	s += '			<option value="trasporti">Trasporti<\/option>';
	s += '			<option value="logistica">Logistica<\/option>';
	s += '			<option value="marketing">Marketing<\/option>';
	s += '			<option value="altro">Altro<\/option>';
	s += '		<\/select>';
	s += '	<\/div>';
	s += '	<div class="mandatory"><\/div>';
	s += '<\/div>';
	s += '<div class="inputbox">';
	s += '	<div class="label_field">Mansione<\/div>';
	s += '	<div class="input_field">';
	s += '		<select id="mansione_esp_lavoro%(num)s" name="mansione_esp_lavoro%(num)s">';
	s += '			<option value="">( Selezionare )<\/option>';
	s += '			<option value="area manager">Area Manager<\/option>';
	s += '			<option value="district manager">District Manager<\/option>';
	s += '			<option value="store manager">Store Manager<\/option>';
	s += '			<option value="altro">Altro<\/option>';
	s += '		<\/select>';
	s += '	<\/div>';
	s += '	<div class="mandatory"><\/div>';
	s += '<\/div>';
	s += '<div class="inputbox">';
	s += '	<div class="label_field">Tipo di contratto<\/div>';
	s += '	<div class="input_field">';
	s += '		<select id="contr_esp_lavoro%(num)s" name="contr_esp_lavoro%(num)s">';
	s += '			<option value="">( Selezionare )<\/option>';
	s += '			<option value="indeterminato">Tempo Indeterminato<\/option>';
	s += '			<option value="determinato">Tempo Determinato<\/option>';
	s += '			<option value="part time">Part-Time<\/option>';
	s += '			<option value="stage">Stage / Tirocinio<\/option>';
	s += '			<option value="altro">Altro<\/option>';
	s += '		<\/select>';
	s += '	<\/div>';
	s += '	<div class="mandatory"><\/div>';
	s += '<\/div>';
	s += '<div class="inputbox">';
	s += '	<div class="label_field">Dal<\/div>';
	s += '	<div class="input_field">';
	s += '		<input class="input_data" type="text" id="g_da_esp_lavoro%(num)s" size="2" maxlength="2" value="gg"\/> /';
	s += '		<input class="input_data" type="text" id="m_da_esp_lavoro%(num)s" size="2" maxlength="2" value="mm"\/> /';
	s += '		<input class="input_data" type="text" id="y_da_esp_lavoro%(num)s" size="4" maxlength="4" value="aaaa"\/>';
	s += '	</div>';
	s += '	<div class="mandatory"><\/div>';
	s += '<\/div>';
	s += '<div class="inputbox">';
	s += '	<div class="label_field">Al<\/div>';
	s += '	<div class="input_field">';
	s += '		<input class="input_data" type="text" id="g_a_esp_lavoro%(num)s" size="2" maxlength="2" value="gg"\/> /';
	s += '		<input class="input_data" type="text" id="m_a_esp_lavoro%(num)s" size="2" maxlength="2" value="mm"\/> /';
	s += '		<input class="input_data" type="text" id="y_a_esp_lavoro%(num)s" size="4" maxlength="4" value="aaaa"\/>';
	s += '	<\/div>';
	s += '	<div class="mandatory"><\/div>';
	s += '<\/div>';

	FormRq.templates [ 'job_esp' ] = s;

	s  = '<div class="inputbox" style="clear: left;">';
	s += '	<div class="label_field"><a class="add_job_esp" href="javascript:FormRq.add_job_esp(%(num)s);">Aggiungi una nuova esperienza di lavoro<\/a><\/div>';
	s += '	<div class="input_field">&nbsp;<br \/><\/div>';
	s += '	<div class="mandatory"><\/div>';
	s += '<\/div>';

	FormRq.templates [ 'add_job_link' ] = s;

        s  = '<div class="inputbox" style="clear: left;">';
	s += '  <div class="label_field"><a class="add_job_esp" href="javascript:FormRq.close_job_esp(%(num)s);">Elimina l\'esperienza lavorativa inserita<\/a><\/div>';
	s += '  <div class="input_field">&nbsp;<\/div>';
        s += '  <div class="mandatory"><\/div>';
        s += '<\/div>';

	FormRq.templates [ 'close_job_link' ] = s;

	l = FormRq.prov.length;
	s  = '<select name="prov_res" id="prov_res">';
	s += '	<option value="">( Seleziona )<\/option>';

	for ( t = 0; t < l; t++ )
		s += '	<option value="' + FormRq.prov [ t ] + '">' + FormRq.prov [ t ] + '<\/option>';
		
	s += '<\/select>';

	FormRq.templates [ 'select_province' ] = s;

	s  = '	<div class="label_field">Mansione Desiderata<\/div>';
	s += '	<div class="input_field">';
	s += '		<select class="input_data" id="mansione_d" name="mansione_d" onchange="javascript:FormRq.check_empty_input(this,\'mansione desiderata\');" onblur="javascript:FormRq.check_empty_input(this,\'mansione desiderata\');">';
	s += '		      <option value="">( Selezionare )<\/option>';
	s += '		      <option value="accounting &amp; finance">Accounting &amp; Finance<\/option>';
	s += '		      <option value="merchandising &amp; marketing">Merchandising &amp; Marketing<\/option>';
	s += '		      <option value="distribution center">Distribution Center<\/option>';
	s += '		      <option value="human resources">Human Resources<\/option>';
	s += '		      <option value="information technology">Information Technology<\/option>';
	s += '		      <option value="warehouse">Logistica \/ Warehouse<\/option>';
	s += '		    <\/select>';
	s += '	<\/div>';
	s += '	<div class="mandatory">*<\/div>';

	FormRq.templates [ 'select_home_office' ] = s;

	s = '	<div class="label_field">Mansione Desiderata<\/div>';
	s += '	<div class="input_field">';
	s += '		<select id="mansione_d" name="mansione_d" class="input_data" onchange="javascript:FormRq.check_empty_input(this,\'mansione desiderata\');" onblur="javascript:FormRq.check_empty_input(this,\'mansione desiderata\');">';
	s += '		      <option value="">( Selezionare )<\/option>';
	s += '		      <option value="store manager">Store Manager<\/option>';
	s += '		      <option value="addetto vendita">Addetto alla Vendita<\/option>';
	s += '		      <option value="area manager">Area Manager<\/option>';
	s += '		      <option value="district manager">District Manager<\/option>';
	s += '		    <\/select>';
	s += '	<\/div>';
	s += '	<div class="mandatory">*<\/div>';

	FormRq.templates [ 'select_operation_store' ] = s;
};
//}}}
//{{{ init ()
FormRq.init = function ()
{
	FormRq.create_templates ();
	//FormRq.MM_preloadImages ();
};
//}}}
//{{{ charge_province ()
FormRq.charge_province = function ()
{
	$ ( 'province' ).innerHTML = FormRq.templates [ 'select_province' ];
}
//}}}
//{{{ check_titolo_studi ( elem )
FormRq.check_titolo_studi = function ( elem )
{
	var check = "";
	if ( elem )
	{
        	check = FormRq.check_empty ( elem );

        	if ( check )
                	Utils.print_error ( elem, 'Inserire i valori nel campo: <b>TITOLO DI STUDIO<\/b>' );
        	else
		{
			if ( elem.value == 'superiore' )
			{
				$ ( 'tipo_studi_box' ).innerHTML = FormRq.templates [ 'studi_sup' ];
			}
			else if ( elem.value == 'universita' || elem.value == 'laureando' )
			{
				$ ( 'tipo_studi_box' ).innerHTML = FormRq.templates [ 'tipo_laurea' ];
			}
			else if ( elem.value == "" )
			{
				Utils.print_error ( elem, 'Inserire i valori nel campo: <b>TITOLO DI STUDIO<\/b>' );
				elem.style.background = 'yellow';
				$ ( 'tipo_studi_box' ).innerHTML = '';
			}
			else 
			{
				elem.style.background = 'white';
				Utils.hide_error ();//Utils.f.Destroy();
				$ ( 'tipo_studi_box' ).innerHTML = '';
			}
		}
	}
};
//}}}
//{{{ check_sede_desiderata ( elem )
FormRq.check_sede_desiderata = function ( elem )
{
        var check = "";
        if ( elem )
        {
                check = FormRq.check_empty_input ( elem, 'Inserire i valori nel campo: <b>Settore / Sede di Interesse<\/b>' );
                if ( ! check )
                {
			if ( elem.value == 'home office' )
			{
				$ ( 'mansione_box' ).innerHTML = FormRq.templates [ 'select_home_office' ];
			}
			else if ( elem.value == 'operation store' )
			{
				$ ( 'mansione_box' ).innerHTML = FormRq.templates [ 'select_operation_store' ];
			}
			else if ( elem.value == "" )
			{
				Utils.print_error ( elem, 'Inserire i valori nel campo: <b>SETTORE / SEDE DI INTERESSE<\/b>' );
				elem.style.background = 'yellow';
				$ ( 'mansione_box' ).innerHTML = '';
			}
			else 
			{
				elem.style.background = 'white';
				Utils.hide_error ();//Utils.f.Destroy();
				$ ( 'mansione_box' ).innerHTML = '';
			}
		}
	}
};
//}}}
//{{{ info_input ( elem )
FormRq.info_input = function ( elem )
{
	if ( elem )
		Utils.print_error ( elem, '<b>Per inserire un\'esperienza lavorativa &egrave; necessario completare tutti i campi<\/b>' );
};
//}}}
//{{{ add_job_esp( num )
FormRq.add_job_esp = function ( num )
{
	var pos, row, s = '';
	if ( num )
	{
		$ ( 'job_counter' ).value ++;
		pos = num - 2;
		FormRq.close [ pos ] = 0;
		$ ( 'esp_lavoro' + num ).style.display = 'block'; 
		$ ( 'link_close_esp' + num ).style.display = 'block'; 
		$ ( 'link_add_esp' + num ).style.display = 'none'; 

		if ( num == 2 && FormRq.close [ pos + 1 ] )
		{
			$ ( 'link_add_esp' + ( num + 1 ) ).style.display = 'block'; 
			$ ( 'link_close_esp' + ( num + 1 ) ).style.display = 'none'; 
		}
	}	
};
//}}}
//{{{ close_job_esp ( num )
FormRq.close_job_esp = function ( num )
{
	var pos;
	if ( num )
	{
		$ ( 'job_counter' ).value --;
		pos = num - 2;
		FormRq.close [ pos ] = 1;
		$ ( 'link_add_esp' + num ).style.display = 'block'; 
		$ ( 'link_close_esp' + num ).style.display = 'none'; 
		$ ( 'esp_lavoro' + num ).style.display = 'none';

		if ( num == 2 && FormRq.close [ ( pos + 1 ) ] )
		{
			$ ( 'link_add_esp' + ( num + 1 ) ).style.display = 'none'; 
			$ ( 'esp_lavoro' + ( num + 1 ) ).style.display = 'none';
		}
		else if ( num == 3 && FormRq.close [ ( pos - 1 ) ] == 1 )
		{
			$ ( 'link_close_esp' + num ).style.display = 'none'; 
			$ ( 'link_add_esp' + num ).style.display = 'none'; 
		}
	}
};
//}}} 
//{{{ get_job_value ( num )
FormRq.get_job_value = function ( num )
{
	var dict = {};
	if ( num )
	{
		dict [ 'num' ] = num,
		dict [ 'azienda' ] = $ ( 'azienda' + num ).value,
		dict [ 'settore' ] = $ ( 'sett_az' + num ).value,
		dict [ 'mansione' ] = $ ( 'mansione_esp_lavoro' + num ).value,
		dict [ 'contratto' ] = $ ( 'contr_esp_lavoro' + num ).value,
		dict [ 'dal_g' ] = $ ( 'g_da_esp_lavoro' + num ).value,
		dict [ 'dal_m' ] = $ ( 'm_da_esp_lavoro' + num ).value,
		dict [ 'dal_a' ] = $ ( 'y_da_esp_lavoro' + num ).value,
		dict [ 'a_g' ] = $ ( 'g_a_esp_lavoro' + num ).value,
		dict [ 'a_m' ] = $ ( 'm_a_esp_lavoro' + num ).value,
		dict [ 'a_a' ] = $ ( 'y_a_esp_lavoro' + num ).value

		FormRq.appo_job_esp [ num ] = dict;
	}
};
//}}}
//{{{ print_error ( elem, str )
FormRq.print_error = function ( elem, str )
{
	var s = '<span class="error">Attenzione<\/span><br />Inserire i valori';
	var top;

	if ( elem )
	{
		if ( str )
			s = '<span class="error">Attenzione<\/span><br />Inserire i valori nel campo: ' + str;

		top = Utils.get_input_offsetTop ( elem );
		if ( top )
		{
			$ ( 'error_box' ).style.top = top + 'px';
			$ ( 'error_box' ).innerHTML = s;
		}
	}
};
//}}}
//{{{ check_empty ( elem )
FormRq.check_empty = function ( elem )
{
	var check = true;
	if ( elem )
	{
		check = Utils.check_empty_input ( elem.value );
		if ( check )
			elem.style.background = 'yellow';
		else
			elem.style.background = 'white';
	}

	return check;
};
//}}}
//{{{ check_empty_input ( elem, str )
FormRq.check_empty_input = function ( elem, str )
{
	var check = '';

	check = FormRq.check_empty ( elem );

	if ( check )
		Utils.print_error ( elem, 'Inserire i valori nel campo: <b>' + str.toUpperCase() + '<\/b>' );
	else
		Utils.hide_error ();//Utils.f.Destroy();
};
//}}}
//{{{ check_cf_value ( elem )
FormRq.check_cf_value = function ( elem )
{
	var check = true;

        check = FormRq.check_empty ( elem );

	if ( ! check )
        {
                check = FormRq.check_cf ( elem );

                if ( check ) Utils.hide_error ();//Utils.f.Destroy(); 
                else Utils.print_error ( elem, 'Inserire i valori nel campo: <b>CODICE FISCALE<\/b>' );
        }
	else
	{
		elem.style.background = 'white';
		Utils.hide_error ();
	}
};
//}}}
//{{{ check_cf ( elem )
FormRq.check_cf = function ( elem )
{
	var check = false;

	//check = FormRq.check_empty ( elem );

	//if ( ! check )
	//{
        	if ( elem )
        	{
			check = Utils.check_cod_fis ( elem.value );

			if ( ! check ) elem.style.background = 'yellow';
			else elem.style.background = 'white';
        	}
	/*}
	else
	{
		elem.style.background = 'white';
		check = false;
	}*/

	return check;
};
//}}}
//{{{ check_email ( elem, flag )
FormRq.check_email = function ( elem, flag )
{
        var check = false;

        check = FormRq.check_empty ( elem );

	if ( check )
	{
		if ( flag )
		{
			elem.style.background = 'white';
			Utils.hide_error ();
		}
		else
	        {
        	        elem.style.background = 'yellow';
                	Utils.print_error ( elem, 'Inserire i valori nel campo: <b>EMAIL<\/b>' );
        	}
	}
        else
        {
		check = FormRq.check_email_value ( elem );

                if ( check ) Utils.hide_error ();//Utils.f.Destroy(); 
                else Utils.print_error ( elem, 'Inserire i valori nel campo: <b>EMAIL<\/b>' );
        }

	return check;
};
//}}}
//{{{ check_email_value ( elem )
FormRq.check_email_value = function ( elem )
{
        var check = false;
        if ( elem )
        {
		check = Utils.check_email ( elem.value );

		if ( ! check ) elem.style.background = 'yellow';
		else elem.style.background = 'white';
        }

	return check;
};
//}}}
//{{{ check_data ( elem, str )
FormRq.check_data = function ( elem, str )
{
	var check = false;

        check = FormRq.check_empty ( elem );

        if ( check )
               	Utils.print_error ( elem, 'Inserire i valori nel campo: <b>' + str.toUpperCase() + '<\/b>' );
        else
	{
		check = FormRq.check_data_value ( elem );

		if ( check ) Utils.hide_error ();//Utils.f.Destroy(); 
		else Utils.print_error ( elem, 'Inserire i valori nel campo: <b>' + str.toUpperCase() + '<\/b>' );
	}

};
//}}}
//{{{ check_data_value ( elem )
FormRq.check_data_value = function ( elem )
{
	var check = false;
	var d = new Date();
	var value = "";
        if ( elem )
        {
		if ( Utils.check_empty_input ( elem.value ) || elem.value == "aaaa" || elem.value == "mm" || elem.value == "gg" )
		{
                	check = false;//Utils.print_error ( elem, str );
			elem.style.background = 'yellow';
		}
                else
                {
			if ( ( elem.id == "dd" || elem.id == "g_da_esp_lavoro1" || elem.id == "g_da_esp_lavoro2" || elem.id == "g_da_esp_lavoro3" || elem.id == "g_a_esp_lavoro1" || elem.id == "g_a_esp_lavoro2" || elem.id == "g_a_esp_lavoro3" ) )
			{
				check = FormRq.check_date_range ( elem.value, 1, 32 );	

				if ( check ) elem.style.background = 'white';
				else elem.style.background = 'yellow';
			}
                        if ( ( elem.id == "mm" || elem.id == "m_da_esp_lavoro1" || elem.id == "m_da_esp_lavoro2" || elem.id == "m_da_esp_lavoro3" || elem.id == "m_a_esp_lavoro1" || elem.id == "m_a_esp_lavoro2" || elem.id == "m_a_esp_lavoro3" ) )
			{
                                check = FormRq.check_date_range ( elem.value, 1, 13 );

				if ( check ) elem.style.background = 'white';
				else elem.style.background = 'yellow';
                        }
                        if ( ( elem.id == "yyyy" || elem.id == "y_da_esp_lavoro1" || elem.id == "y_da_esp_lavoro2" || elem.id == "y_da_esp_lavoro3" || elem.id == "y_a_esp_lavoro1" || elem.id == "y_a_esp_lavoro2" || elem.id == "y_a_esp_lavoro3" ) )
                        {
				if ( elem.id == "yyyy" )
                                	check = FormRq.check_date_range ( elem.value, FormRq.STARTANNO, FormRq.ENDANNO );
				else
					check = FormRq.check_date_range ( elem.value, FormRq.STARTANNO, d.getFullYear() + 1 );

				if ( check ) elem.style.background = 'white';
				else elem.style.background = 'yellow';

                        }

                }
        }

	return check;
};
//}}}
//{{{ check_date_range ( value, start, end )
FormRq.check_date_range = function ( value, start, end )
{
	var i;
	var res = false;
	for ( i = start; i < end; i++ )
	{
		if ( value == i ) res = true;
	}

	return res;
};
//}}}
//{{{ prova_ajaxcmd ()
FormRq.prova_ajaxcmd = function ()
{
	am.request ( "form.php", { action: "check_value", cognome: "oo" }, FormRq.prova_ajaxcmd_done, true );
};
//}}}
//{{{ prova_ajaxcmd_done ( vals )
FormRq.prova_ajaxcmd_done = function ( vals )
{
	return false;//console.debug ( vals);
};
//}}}
//{{{ check_privacy ( elem )
FormRq.check_privacy = function ( elem )
{
	if ( $ ( 'privacy' ).value == 0 ) $ ( 'privacy' ).value = 1;
	else $ ( 'privacy' ).value = 0;

	$ ( 'label_invia' ).style.display = 'block';
	$ ( 'btnInvia' ).style.display = 'block';
};
//}}}
//{{{ check_form_nosend
FormRq.check_form_nosend = function ()
{
	$ ( 'label_invia' ).style.display = 'none';
	$ ( 'btnInvia' ).style.display = 'none';
};
//}}}
//{{{ check_radio ( radio )
FormRq.check_radio = function ( radio )
{
	var check = true;
	if ( radio )
	{
		if ( radio[0].checked || radio[1].checked )
		{
			FormRq.radio_selected ( radio[0] );
			check = false;
		}
		else
			FormRq.radio_noselected ( radio[0] );
	}

	return check;
};
//}}}
//{{{ radio_selected ( elem )
FormRq.radio_selected = function ( elem )
{
	if ( elem )
		elem.parentNode.style.background = 'white';
};
//}}}
//{{{ radio_noselected ( elem )
FormRq.radio_noselected = function ( elem )
{
        if ( elem )
                elem.parentNode.style.background = 'yellow';
};
//}}}

//{{{ check_onsubmit ()
FormRq.check_onsubmit = function ()
{
	var check = true;
	var appo = "";
	var job_counter = 0;
	var i = 0;
	var act = '';

	appo = FormRq.check_empty ( $ ( 'cognome' ) );
	if ( check && appo )
		check = false;

	appo = FormRq.check_empty ( $ ( 'nome' ) );
	if ( check && appo )
		check = false;

	appo = FormRq.check_data_value ( $ ( 'dd' ) );
	if ( check && ! appo )
		check = false;

        appo = FormRq.check_data_value ( $ ( 'mm' ) );
        if ( check && ! appo )
                check = false;

        appo = FormRq.check_data_value ( $ ( 'yyyy' ) );
        if ( check && ! appo )
                check = false;

	appo = FormRq.check_empty ( $ ( 'cf' ) );
	if ( ! appo )
	{
        	appo = FormRq.check_cf ( $ ( 'cf' ) );
        	if ( ! appo )
                	check = false;
	}
	else
		$ ( 'cf' ).style.background = 'white';

	appo = FormRq.check_empty ( $ ( 'citta_res' ) );
	if ( check && appo )
		check = false;


	appo = FormRq.check_italy_prov ( $ ( 'stato_res' ) );
	if ( check && appo )
		check = false;

	appo = FormRq.check_phone ( $ ( 'tel_pref' ) );
	if ( check && ! appo )
		check = false;

	appo = FormRq.check_phone ( $ ( 'tel' ) );
	if ( check && ! appo )
		check = false;


	appo = FormRq.check_empty ( $ ( 'email' ) );
	if ( appo )
	{
		act = Utils.get_mode_location ( "mode" );
		if ( act == "office" )
			$ ( 'email' ).style.background = 'white';
		else
		{
			appo = FormRq.check_email_value ( $ ( 'email' ) );
			if ( check && ! appo )
				check = false;
		}
	}
	else
	{
		appo = FormRq.check_email_value ( $ ( 'email' ) );
		if ( check && ! appo )
			check = false;
		
	}


	appo = FormRq.check_radio ( $ ( 'form' ).sesso );
	if ( check && appo )
		check = false;
	appo = FormRq.check_radio ( $ ( 'form' ).citt_ita );
	if ( check && appo )
		check = false;
	appo = FormRq.check_radio ( $ ( 'form' ).mezzi_p );
	if ( check && appo )
		check = false;

	appo = FormRq.check_empty ( $ ( 'titolo_studi' ) );
	if ( ! appo )
	{
		if ( FormRq.titolo_studi_value [ $ ( 'titolo_studi' ).value ] && FormRq.titolo_studi_value [ $ ( 'titolo_studi' ).value ] == 1 )
		{
        		appo = FormRq.check_empty ( $ ( 'studi' ) );
        		if ( check && appo )
                		check = false;
		}
	}
	else
		check = false;


	appo = FormRq.check_empty ( $ ( 'inglese' ) );
	if ( check && appo )
		check = false;

	appo = FormRq.check_radio ( $ ( 'form' ).usopc );
	if ( check && appo )
		check = false;

	appo = FormRq.check_empty ( $ ( 'settore_int' ) );
	if ( check && appo )
		check = false;
	appo = FormRq.check_empty ( $ ( 'mansione_d' ) );
	if ( check && appo )
		check = false;
	appo = FormRq.check_radio ( $ ( 'form' ).stage );
	if ( check && appo )
		check = false;

	// ---------------- Esperienze lavorative ----------------------
	for ( i = 1; i <= 3; i++ )
	{
		if ( $ ( 'esp_lavoro' + i ).style.display == 'block' )
		{
			appo = FormRq.check_and_set_esp_lavoro ( i );

			//if ( appo ) FormRq.reset_data_fields ( i );
			if ( check && ! appo )
				check = false;
		}
	}

	return check;
};
//}}}
//{{{ set_background_error ( elem )
FormRq.set_background_error = function ( elem )
{
	if ( elem )
		elem.style.background = 'yellow';
};
//}}}
//{{{ check_value_onsubmit ()
FormRq.check_value_onsubmit = function ()
{
	var check = false;
	var error_cnt = $ ( 'privacy_check' );

	var _top = '';
	var s = '';

	_top = Utils.get_input_offsetTop ( $ ( 'privacy_check' ) );

	if ( $ ( 'privacy' ).value == 0 )
	{
		s = '<b>Accettare il trattamento della privacy per inviare i dati<\/b>';
		Utils.print_error ( error_cnt, s );
	}
	else
	{
		check = FormRq.check_onsubmit ();
	
		if ( ! check )
		{
			
			s = '<b>Inserire i valori corretti in tutti i campi evidenziati dal colore giallo<\/b>';
			Utils.print_error ( error_cnt, s );
		}
	}

	return check;
};
//}}}
//{{{ FormRq.reset_data_fields ( i )
FormRq.reset_data_fields = function ( i )
{
	if ( i )
	{
		$ ( "azienda" + i ).value = "";
		$ ( "azienda" + i ).style.background = 'white';
		$ ( "sett_az" + i ).value = "";
		$ ( "sett_az" + i ).style.background = 'white';
		$ ( "mansione_esp_lavoro" + i ).value = "";
		$ ( "mansione_esp_lavoro" + i ).style.background = 'white';
		$ ( "contr_esp_lavoro" + i ).value = "";
		$ ( "contr_esp_lavoro" + i ).style.background = 'white';
		$ ( "g_da_esp_lavoro" + i ).value = "gg";
		$ ( "g_da_esp_lavoro" + i ).style.background = 'white';
		$ ( "m_da_esp_lavoro" + i ).value = "mm";
		$ ( "m_da_esp_lavoro" + i ).style.background = 'white';
		$ ( "y_da_esp_lavoro" + i ).value = "aaaa";
		$ ( "y_da_esp_lavoro" + i ).style.background = 'white';
		$ ( "g_a_esp_lavoro" + i ).value = "gg";
		$ ( "g_a_esp_lavoro" + i ).style.background = 'white';
		$ ( "m_a_esp_lavoro" + i ).value = "mm";
		$ ( "m_a_esp_lavoro" + i ).style.background = 'white';
		$ ( "y_a_esp_lavoro" + i ).value = "aaaa";
		$ ( "y_a_esp_lavoro" + i ).style.background = 'white';

		Utils.hide_error ();//Utils.f.Destroy();
	}
};
//}}}
//{{{ check_and_set_esp_lavoro ( i )
FormRq.check_and_set_esp_lavoro = function ( i )
{
	var check = true;
	var appo = '';

	if ( Utils.check_empty_input ( $ ( "azienda" + i ).value ) && Utils.check_empty_input ( $ ( "sett_az" + i ).value ) && Utils.check_empty_input ( $ ( "mansione_esp_lavoro" + i ).value ) && Utils.check_empty_input ( $ ( "contr_esp_lavoro" + i ).value ) && $ ( "g_da_esp_lavoro" + i ).value == 'gg' && $ ( "m_da_esp_lavoro" + i ).value == "mm" && $ ( "y_da_esp_lavoro" + i ).value == "aaaa" && $ ( "g_a_esp_lavoro" + i ).value == 'gg' && $ ( "m_a_esp_lavoro" + i ).value == "mm" && $ ( "y_a_esp_lavoro" + i ).value == "aaaa")
	{
		check = true;
	}
	else
	{  
		appo =  FormRq.check_empty ( $ ( "azienda" + i ) );
		if ( check && appo )
			check = false;
		appo =  FormRq.check_empty ( $ ( "sett_az" + i ) );
		if ( check && appo )
			check = false;
		appo =  FormRq.check_empty ( $ ( "mansione_esp_lavoro" + i ) );
		if ( check && appo )
			check = false;
		appo =  FormRq.check_empty ( $ ( "contr_esp_lavoro" + i ) );
		if ( check && appo )
			check = false;
		appo = FormRq.check_data_value ( $ ( "g_da_esp_lavoro" + i ) );
		if ( check && ! appo )
			check = false;
		appo = FormRq.check_data_value ( $ ( "m_da_esp_lavoro" + i ) );
		if ( check && ! appo )
			check = false;
		appo = FormRq.check_data_value ( $ ( "y_da_esp_lavoro" + i ) );
		if ( check && ! appo )
			check = false;
		appo = FormRq.check_data_value ( $ ( "g_a_esp_lavoro" + i ) );
		if ( check && ! appo )
			check = false;
		appo = FormRq.check_data_value ( $ ( "m_a_esp_lavoro" + i ) );
		if ( check && ! appo )
			check = false;
		appo = FormRq.check_data_value ( $ ( "y_a_esp_lavoro" + i ) );
		if ( check && ! appo )
			check = false;
	}

	return check;
};
//}}}
//{{{ italy_prov ( elem, str )
FormRq.italy_prov = function ( elem, str )
{
	var check = true;

	if ( elem )
	{
		check = FormRq.check_empty ( elem );
                if ( check )
                {
                        Utils.print_error ( elem, 'Inserire i valori nel campo: <b>' + str.toUpperCase() + '<\/b>' );
                }
		else if ( elem.value != "Italia" )
		{
			$ ( 'prov_res' ).value = 'No Italia';
			$ ( 'prov_res' ).style.background = 'white';
			Utils.hide_error ();//Utils.f.Destroy();
		}
		else 
		{
			$ ( 'prov_res' ).value = '';
			Utils.hide_error ();//Utils.f.Destroy();
		}
	}
};
//}}}
//{{{ check_italy_prov ( elem )
FormRq.check_italy_prov  = function ( elem )
{
	var check = true;
	var appo = true;

        if ( elem )
        {
                check = FormRq.check_empty ( elem );
                if ( check )
		{
			elem.style.background = 'yellow';
			$ ( 'prov_res' ).style.background = 'yellow';
		}
		else
                {
			appo = FormRq.check_empty ( $ ( 'prov_res' ) );
			if ( appo && ! check )
				check = true;
			

			if ( ! check && elem.value != "Italia" && $ ( 'prov_res' ).value != 'No Italia' || ! check && elem.value == "Italia" && $ ( 'prov_res' ).value == 'No Italia' )
			{
				elem.style.background = 'yellow';
                        	$ ( 'prov_res' ).style.background = 'yellow';
				check = true;
			}
                }
	}

	return check;
};
//}}}
//{{{ check_empty_provres ( elem, str )
FormRq.check_empty_provres = function ( elem, str )
{
	var check = true;

	if ( elem )
	{
		check = FormRq.check_empty ( elem );
        	if ( check )
		{
                	Utils.print_error ( elem, 'Inserire i valori nel campo: <b>' + str.toUpperCase() + '<\/b>' );
		}
        	else
			Utils.hide_error ();//Utils.f.Destroy();
	}
};
//}}}
//{{{ check_phone ( elem )
FormRq.check_phone = function ( elem )
{
	var check = false;

	check = FormRq.check_empty ( elem );
	if ( ! check )
	{
		check = Utils.isInteger ( elem.value );
		if ( check )
		{
			Utils.hide_error ();//Utils.f.Destroy();
			elem.style.background = 'white';
		}
		else
			elem.style.background = 'yellow';
	}
	else 
		check = false;

	return check;
};
//}}}
//{{{ check_phone_value ( elem, str )
FormRq.check_phone_value = function ( elem, str )
{
	var check = false;

	check = FormRq.check_phone ( elem );

	if ( ! check ) Utils.print_error ( elem, 'Inserire i valori nel campo: <b>' + str.toUpperCase() + '<\/b>' );
	else Utils.hide_error ();//Utils.f.Destroy(); 

	return check;
};
//}}}
//{{{ fill_now_data ( n )
FormRq.fill_now_data = function ( n )
{
	var fields = [ "g_a_esp_lavoro", "m_a_esp_lavoro", "y_a_esp_lavoro" ];
	var v, i, l = fields.length;
	var d = [ Utils.get_now_day (), Utils.get_now_month (), Utils.get_now_year () ];
	if ( n )
	{
		for ( i = 0; i < l; i ++ )
		{
			if ( $ ( fields [ i ] + n ) )
			{
				v = $ ( fields [ i ] + n );
				v.value = d [ i ];
				v.style.background = 'white';
			}
		}
		Utils.hide_error ();//Utils.f.Destroy();
	}
	
};
//}}}
//{{{ reset_elem ( name )
FormRq.reset_elem = function ( name )
{
	var res = false;
	var cnt, i , l;

        if ( name )
	{
		res = Utils.reset_elem ( name );
		if ( res )
			Utils.setall_background_form_fields ( name, 'white' );
		//radio: devo cancellare il box giallo
		cnt = Utils.get_by_class ( 'radio_b' );
		l = cnt.length;
		for ( i = 0; i < l; i ++ )
		{
			if ( cnt [ i ].className == "radio_b" )
				cnt [ i ].parentNode.style.background = 'white';
		}
	}

	//reset valore hidden privacy 
	$ ( 'privacy' ).value = 0;

	Utils.destroy_error ();//Utils.f.Destroy();
};
//}}}
//{{{ create_email_input ( id_mandatory_box )
FormRq.create_email_input = function ( id_mandatory_box )
{
	var s = '<input class="input_data" type="text" id="email" size="30" maxlength="38" name="email" onblur=\'javascript:FormRq.check_email(this);\'\/>';
	var act = Utils.get_mode_location ( "mode" );


	if ( act == "office" )
	{
		s  = '<input class="input_data" type="text" id="email" size="30" maxlength="38" name="email" onblur=\'javascript:FormRq.check_email(this,1);\'\/>';
		if ( id_mandatory_box )
			$ ( id_mandatory_box ).innerHTML = '';
	}

	return s;
};
//}}}
