// Creazone delle immagini per l'overlay della mappa

var map_overlay_regioni = new Array();

var opacity_overlay_regioni = new Array();

var img_overlay_regioni = new Array();

var running_fade_in = new Array();
var running_fade_out = new Array();

var img_transparent = new Image();
img_transparent.src = '/images/transparent.gif';

var img_link_lista = new Image();
img_link_lista.src = '/images/dot_lista_regioni.gif';


var css_overlay_regioni = new Array(
    'map_abruzzo',
    'map_basilicata',
    'map_calabria',
    'map_campania',
    'map_emilia',
    'map_friuli',
    'map_lazio',
    'map_liguria',
    'map_lombardia',
    'map_marche',
    'map_molise',
    'map_piemonte',
    'map_puglia',
    'map_sardegna',
    'map_sicilia',
    'map_toscana',
    'map_trentino',
    'map_umbria',
    'map_valle_d_aosta',
    'map_veneto'
);

var pos_overlay_regioni = new Array(
    new Array(130, 140),
    new Array(182, 193),
    new Array(210, 202),
    new Array(170, 157),
    new Array(62, 60),
    new Array(18, 126),
    new Array(131, 106),
    new Array(76, 19),
    new Array(17, 45),
    new Array(97, 120),
    new Array(155, 161),
    new Array(21, 5),
    new Array(156, 183),
    new Array(176, 29),
    new Array(265, 125),
    new Array(82, 70),
    new Array(5, 84),
    new Array(108, 115),
    new Array(33, 9),
    new Array(16, 90)
);

var dim_overlay_regioni = new Array(
    new Array(39, 36),
    new Array(35, 35),
    new Array(35, 67),
    new Array(45, 45),
    new Array(73, 41),
    new Array(30, 29),
    new Array(55, 48),
    new Array(58, 24),
    new Array(60, 56),
    new Array(39, 38),
    new Array(27, 19),
    new Array(55, 69),
    new Array(82, 60),
    new Array(37, 71),
    new Array(76, 51),
    new Array(53, 63),
    new Array(43, 42),
    new Array(29, 36),
    new Array(25, 16),
    new Array(52, 56)
);

function overlay_regione(id_regione, direction){
    obj_link_lista = document.getElementById('link_regione_'+id_regione);
    id_regione -= 1;
    
    if(direction == true)
        regione_over(id_regione)
    else
        regione_out(id_regione);
    
    
}

function carica_immagine_mappa(obj_contenitore){

    // Creo l'immagine della mappa dell'italia
    var img_italia = document.createElement('img');
    img_italia.src = '/images/map_italia.gif';
    img_italia.style.position = 'absolute';
    img_italia.style.top = '0px';
    img_italia.style.left = '0px';
    img_italia.style.width = '280px';
    img_italia.style.height = '330px';
    obj_contenitore.appendChild(img_italia);


}


function crea_layer_mappa(obj_contenitore){

    // Creo il layer per le aree
    var layer_mappa = document.createElement('img');
    layer_mappa.src = '/images/transparent.gif';
    layer_mappa.style.position = 'absolute';
    layer_mappa.style.top = '0px';
    layer_mappa.style.left = '0px';
    layer_mappa.style.width = '280px';
    layer_mappa.style.height = '330px';
    layer_mappa.style.borderWidth = '0px';
    layer_mappa.setAttribute('usemap', '#italia', 0);
    obj_contenitore.appendChild(layer_mappa);
    
}

function crea_mappa_italia(id_contenitore){

    var contenitore_mappa_italia = document.getElementById(id_contenitore);
    contenitore_mappa_italia.style.position = 'relative';

    contenitore_mappa_italia.style.width = "1px";
    
    carica_immagine_mappa(contenitore_mappa_italia);
    
    //crea_overlay_regioni(id_contenitore);
    
    
    
    // Creo degli span nascosti per recuperare velocemente le classi css
    var span_preload_class_link_out = document.createElement('span');
    span_preload_class_link_out.className = 'link_regione_hp';
    span_preload_class_link_out.style.display = 'none';
    span_preload_class_link_out.id = 'class_css_link_out';
    contenitore_mappa_italia.appendChild(span_preload_class_link_out);
    
    
    // precedente crea_regioni*
    
    var span_preload_class_link_over = document.createElement('span');
    span_preload_class_link_over.className = 'link_regione_hp_js';
    span_preload_class_link_over.style.display = 'none';
    span_preload_class_link_over.id = 'class_css_link_over';
    contenitore_mappa_italia.appendChild(span_preload_class_link_over);
     
  
    // Creo gli overlay delle regioni
    var i;
    for(i=0; i<css_overlay_regioni.length; i++){
    
        var map_temp = document.createElement('div');
        
        map_temp.className = 'regione_'+css_overlay_regioni[i];
        map_temp.style.position = 'absolute';
        map_temp.style.top = pos_overlay_regioni[i][0]+'px';
        map_temp.style.left = pos_overlay_regioni[i][1]+'px';
        map_temp.style.width = dim_overlay_regioni[i][0]+'px';
        map_temp.style.height = dim_overlay_regioni[i][1]+'px';
        map_temp.style.display = 'none';
        map_temp.id = 'regione_'+i;

        map_overlay_regioni[i] = map_temp;
        opacity_overlay_regioni[i] = 0;
        running_fade_in[i] = false;
        running_fade_out[i] = false;
        
        contenitore_mappa_italia.appendChild(map_overlay_regioni[i]);
    }

    crea_layer_mappa(contenitore_mappa_italia);
    
}


function regione_over(id_regione){

	if (document.getElementById('class_css_link_over') == null)
		return;

    obj_link_lista.className = document.getElementById('class_css_link_over').className;
    obj_link_lista.getElementsByTagName('img')[0].src = img_link_lista.src;
    
    opacity_overlay_regioni[id_regione] = 100;
    if(map_overlay_regioni[id_regione])
        map_overlay_regioni[id_regione].style.display = 'block';
}

function regione_out(id_regione){

    obj_link_lista.className = document.getElementById('class_css_link_out').className;
    obj_link_lista.getElementsByTagName('img')[0].src = img_transparent.src;
    
    if(map_overlay_regioni[id_regione])
        map_overlay_regioni[id_regione].style.display = 'none';
    
}

window.onblur = function(){
    var i;
    for(i=0; i<map_overlay_regioni.length; i++)
        overlay_regione(i+1, false);
}

