var NOREGLINK = "http://www.clientiwkip.it/"
var REGLINK   = "http://bd%(opera)s.leggiditalia.it/cgi-bin/FulPower?MSK=%(mask)s&OPERA=%(opera)s&SSCKEY=%(ssckey)s";
var REGLINK_FISCO = "http://home.ilfisco.it/perl/public_wkilogin.pl?&SSCKEY=%(ssckey)s&OPERA=%(opera)s&AUTH=%(auth)s";
var REGLINK_FORMAZIONE = "http://212.239.37.181/fadcom/asp/wkiauth.asp?c=wkientilocali&SSCKEY=%(ssckey)s&OPERA=AQ&AUTH=%(auth)s";

var Entilocali = {};
Entilocali.templates = {};
Entilocali.islogged  = false;

//{{{ on_login ( vars )	
function on_login ( vars )
{
	if ( vars && vars [ 'login' ] )
	{
		Entilocali.islogged = true;
        	Entilocali.anteprima_news_quotidiano ();
        	Entilocali.anteprima_articoli_quotidiano ();
        	Entilocali.anteprima_approfondimenti_quotidiano ();
        	Entilocali.anteprima_osservatorio_quotidiano ();
		Entilocali.load_user_ops ( vars [ 'attive' ], vars [ 'ssckey' ] );
	}
}//}}}
//{{{ clear_div_link ()
Entilocali.clear_div_link = function ()
{
	var i, items = Utils.getElementsByClass ( "link_txt", "div" );
	var len = items.length;

	for ( i = 0; i < len; i++ )
	{
		Entilocali._set_link ( Utils.getElementsByClass ( "no_reg", "a", items [ i ] ) );
		Entilocali._set_link ( Utils.getElementsByClass ( "titoletto_big", "a", items [ i ] ) );
		Entilocali._set_link ( Utils.getElementsByClass ( "", "a", items [ i ] ) );
	}
};
//}}}
//{{{ _set_link ( arr )
Entilocali._set_link = function ( arr )
{
	var op, t, l = arr.length;

	for ( t = 0; t < l; t++ )
	{
		if ( arr [ t ] [ 'id' ] )
		{
			op = new String ( arr [ t ] [ 'id' ] );
			op = op.split ( "_" );
			if ( op [ 2 ] )
			{
				if ( op [ 2 ].slice ( -5 ) == ".html"  )
					arr [ t ].setAttribute( 'href', op [ 2 ] + "#rivista=" + op [ 1 ] );
				else
				{
					if ( op [ 1 ] == 'LD' ) op [ 1 ] = '40';	//FIXME: per LD setto il coupon = opera 40

					//TOREMOVE
					if (  [ 'AT', 'AZ', 'AY', 'AX', 'H0' ].indexOf ( op [ 1 ] ) >= 0 )
						arr [ t ].setAttribute( 'href', "javascript:Utils.create_frame('http://el.leggiditalia.it/studiolegale/coupon/" + op [ 1 ] + "')" );
					else
					{
						if ( op [ 1 ] == 'DX' ) arr [ t ].setAttribute( 'href', "http://www.clientiwkip.it/coupon9275" );
						else arr [ t ].setAttribute( 'href', NOREGLINK + "coupon" + op [ 1 ] );
					}
				}
			}
		}
		else arr [ t ].setAttribute( 'href', NOREGLINK );
	}
};
//}}}
//{{{ clear_op_list()
Entilocali.clear_op_list = function ()
{
	// $ ( 'login_div' ).style.visibility = 'hidden';
	ajax_request ( "/cgi-bin/AjaxCmd", { "command": "get_opere" }, 
		function ( v ) {
			ajax_request ( "/cgi-bin/AjaxCmd", { "command": "list_opere" }, function ( v1 ) {
				Entilocali._opere_list = v1;
				Entilocali.clear_div_link ();
				login_done ( v );
			});
		}
	);
};
//}}}

//{{{ load_user_ops ( attive )
Entilocali.load_user_ops = function ( attive, ssckey )
{
	if ( ! attive ) return;

	var t, i, count = attive.length;
	var links = Utils.getElementsById ( "op_", "div" );
	links = links.concat ( Utils.getElementsById ( "op_", "a" ) );
	var item, vals;
	var dict = {};
	var plus = {};
	var new_op = '';

	/*
	var esperto_access = $ ( 'leggi_risp_access' );
	var esperto_access_lnk = $ ( 'leggi_risp_accedi' );
	var esperto_lnk_menu = $ ( 'lnk_leggi_itarisp' );

	if ( attive.indexOf ( 'B8' ) >= 0 )
	{
		esperto_access.style.display = 'block';
		esperto_access_lnk.setAttribute ( 'href', '/esperto_home.html' );
		esperto_lnk_menu.setAttribute ( 'href', '/esperto_home.html' );
		esperto_access_lnk.style.display = 'block';
	}
	else
	{
		esperto_access.style.display = 'none';
		esperto_access_lnk.style.display = 'none';
		esperto_access_lnk.setAttribute ( 'href', '' );
		esperto_lnk_menu.setAttribute ( 'href', '' );
	}
	*/

	for ( t = 0; t < count; t ++ )
	{
		dict [ attive [ t ] ] =  attive [ t ] ;

		// Se ho le opere di tipo "R", mi aggiungo anche le corrispettive
		// di tipo '8'
		if ( attive [ t ].charAt ( 0 ) == 'R' )
		{
			new_op = attive [ t ].replace ( 'R', '8' );
			dict [ new_op ] = new_op;
		}
	}


	count = links.length;
	
	for ( t = 0; t < count; t++ )
	{
		item = links [ t ];
		vals = item.id.split ( "_" );

		if ( ! vals [ 1 ] ) continue;

		//console.debug ( "OPERA: " + vals [ 1 ] );

		if ( vals [ 1 ] < 80 && ! dict [ vals [ 1 ] ] ) continue; 

		if ( vals [ 1 ] > 80 && vals [ 1 ] < 90 && ! dict [ vals [ 1 ] ] && ! dict [ 'R' + vals [ 1 ].charAt ( 1 ) ] ) continue;


		if ( ! item.className && dict [ vals [ 1 ] ] )
			item.parentNode.className = 'long_reg';
		else if ( item.className == 'titoletto_big' )
			item.className = 'titoletto_big_reg';
		else if ( dict [ vals [ 1 ] ] )
				item.className = 'reg';

		if ( vals [ 2 ] && vals [ 2 ].slice ( -5 ) == ".html"  )
			item.setAttribute( 'href', vals [ 2 ] + "#rivista=" + vals [ 1 ] );
		else
		{
			var _mod_opere = Entilocali._opere_list.get ( 'keys', {} ).get ( vals [ 1 ] + '_OPERASEZ', "" ).split ( " " );
			var i, l_op = _mod_opere.length;
			var chk_op = false;

			if ( l_op > 0 )
			{
				for ( i = 0; i < l_op; i ++ )
				{
					var _op = _mod_opere [ i ];
					if ( attive.indexOf ( _op ) >= 0 )
					{
						chk_op = true;
						break;
					}
				}

				if ( chk_op )
				{
					item.setAttribute ( 'href', String.formatDict ( REGLINK, { opera: vals [ 1 ], mask: '', ssckey: ssckey } ) );
					item.className = 'reg';
				}
				else
				{
					var cp = { "DX": "9275" };
					item.setAttribute ( 'href', NOREGLINK + "coupon" + ( cp.get ( vals [ 1 ] ) ? cp.get ( vals [ 1 ] ) : vals [ 1 ] ) );
				}
			}

			//if ( ( vals [ 1 ] == '90' && dict [ '90' ] ) || ( vals [ 1 ] == 'H0' && dict [ 'H0' ] ) )
			if ( ( [ 'H0', 'H1', 'H2', '90', '92' ].indexOf ( vals [ 1 ] ) >= 0  && dict [ vals [ 1 ] ] ) )
			{
				var auth = MD5.hex_md5 ( ssckey + vals [ 1 ] + 'errepici' );

				var dct = {
					opera: vals [ 1 ],
					mask: vals [ 2 ],
					ssckey: ssckey,
					auth: auth
				};

				var hf = String.formatDict ( REGLINK_FISCO, dct );

				//if ( vals [ 1 ] == 'H0' ) hf += "&REDIR=fol.pl?aux-restricted=dot";

				item.setAttribute ( 'href', hf );
			} 
			else if ( vals [ 1 ] == 'AQ' && dict [ 'AQ' ] )
			{
				var auth = MD5.hex_md5 ( ssckey + 'AQerrepici' );
				item.setAttribute ( 'href', String.formatDict ( REGLINK_FORMAZIONE, { opera: vals [ 1 ],
					ssckey: ssckey, auth: auth } ) );
			}
			else if ( dict [ vals [ 1 ] ] )
			{
				var msk = "";
				if ( ( [ "68", "14", "73" ].indexOf ( vals [ 1 ] ) >= 0 ) && ( vals [ 2 ] != "home" ) ) msk = vals [ 2 ];

				item.setAttribute ( 'href', String.formatDict ( REGLINK, { opera: vals [ 1 ], mask: msk, ssckey: ssckey } ) );
			}

		}
	}

};
//}}}
//{{{ hide_elems ()	
function hide_elems ()
{
	$ ( 'banner' ).style.visibility = 'hidden';
	$ ( 'left_banner' ).style.visibility = 'hidden';
	$ ( 'left_banner' ).style.height = '0px';
}//}}}
//{{{ visible_elems ()	
function visible_elems ()
{
	$ ( 'login_div' ).style.visibility = 'inherit';
	$ ( 'banner' ).style.visibility = 'inherit';
	$ ( 'left_banner' ).style.visibility = 'inherit';
}
//}}}
//{{{ anteprima_news_quotidiano ( tipo )
Entilocali.anteprima_news_quotidiano = function ( tipo )
{
        var a = {};
	var d = new Date();
	var today = d.getYear() + "-" + ( d.getMonth() + 1 ) + "-" + d.getDate();

        fq.clear ();
	fq.set_fields ( "ID", "DATA", "TITOLO", "CLASSDESCR", "TIPO" );
        fq.mode = "QUERY";
        fq.db_name = "QUOTY34";
	fq.opera = "34";

	if ( tipo ) fq.add ( "TIPO", "EQUAL", tipo );
	else fq.add ( "TIPO", "EQUAL", 92 );

	fq.add ( "FULTIPO", "EQUAL", 5 );
        fq.add ( "FLAG_ANTEPRIMA", "EQUAL", 'S' );
	//fq.order_by = 'DATA DESC, CLASSDESCR';
        fq.lines = 5;

	fq.set_id ();
	
        fq.fill ( a );
        am.request ( "/cgi-bin/FulQuery", a, Entilocali.anteprima_news_quotidiano_done, true );
};
//}}}
//{{{ anteprima_news_quotidiano_done ()
Entilocali.anteprima_news_quotidiano_done = function ( vars )
{
        var row, t, l;
        var s = '';
	var tipo = 0;
	var tab = { 92: 'main_t1', 75: 'main_t5' };

        l = vars [ 'to_row' ];
        for ( t = 0; t <= l; t ++ )
	{
		row = Array.fromObject ( vars [ 'row' + t ] );
		row [ 'DATA' ] = Utils.order_date ( Utils.change_sep_date ( row [ 'DATA' ], "-", "/" ), "/", "IT" );
                if ( row [ 'TITOLO' ].length > 98 )
                        row [ 'TITOLO' ] = row [ 'TITOLO' ].slice ( 0, 98 ) + "...";

		if ( ! tipo && row [ 'TIPO' ] )
			tipo = row [ 'TIPO' ];
		//Le news sono public
		if ( row [ 'TIPO' ] && row [ 'TIPO' ] == 92 )
                	s += String.formatDict ( Entilocali.templates [ 'anteprima_news' ], row);
		else if ( row [ 'TIPO' ] && row [ 'TIPO' ] == 75 )
                	s += String.formatDict ( Entilocali.templates [ 'anteprima_news_adnk' ], row);
	}

        if ( s ) $ ( tab [ tipo ] ).innerHTML = s;
};
//}}}
//{{{ anteprima_articoli_quotidiano ()
Entilocali.anteprima_articoli_quotidiano = function ()
{
        var a = {};
	var d = new Date();
	var today = d.getYear() + "-" + ( d.getMonth() + 1 ) + "-" + d.getDate();

        fq.clear ();
	fq.set_fields ( "ID", "DATA", "TITOLO", "CLASSDESCR" );
        fq.mode = "QUERY";
        fq.db_name = "QUOTY34";
        fq.add ( "TIPO", "EQUAL", 86 );
        fq.add ( "FLAG_ANTEPRIMA", "EQUAL", 'S' );
	//fq.order_by = 'DATA DESC, CLASSDESCR';
        fq.lines = 5;
	fq.opera = "34";

	fq.set_id ();

        fq.fill ( a );
        am.request ( "/cgi-bin/FulQuery", a, Entilocali.anteprima_articoli_quotidiano_done, true );
};
//}}}
//{{{ anteprima_articoli_quotidiano_done ()
Entilocali.anteprima_articoli_quotidiano_done = function ( vars )
{
        var row, t, l;
        var s = '';

        l = vars [ 'to_row' ];
        for ( t = 0; t <= l; t ++ )
	{
		row = Array.fromObject ( vars [ 'row' + t ] );
		row [ 'DATA' ] = Utils.order_date ( Utils.change_sep_date ( row [ 'DATA' ], "-", "/" ), "/", "IT" );
                if ( row [ 'TITOLO' ].length > 92 )
                        row [ 'TITOLO' ] = row [ 'TITOLO' ].slice ( 0, 90 ) + "...";//FIXME: creare funzione per gestire il taglio della parola se è una entity
		if ( Entilocali.islogged )
                	s += String.formatDict ( Entilocali.templates [ 'anteprima_articoli' ], row);
		else
		{
			row [ 'OPERA' ] = '34';
                	s += String.formatDict ( Entilocali.templates [ 'anteprima_articoli_nologged' ], row);
		}
	}
        $ ( 'main_t2' ).innerHTML = s;
};
//}}}
//{{{ anteprima_approfondimenti_quotidiano ()
Entilocali.anteprima_approfondimenti_quotidiano = function ()
{
        var a = {};
	var d = new Date();
	var today = d.getYear() + "-" + ( d.getMonth() + 1 ) + "-" + d.getDate();

        fq.clear ();
	fq.set_fields ( "ID", "DATA", "TITOLO", "CLASSDESCR" );
        fq.mode = "QUERY";
        fq.db_name = "QUOTY34";
        fq.add ( "TIPO", "EQUAL", 87 );
        fq.add ( "FLAG_ANTEPRIMA", "EQUAL", 'S' );
	//fq.order_by = 'DATA DESC, CLASSDESCR';
        fq.lines = 5;
	fq.opera = "34";

	fq.set_id ();
        fq.fill ( a );
        am.request ( "/cgi-bin/FulQuery", a, Entilocali.anteprima_approfondimenti_quotidiano_done, true );
};
//}}}
//{{{ anteprima_approfondimenti_quotidiano_done ()
Entilocali.anteprima_approfondimenti_quotidiano_done = function ( vars )
{
        var row, t, l;
        var s = '';

        l = vars [ 'to_row' ];
        for ( t = 0; t <= l; t ++ )
	{
		row = Array.fromObject ( vars [ 'row' + t ] );
		row [ 'DATA' ] = Utils.order_date ( Utils.change_sep_date ( row [ 'DATA' ], "-", "/" ), "/", "IT" );
                if ( row [ 'TITOLO' ].length > 98 )
                        row [ 'TITOLO' ] = row [ 'TITOLO' ].slice ( 0, 98 ) + "...";

                if ( Entilocali.islogged )
                	s += String.formatDict ( Entilocali.templates [ 'anteprima_approfondimenti' ], row);
                else
                {
                        row [ 'OPERA' ] = '34';
                        s += String.formatDict ( Entilocali.templates [ 'anteprima_approfondimenti_nologged' ], row);
		}

	}
        $ ( 'main_t3' ).innerHTML = s;
};
//}}}
//{{{ anteprima_osservatorio_quotidiano ()
Entilocali.anteprima_osservatorio_quotidiano = function ()
{
        var a = {};
	var d = new Date();
	var today = d.getYear() + "-" + ( d.getMonth() + 1 ) + "-" + d.getDate();

        fq.clear ();
	fq.set_fields ( "ID", "DATA", "TITOLO", "CLASSDESCR" );
        fq.mode = "QUERY";
        fq.db_name = "QUOTY34";
        fq.add ( "TIPO", "EQUAL", 88 );
        fq.add ( "FLAG_ANTEPRIMA", "EQUAL", 'S' );
	//fq.order_by = 'DATA DESC, CLASSDESCR';
        fq.lines = 5;
	fq.opera = "34";

	fq.set_id ();
        fq.fill ( a );
        am.request ( "/cgi-bin/FulQuery", a, Entilocali.anteprima_osservatorio_quotidiano_done, true );
};
//}}}
//{{{ anteprima_osservatorio_quotidiano_done ()
Entilocali.anteprima_osservatorio_quotidiano_done = function ( vars )
{
        var row, t, l;
        var s = '';

        l = vars [ 'to_row' ];
        for ( t = 0; t <= l; t ++ )
	{
		row = Array.fromObject ( vars [ 'row' + t ] );
		row [ 'DATA' ] = Utils.order_date ( Utils.change_sep_date ( row [ 'DATA' ], "-", "/" ), "/", "IT" );
		if ( row [ 'TITOLO' ].length > 98 )
			row [ 'TITOLO' ] = row [ 'TITOLO' ].slice ( 0, 98 ) + "...";

                if ( Entilocali.islogged )
                	s += String.formatDict ( Entilocali.templates [ 'anteprima_osservatorio' ], row);
                else
                {
                        row [ 'OPERA' ] = '34';
                        s += String.formatDict ( Entilocali.templates [ 'anteprima_osservatorio_nologged' ], row);
                }
	}
        $ ( 'main_t4' ).innerHTML = s;
};
//}}}
//{{{ create_templates ()
Entilocali.create_templates = function ()
{
	var s = '';
	
        s  = '<div id="qel_banner01" class="qel_banner01">';
        s += '  <span id="qel_text01_light" class="qel_text01_light">QUOTIDIANO<\/span>';
        s += '  <span id="qel_text01_bold" class="qel_text01_bold">ENTI LOCALI<\/span>';
        s += '  <span id="qel_data" class="qel_data">' + Utils.get_it_full_nowdate () + '<\/span>';
        s += '<\/div>';
        s += '<div id="container_box" class="container_box" style="top: 0px;">';
	s += '<div class="red_line" style="top: 2px;"><\/div>';
	s += '	<div id="container_box" class="container_box_empty" style="top: 4px;">'
        s += '		<div class="nores">';
        s += '  		<div class="body_nores">';
        s += '          		<div class="noresult">%(str)s<\/div>';
        s += '  		<\/div>';
        s += '		<\/div>';
	s += '	<\/div>'
	s += ' <div id="page_url" style="display: none;">%(page_url)s<\/div>';
	s += '<\/div>'

	Entilocali.templates [ 'force_login' ] = s;

	s  = '<div class="qel_banner01" id="qel_banner01">';
	s += '  <span class="qel_text01_light" id="qel_text01_light">QUOTIDIANO<\/span>';
	s += '  <span class="qel_text01_bold" id="qel_text01_bold">ENTI LOCALI<\/span>';
	s += '  <span class="qel_data" id="qel_data">%(today)s<\/span>';
	s += '<\/div>';
	s += '<div class="qel_banner02" id="qel_banner02">';
	s += '  <div class="logo" id="logo"><\/div>';
	s += '  <span class="qel_text02_bold" id="qel_text02_bold">%(sezione)s<\/span>';
	s += '  <div class="icon_%(arg)s"><\/div>';
	s += '<\/div>';
	s += '	<div class="red_line"><\/div>';
	s += '<div class="container_box_empty" id="container_box">';

	Entilocali.templates [ 'header_sezioni' ] = s;

	s  = '<div class="line">';
	s += '	<div class="data">%(DATA)s<\/div>';
	s += '	<div class="trat">-<\/div>';
	s += '	<div class="titolo"><a href="/quotidiano_home.html#news=%(ID)s">%(TITOLO)s<\/a><\/div>';
	s += '<\/div>';


	Entilocali.templates [ 'anteprima_news' ] = s;

        s  = '<div class="line">';
        s += '  <div class="data">%(DATA)s<\/div>';
        s += '  <div class="trat">-<\/div>';
        s += '  <div class="titolo"><a href="/quotidiano_home.html#news_adnk=%(ID)s">%(TITOLO)s<\/a><\/div>';
        s += '<\/div>';


        Entilocali.templates [ 'anteprima_news_adnk' ] = s;

        s  = '<div class="line">';
        s += '  <div class="data">%(DATA)s<\/div>';
        s += '  <div class="trat">-<\/div>';
        s += '  <div class="titolo"><a href="' + NOREGLINK + 'elcoupon%(OPERA)s">%(TITOLO)s<\/a><\/div>';
        s += '<\/div>';

        Entilocali.templates [ 'anteprima_news_nologged' ] = s;

        s  = '<div class="line">';
        s += '  <div class="data">%(DATA)s<\/div>';
        s += '  <div class="trat">-<\/div>';
        s += '  <div class="titolo"><a href="/quotidiano_home.html#articoli=%(ID)s">%(TITOLO)s<\/a><\/div>';
        s += '<\/div>';

	Entilocali.templates [ 'anteprima_articoli' ] = s;

        s  = '<div class="line">';
        s += '  <div class="data">%(DATA)s<\/div>';
        s += '  <div class="trat">-<\/div>';
        s += '  <div class="titolo"><a href="' + NOREGLINK + 'elcoupon%(OPERA)s">%(TITOLO)s<\/a><\/div>';
        s += '<\/div>';

        Entilocali.templates [ 'anteprima_articoli_nologged' ] = s;

        s  = '<div class="line">';
        s += '  <div class="data">%(DATA)s<\/div>';
        s += '  <div class="trat">-<\/div>';
        s += '  <div class="titolo"><a href="/quotidiano_home.html#approfondimenti=%(ID)s">%(TITOLO)s<\/a><\/div>';
        s += '<\/div>';

	Entilocali.templates [ 'anteprima_approfondimenti' ] = s;

        s  = '<div class="line">';
        s += '  <div class="data">%(DATA)s<\/div>';
        s += '  <div class="trat">-<\/div>';
        s += '  <div class="titolo"><a href="' + NOREGLINK + 'elcoupon%(OPERA)s">%(TITOLO)s<\/a><\/div>';
        s += '<\/div>';

        Entilocali.templates [ 'anteprima_approfondimenti_nologged' ] = s;


        s  = '<div class="line">';
        s += '  <div class="data">%(DATA)s<\/div>';
        s += '  <div class="trat">-<\/div>';
        s += '  <div class="titolo"><a href="/quotidiano_home.html#osservatorio=%(ID)s">%(TITOLO)s<\/a><\/div>';
        s += '<\/div>';

	Entilocali.templates [ 'anteprima_osservatorio' ] = s;

        s  = '<div class="line">';
        s += '  <div class="data">%(DATA)s<\/div>';
        s += '  <div class="trat">-<\/div>';
        s += '  <div class="titolo"><a href="' + NOREGLINK + 'elcoupon%(OPERA)s">%(TITOLO)s<\/a><\/div>';
        s += '<\/div>';

        Entilocali.templates [ 'anteprima_osservatorio_nologged' ] = s;

};
//}}}
Entilocali.create_ricgen = function ( skip_h )
{
	RicGen.show_mask ( 'ricgenform' );
	$ ( 'block_main' ).style.display = 'none';
	$ ( 'block_main2' ).style.display = 'block';

	if ( ! skip_h ) History.add ( { 'ricerca_generale': null } );
};

Entilocali.create_ricgen_small = function ( skip_h )
{
	$ ( 'block_main' ).style.display = 'none';
	$ ( 'block_main2' ).style.display = 'block';

	RicGen.gen_search_click ( true );

	if ( ! skip_h ) History.add ( { 'ricerca_small': null } );
};

Entilocali._init = function ()
{
	Entilocali.create_templates ();
	Entilocali.clear_op_list ();
	Entilocali.anteprima_news_quotidiano ();
	Entilocali.anteprima_articoli_quotidiano ();
	Entilocali.anteprima_approfondimenti_quotidiano ();
	Entilocali.anteprima_osservatorio_quotidiano ();
	Entilocali.anteprima_news_quotidiano ( 75 );

	Entilocali.read_warning ();

	/*if ( window.location.host.startsWith ( 'lan' ) )
	{
		$ ( 'citt_web' ).style.display = 'block';
		$ ( 'citt_box_small' ).style.display = 'block';
	}*/

	$ ( 'block_main' ).style.display = 'block';
	$ ( 'block_main2' ).style.display = 'none';
};
//{{{ init ()
Entilocali.init = function ()
{
	History.setListener ( Entilocali.listener );
	History.init();
};
//}}}
//{{{ listener ( dict, data )
Entilocali.listener = function ( dict, data )
{
	var error_msg = String.formatDict ( Entilocali.templates [ 'force_login' ], { 'str': 'Per visualizzare questa pagina &egrave; necessario inserire username e password', 'page_url': window.location } );

	var statics = [
			[ "presentazione", "presentazione_home.htm" ],
			[ "chi_siamo", "chi_siamo.htm" ],
			[ "help", "help_home.htm" ],
			[ "i_miei_corsi_online", "i_miei_corsi_online.htm" ],
			[ "corso_privacy", "corso_privacy.htm" ],
			[ "catalogo_dei_corsi", "catalogo_dei_corsi.htm" ]
		      ];

	var l = statics.length, t;
	var k;
	
	for ( t = 0; t < l; t ++ )
	{
		k = statics [ t ];

		if ( dict [ k [ 0 ] ] != undefined )
		{
			Utils.show_static ( k [ 1 ] );
			break;
		}
	}

	if ( dict [ 'mode' ] && ( dict [ 'mode' ] == 'tab' ) )
		_tabs.reference [ 'main' ].show ( null, dict [ 'id' ].replace ( "main_", "" ) );

	if ( dict [ 'ricerca_generale' ] != undefined )
	{
		Entilocali.create_ricgen ( 1 );
		Entilocali.clear_op_list ();
		return false;
	}
	else if ( dict [ 'ricerca_small' ] != undefined )
	{
		Entilocali.create_ricgen_small ( 1 );
		Entilocali.clear_op_list ();
		return false;
	}
	else
	{
		Entilocali._init ();
		return false;
	}

};
//}}}

Entilocali.read_warning = function ()
{
	var a = { command: "dump_html", fname: "warning.html" };

	am.request ( '/cgi-bin/AjaxCmd', a, function ( vars ) {
		if ( ! vars [ 'content' ] ) return;

		var d = $( "warn_msg" );
		d.innerHTML = vars [ 'content' ];
		d.style.display = 'block';
	}, true );
};
