// preload arrow images

var pfeil_up = new Image();   pfeil_up.src = 'fileadmin/layout/imgs/pfeil_rot_U.gif';
var pfeil_dn = new Image();   pfeil_dn.src = 'fileadmin/layout/imgs/pfeil_rot_D.gif';


function UnCryptMailto( s )
    {
        var n = 0;
        var r = "";
        for( var i = 0; i < s.length; i++)
        {
            n = s.charCodeAt( i );
            if( n >= 8364 )
            {
                n = 128;
            }
            r += String.fromCharCode( n - 1 );
            
            r= r.split('*').join(':');
        }
        return r;
    }

    function linkTo_UnCryptMailto( s )
    {
        location.href=UnCryptMailto( s );
    }



function loadScripts(){
       observeArtistSel();
       observeMoreInfoBut();
       observeMoreTourdatesButs();
       observeTopLink();
}

function observeTopLink(){

}


function observeMoreTourdatesButs(){
      $$('.tourtable-trigger').each(function(element) {
            Event.observe(element, "click", toggleTourDates, false);
      });
}

function toggleTourDates(event){
    trigger = Event.element(event);
    if('tourtable-trigger-label' == trigger.className)
       trigger = trigger.up();
       
    table = trigger.up(4);

    trigger.descendants().each(function(element) {
        if('tourtable-trigger-label' == element.className){
            element.toggle();
        }
    });

    if(Element.visible(trigger.descendants()[0])){
        trigger.style.backgroundImage = 'url(fileadmin/layout/imgs/pfeil_rot_D.gif)';
    } else {
        trigger.style.backgroundImage = 'url(fileadmin/layout/imgs/pfeil_rot_U.gif)';
    }

     counter = 0;
     table.descendants().each(function(element) {
        if("TR" == element.tagName){
            if(element.className.indexOf("tourdates-other") != -1){
             counter++;
                if(Element.visible(element)){
                   setTimeout(function(){element.hide();}, (counter*10));
                } else {
                   setTimeout(function(){element.show();}, (counter*10));
                }
            }
        }
        
        if(element.className.indexOf("artist-hotline") != -1){
            element.toggle();
        }
    });
    

}

function observeMoreInfoBut(){
    if(trigger = $('artist-info-trigger')){
         Event.observe(trigger, "click", function(event){
                    toggleDropdown('artist-downloads', $('artist-info-trigger'));
                    toggleDropdown('artist-longinfo', $('artist-info-trigger'));
                    
                        $$('.artist-info-trigger-label').each(function(element) {
                            element.toggle();
                        });

                    }, false);
    }
}

function observeArtistSel(){
    if(trigger = $('tx-alartistdatabase-dropdown-trigger')){
         Event.observe(trigger, "click", function(event){ toggleDropdown('tx-alartistdatabase-dropdown-list',Event.element(event)) }, false);
    }
    
    if(trigger2 = $('tx-altourdates-dropdown-trigger')){
         Event.observe(trigger2, "click", function(event){ toggleDropdown('tx-altourdates-dropdown-list',Event.element(event)) }, false);
    }
}

function toggleDropdown(ulid,trigger){
    if(Element.visible(ulid)){
        trigger.style.backgroundImage = 'url(fileadmin/layout/imgs/pfeil_rot_D.gif)';
        new Effect.BlindUp(ulid, {  duration:0.3});
         } else {

        trigger.style.backgroundImage = 'url(fileadmin/layout/imgs/pfeil_rot_U.gif)';
        new Effect.BlindDown(ulid, {  duration:0.3});
        

    }
}


function attachOnmouseovers(event) {
      $('mainnavi').descendants().each(function(element) {
          if(element.tagName == "A") {
              Event.observe(element, "mouseover", navOnmouseover, false);
          }
      });
}

function navOnmouseover(event) {

      var clickedLink = Event.element(event);
      var clickedLi = clickedLink.up();

      new Effect.MoveBy(
      clickedLi,
      0,
      -5,
      { duration:0.3,
        afterFinish:function(){
            new Effect.MoveBy(clickedLi, 0,5, {duration:0.2})
            }
        }
    );
  }

function attachOnclicks(event) {

      if($('csub_slice1'))
            Event.observe($('csub_slice1'), "click", function(){ document.location='/newsletter.html' }, false);

      $$('.news-list-morelink').each(function(element) {
          if(element.firstChild.tagName == "A") {
            Event.observe(element, "click", showNews, false);
          }
      });
}

function showNews(event){
    Event.stop(event);
    id = Event.element(event).up().id;
    
    if(Element.visible('news-list-teaser_'+id)){
            vis = ('news-list-teaser_'+id);
            hid = ('news-list-content_'+id);
            Event.element(event).innerHTML = ">> read less";
    } else {
            hid = ('news-list-teaser_'+id);
            vis = ('news-list-content_'+id);
            Event.element(event).innerHTML = ">> read more";
    }
    


    new Effect.BlindUp(vis, {  duration:0.5,
                                                    afterFinish:function(){
                                                        new Effect.BlindDown(hid, {duration:0.5});
                                                    }
            });


}

function doAjax(event){
    Event.stop(event);
    var clickedLink = Event.element(event);
    new Ajax.Updater('content_left', clickedLink.href+'&type=1', {asynchronous:true});
}

function navOnclick(event) {
      Event.stop(event);
      var clickedLink = Event.element(event);
      var clickedLi = clickedLink.up();
      clickedLi.siblings().each(function(sibling) {
          sibling.removeClassName("active");
      });
      clickedLi.addClassName("active");
  }
  

Event.observe(window, "load",  loadScripts , false);
