function addListener(element, type, expression, bubbling)
{
  bubbling = bubbling || false;
  if(window.addEventListener)        { // Standard
    element.addEventListener(type, expression, bubbling);
    return true;
  } else if(window.attachEvent) { // IE
    element.attachEvent('on' + type, expression);
    return true;
  } else return false;
}

var ImageLoader = function(url){
  this.url = url;
  this.image = null;
  this.loadEvent = null;
};

ImageLoader.prototype = {
  load:function(){
    this.image = document.createElement('img');
    var url = this.url;
    var image = this.image;
    var loadEvent = this.loadEvent;
    addListener(this.image, 'load', function(e){
      if(loadEvent != null){
        loadEvent(url, image);
      }
    }, false);
    this.image.src = this.url;
  },
  getImage:function(){
    return this.image;
  }
};





function slideTo(nr,anzahl)
{
        var margin = nr*(-40);
        var all_width = anzahl*40;
        //alert(margin+" Weite: "+all_width);
        if(margin > 0){
                 margin = 0;
                 $('#mg_thumbs').animate({marginLeft:(margin)+"px"},500);
        }
        else if(all_width < ((margin - 600) * -1)){
                 margin = (all_width - 600) * -1;
                 $('#mg_thumbs').animate({marginLeft:(margin)+"px"},500);
        }
        else{
                 $('#mg_thumbs').animate({marginLeft:(margin)+"px"},500);
        }

        $('#mg_thumbs_links').remove();
        $('#mg_thumbs_rechts').remove();
        if(nr>0)
        {
                 $('#footer_left').append('<img id="mg_thumbs_links" src="images/pfeil_links_klein.png" onclick="slideTo('+(nr-5)+','+anzahl+');">');
        }
        if((nr+14)<(anzahl-1))
        {
                $('#footer_right').append('<img id="mg_thumbs_rechts" src="images/pfeil_rechts_klein.png" onclick="slideTo('+(nr+5)+','+anzahl+');">');
        }
}

function switchPic(nr,pic,titel,xml,anzahl)
{
//alert("Nr: "+nr+" Pic: "+pic+" Titel: "+titel+" XML: "+xml+" Anzahl: "+anzahl);
        if(anzahl>15)     //Soll die Thumbleiste bewegt werden??
        {
                var to_nr= -7+nr;
                //alert("to Nr: "+to_nr+" Anzahl: "+anzahl);
                if(to_nr < 0){   // Ende links erreicht
                         slideTo(0,anzahl);
                }
                else if(to_nr > anzahl-15){      // Ende rechts erreicht
                         slideTo(anzahl-15,anzahl);
                }
                else{
                         slideTo(to_nr,anzahl);
                }

        }

        var loader = new ImageLoader(pic);

        loader.loadEvent = function(url,image) {
                $('#mg_big img').attr(
                {
                        src: url,
                        alt: titel
                });

var new_margin = (450-xml)/2;
$('#mg_big img').css({
"margin-top" : new_margin+"Px"
});


                $('#mg_big img').fadeIn();
        }

        $('#mg_big img').fadeOut('',function(){
        loader.load();
        });

        $('#mg_titel').fadeOut('',function(){
                $('#mg_titel').text(titel);
                $('#mg_titel').fadeIn();
        });
        $('#mg_thumbs a').removeClass('aktiv');
        $('#mg_thumb_' + nr).addClass('aktiv');

        var url_back = 'createLink_01.php?xml=' + xml + '&nr=' + nr + '&dir=back';
        var url_next = 'createLink_01.php?xml=' + xml + '&nr=' + nr + '&dir=next';

        $.get(url_back, function(data){$("#mg_big_links").replaceWith(data);});
        $.get(url_next, function(data){$("#mg_big_rechts").replaceWith(data);});
}
