var XHR = false;
var Red, Green, Blu,nTd;
var OldRed, OldGreen, OldBlu;
var NewRed, NewGreen, NewBlu;
var fR, fG, fB;
var dLeft;
var optChoiceType;
var FirstTime;

MyObj={
  init:function(){
    MyObj.DxTd = new Array(24);
    MyObj.SxTd = new Array(24);

    if (window.XMLHttpRequest){
        XHR = new XMLHttpRequest();
    }else if (window.ActiveXObject){
        XHR = new ActiveXObject("Microsoft.XMLHTTP");
    }

    MyObj.tab_01=document.getElementById('tab_01');
    if(!MyObj.tab_01){return;}

    MyObj.tab_02=document.getElementById('tab_02');
    if(!MyObj.tab_02){return;}

    MyObj.tab_03=document.getElementById('tab_03');
    if(!MyObj.tab_03){return;}

    MyObj.tab_04=document.getElementById('tab_04');
    if(!MyObj.tab_04){return;}

    MyObj.tab_05=document.getElementById('tab_05');
    if(!MyObj.tab_05){return;}

    MyObj.tab_06=document.getElementById('tab_06');
    if(!MyObj.tab_06){return;}

    MyObj.tab_07=document.getElementById('tab_07');
    if(!MyObj.tab_07){return;}

    MyObj.txt_email=document.getElementById('email');
    if(!MyObj.txt_email){return;}

    MyObj.header=document.getElementById('flash_header');
    if(!MyObj.header){return;}

    MyObj.menu=document.getElementById('menu_bar');
    if(!MyObj.menu){return;}

    MyObj.img_01=document.getElementById('img_01');
    if(!MyObj.img_01){return;}

    MyObj.txt_01=document.getElementById('txt_01');
    if(!MyObj.txt_01){return;}

    MyObj.div_albums=document.getElementById('flash_albums');
    if(!MyObj.div_albums){return;}
    
    MyObj.close_albums=document.getElementById('close_albums');
    if(!MyObj.close_albums){return;}
    
    MyObj.google_maps=document.getElementById('google_maps');
    if(!MyObj.google_maps){return;}
    
    MyObj.close_maps=document.getElementById('close_maps');
    if(!MyObj.close_maps){return;}
    
    for(var n=1; n<=24; n++){
        MyObj.DxTd[n-1]=document.getElementById('dx_' + n);
        MyObj.SxTd[n-1]=document.getElementById('sx_' + n);
    }

    if (screen.availWidth > 1024){
        MyObj.tab_01.style.width = screen.availWidth - 10;
        MyObj.tab_01.style.left = 5;

        dLeft = ((screen.availWidth - 920) / 2);
        MyObj.header.style.left = dLeft;
        MyObj.tab_02.style.left = dLeft + 10;
        MyObj.menu.style.left = dLeft + 305;
        MyObj.img_01.style.left = dLeft;
        MyObj.tab_03.style.left = dLeft + 10;
        MyObj.tab_04.style.left = dLeft + 308;
        MyObj.txt_01.style.left = dLeft + 338;
        MyObj.tab_05.style.left = dLeft + 720;
        MyObj.tab_07.style.left = dLeft + 308;
    }

    MyObj.tab_06.style.width = screen.availWidth;
    MyObj.tab_06.style.height = 1201;

    MyObj.div_albums.style.top = ((screen.availHeight - 450)/2) - 50;
    MyObj.div_albums.style.left = (screen.availWidth - 600)/2;
    
    MyObj.close_albums.style.top = (((screen.availHeight - 450)/2) - 50) + 446;
    MyObj.close_albums.style.left = ((screen.availWidth - 600)/2) + 600 - 56;
    
    MyObj.google_maps.style.top = ((screen.availHeight - 450)/2) - 50;
    MyObj.google_maps.style.left = (screen.availWidth - 600)/2;
    
    MyObj.close_maps.style.top = (((screen.availHeight - 450)/2) - 50) + 453;
    MyObj.close_maps.style.left = ((screen.availWidth - 600)/2) + 600 - 50;

    if (GBrowserIsCompatible()) {
        var map = new GMap2(document.getElementById("google_maps"));
    
        var eds_coor = new GLatLng(41.8790, 12.5252);
        var eds_marker = new GMarker(eds_coor);
        var eds_html = "<font face='tahoma' color='#0033cc' size='3'>Escuela De Salsa</font><br><font face='tahoma' color='#990000' size='4'>Havana Team</font><br><font face='tahoma' color='#000000' size='2'>Via Assisi, 37<br>00181 - Roma (RM)</font><br><br><font face='tahoma' color='#990000' size='2'>infoline: </font><font face='tahoma' color='#0033cc' size='2'>338/6031391 - 380/7171793</font>"
        
        var atac_coor = new GLatLng(41.8776, 12.5246);
        var atac_marker = new GMarker(atac_coor);
        var atac_html = "<font face='tahoma' color='#990000' size='2'>Linee ATAC</font><br><font face='tahoma' color='#0033cc' size='2'>85</font><font face='tahoma' color='#000000' size='2'> - da Piazza San Silvestro a Largo Dei Colli Albani</font><br><font face='tahoma' color='#0033cc' size='2'>16</font><font face='tahoma' color='#000000' size='2'> - da Via XX Settembre a Via G.Costamagna</font>";
        
        var mpl_coor = new GLatLng(41.8777, 12.5190);
        var mpl_marker = new GMarker(mpl_coor);
        var mpl_html = "<font face='tahoma' color='#990000' size='2'>Linea Metro A</font><br><font face='tahoma' color='#000000' size='2'>fermata: </font><font face='tahoma' color='#0033cc' size='2'>Ponte Lungo</font>"
        
        var mfc_coor = new GLatLng(41.8747, 12.5229);
        var mfc_marker = new GMarker(mfc_coor);
        var mfc_html = "<font face='tahoma' color='#990000' size='2'>Linea Metro A</font><br><font face='tahoma' color='#000000' size='2'>fermata: </font><font face='tahoma' color='#0033cc' size='2'>Furio Camillo</font>"
        
        var fs_coor = new GLatLng(41.8795, 12.5232);
        var fs_marker = new GMarker(fs_coor);
        var fs_html = "<font face='tahoma' color='#990000' size='2'>FS - Ferrovia Urbana FR1</font><br><font face='tahoma' color='#000000' size='2'>da Orte-Fara Sabina a Fiumicino Aeroporto<br>fermata: </font><font face='tahoma' color='#0033cc' size='2'>Tuscolana</font>"

        map.setCenter(eds_coor, 16);
        map.addOverlay(eds_marker);
        map.addOverlay(atac_marker);
        map.addOverlay(mpl_marker);
        map.addOverlay(mfc_marker);
        map.addOverlay(fs_marker);
        map.addControl(new GLargeMapControl());
        map.addControl(new GMapTypeControl());
    
        eds_marker.openInfoWindowHtml("<font face='tahoma' color='#0033cc' size='3'>Escuela De Salsa</font><br><font face='tahoma' color='#990000' size='4'>Havana Team</font><br><font face='tahoma' color='#000000' size='2'>Via Assisi, 37<br>00181 - Roma (RM)</font><br><br><font face='tahoma' color='#990000' size='2'>infoline: </font><font face='tahoma' color='#0033cc' size='2'>338/6031391 - 380/7171793</font>");
        
        GEvent.addListener(eds_marker, "click", function(){
            map.openInfoWindowHtml(eds_coor, eds_html);
        });
        
        GEvent.addListener(atac_marker, "click", function(){
            map.openInfoWindowHtml(atac_coor, atac_html);
        });
        
        GEvent.addListener(mpl_marker, "click", function(){
            map.openInfoWindowHtml(mpl_coor, mpl_html);
        });
        
        GEvent.addListener(mfc_marker, "click", function(){
            map.openInfoWindowHtml(mfc_coor, mfc_html);
        });
        
        GEvent.addListener(fs_marker, "click", function(){
            map.openInfoWindowHtml(fs_coor, fs_html);
        });
        
    }

    OldRed = 0;
    OldGreen = 0;
    OldBlu = 0;

    optChoiceType = 1;
    
    FirstTime = 1;

    MyObj.changeTableColor();
    MyObj.getData("eds_get_data.asp", "div_text");
    MyObj.timer = window.setInterval( 'MyObj.changeTableColor()', 2500 );
    MyObj.fader = window.setInterval('MyObj.nextColor()',100);

  },
  changeTableColor:function(){

    Red = OldRed;
    Green = OldGreen;
    Blu = OldBlu;

    NewRed = Math.round( Math.random( ) * 200) + 55;
    NewGreen = Math.round( Math.random( ) * 200) + 55;
    NewBlu = Math.round( Math.random( ) * 200) + 55;

    fR = Math.round((NewRed - OldRed) / 24);
    fG = Math.round((NewGreen - OldGreen) / 24);
    fB = Math.round((NewBlu - OldBlu) / 24);

    OldRed = NewRed;
    OldGreen = NewGreen;
    OldBlu = NewBlu;

  },
  nextColor:function(){

        Red += fR;
        Green += fG;
        Blu += fB;

        if (Red < 0){Red = 0}
        if (Red > 255){Red = 255}

        if (Green < 0){Green = 0}
        if (Green > 255){Green = 255}

        if (Blu < 0){Blu = 0}
        if (Blu > 255){Blu = 255}

        MyObj.FadeColor(Red, Green, Blu);
  },
  Dec2Hex:function(d) {
      if(d < 16){
        return '0' + d.toString(16);
      }else{
        return d.toString(16);
      }
  },
  Hex2Dec:function(h) {
    return parseInt(h,16);
  },
  sleep:function(msec){
    var then;
    var now;

    then=new Date().getTime();
    now=then;

    while((now - then)<msec){
        now=new Date().getTime();
    }
  },
  FadeColor:function(R, G, B){

    var NewColor;

    for (var n = 0; n < 24; n++){

        NewColor = '#' + MyObj.Dec2Hex(R) + MyObj.Dec2Hex(G) + MyObj.Dec2Hex(B);

        MyObj.DxTd[n].style.backgroundColor=NewColor;
        MyObj.SxTd[n].style.backgroundColor=NewColor;

        R -= 10; if (R < 0){R = 0;}
        G -= 10; if (G < 0){G = 0;}
        B -= 10; if (B < 0){B = 0;}

    }
  },
    getData:function(data_source, div_id){
        if (XHR){

            var target_div = document.getElementById(div_id);

            XHR.open("GET", data_source);

            XHR.onreadystatechange = function(){
                if (XHR.readyState == 4 && XHR.status == 200){
                    target_div.innerHTML = XHR.responseText;
                }
            }

            XHR.send(null);

        }
    },
    showNews:function(data_source, news_index, file_type){
        var top_position;

        //if (news_index>10) news_index=10;
        
        top_position = 435 + ((news_index - 1)* 39) - 200;
        if (top_position < 405) top_position = 305;
        if (top_position > 697) top_position = 697;
        

        MyObj.getData("./news/" + data_source, "div_news");
        if (news_index > 0) MyObj.tab_06.style.zIndex = 3;
        
        if (file_type == "HTML"){
            MyObj.tab_07.style.height=792;
            MyObj.tab_07.style.top = 305;
            
            if (window.ActiveXObject){
                MyObj.tab_07.filters.alpha.opacity=100;            
            }else{
                MyObj.tab_07.style.opacity = 1.0;            
            }

        }else{
            MyObj.tab_07.style.height=400;
            MyObj.tab_07.style.top = top_position;

            if (window.ActiveXObject){
                MyObj.tab_07.filters.alpha.opacity=92
            }else{
                MyObj.tab_07.style.opacity = .92;            
            }
            
        }
        
        MyObj.tab_07.style.zIndex = 4;
    },
    hideNews:function(){
        MyObj.tab_06.style.zIndex = -1;
        MyObj.tab_07.style.height = 400;
        MyObj.tab_07.style.top = 305;
        MyObj.tab_07.style.zIndex = -1;
        MyObj.getData("./news/0000 - empty.txt", "div_news");
    },
    check:function(choice){
        optChoiceType=choice;
    },
    hndEmail:function(){

        var e_mail
        var data_source;
        var ValueReturned;

        e_mail = MyObj.txt_email.value;

        if (!MyObj.isValidEmail(e_mail)){
            alert("il formato dell'indirizzo e-mail inserito e' errato.");
            MyObj.txt_email.value=""
            return
        }

        data_source="eds_newsletter.asp?EMAIL=" + e_mail + "&CHOICE=" + optChoiceType;

        if (XHR){

            XHR.open("GET", data_source);

            XHR.onreadystatechange = function(){

                if (XHR.readyState == 4 && XHR.status == 200){
                    ValueReturned = XHR.responseText;

                    //alert("ValueReturned = " + ValueReturned);

                    switch(ValueReturned){
                        case "1":
                            alert("indirizzo email inserito nella lista con successo.");
                            break;

                        case "2":
                            alert("indirizzo email rimosso dalla lista con successo.");
                            break;

                        case "3":
                            alert("indirizzo email gia' presente nella lista.");
                            break;

                        case "4":
                            alert("non e' stato possibile inserire nella lista l'indirizzo email.");
                            break;

                        case "5":
                            alert("non e' stato possibile cancellare dalla lista l'indirizzo email.");
                            break;

                        case "6":
                            alert("indirizzo email assente o gia' precedentemente rimosso dalla lista.");
                            break;

                        case "7":
                            alert("non e' stato possibile eseguire l'operazione richiesta");
                            break;

                    }
                }
            }

            XHR.send(null);

        }

        MyObj.txt_email.value=""
    },
    isValidEmail:function(e_mail){

        var provider;
        var atPos;
        var periodPos;

        atPos = e_mail.indexOf("@");
        if (atPos == -1) return false;

        provider = e_mail.substring(atPos + 1);

        periodPos = provider.indexOf(".");
        if (periodPos == -1) return false;

        return true;
    },
    showAlbums:function(){

        MyObj.tab_06.style.zIndex = 3;
        MyObj.close_albums.style.zIndex = 4;
        MyObj.div_albums.style.zIndex = 4;
        
        if (FirstTime == 1){
            MyObj.getData("./albums/eds_albums.txt", "flash_albums");
            FirstTime = 0;
        }else{
            if (navigator.appName == "Microsoft Internet Explorer"){
                MyObj.div_albums.style.top = ((screen.availHeight - 450)/2) - 50;
            }else{
                MyObj.getData("./albums/eds_albums.txt", "flash_albums");
            }
        }

    },
    hideAlbums:function(){
        
        if (navigator.appName == "Microsoft Internet Explorer"){
            MyObj.div_albums.style.top = -1000;
        }else{
            MyObj.div_albums.innerHTML = "&nbsp;";
        }
        MyObj.tab_06.style.zIndex = -1;
        MyObj.div_albums.style.zIndex = -1;
        MyObj.close_albums.style.zIndex = -1;
    },
    showMaps:function(){
        var vLeft = (screen.availWidth - 600) / 2
        var vTop = (screen.availHeight - 450) / 2
        
        if (navigator.appName == "Microsoft Internet Explorer"){
            window.open('http://www.escueladesalsa.com/public/eds/test/05/eds_maps.htm','_blank','width=600 ,height=450 ,top=' + vTop + ', left='+ vLeft +', location=0, menubar=0, resizable=0, scrollbars=0, status=0, toolbar=0');
        }else{
            MyObj.tab_06.style.zIndex = 3;
            MyObj.google_maps.style.zIndex = 4;
            MyObj.close_maps.style.zIndex = 4;
        }

    },
    hideMaps:function(){
        MyObj.tab_06.style.zIndex = -1;
        MyObj.google_maps.style.zIndex = -1;
        MyObj.close_maps.style.zIndex = -1;
    }
}
DOMhelp.addEvent(window,'load',MyObj.init,false);
