    	function reposition() {
    	
    	  //Reposition for Loading-Gifs
    	  if($(".bgPreloaderActive").length > 0) {
          $(".bgPreloaderActive").each(function(){
            var origin =  "imgrt" + String(parseInt($(this).attr("id").substring(11,12))+1);
            position = $("#"+origin).children("a").children("img").offset();
            $(this).css({
              "left":position.left,
              "top":position.top
            });
          });
    	  }
    	  
    	  //Reposition for Images
    	  if($(".rotwrapper").length > 0) {
          $(".rotwrapper").each(function(){
            var origin =  $(this).attr("id").substring(6,12);
            position = $("#"+origin).offset();
            $(this).css({
              "left":position.left,
              "top":position.top
            });
          });
        }
      }
    	
    	
    	function preloadImages(e, i) {
        //preload images in sequence and bind click
        if(i == $(e).length) return;
        elem = "bgPreloader"+ i;          
        //setTimeout(function(){
          //if($("div[id='"+elem+"']").length) $("div[id='"+elem+"']").attr("class", "bgPreloaderActive");
        //}, 500);           
        imagePreloaded = new Image();
        imagePreloaded.onload = function() { 
          $("div[id='"+elem+"']").remove();
          //Wenn Bild geladen, dann schonmal einfügen, aber versteckt
          var newId = $(e).eq(i).parent().attr("id")+"big";
          $('<div class="rotwrapper" id="rtwrp_'+newId+'"><div class="imgrotationcopy" id="'+newId+'"><img src="" alt="" /></div></div>').appendTo('#main');
          position = $(e).eq(i).parent().offset(); 
          $("#rtwrp_"+newId).css({
            "position":"absolute",
            "left":position.left,
            "top":position.top,  
            "width":"0",
            "height":"0",
            "z-index":"7000"
          }).hide(); 
          $("#"+newId).css({
            "position":"absolute",
            "z-index":"7000",
            "width":"202",
            "height":"152",
            "padding-bottom":"30px",
            "cursor":"pointer"
          }).hide();
          $("#"+newId).children("img").attr("src", $(e).eq(i).attr("href")).css({
            "width":"200",
            "height":"150"
          });
          switch(i) { 
            case 0:
            $("#"+newId).transform({rotate: '-3deg'});
            break;
            case 1:
            $("#"+newId).transform({rotate: '7deg'});
            break;
            case 2:
            $("#"+newId).transform({rotate: '-2deg'});
            break;
            case 3:
            $("#"+newId).transform({rotate: '4deg'});
            break;
            case 4:
            $("#"+newId).transform({rotate: '-6deg'});
            break;
            case 5:
            $("#"+newId).transform({rotate: '1deg'});
            break;
          } 
          imagerotation_binding($(e).eq(i)); 
          preloadImages($(e), ++i);
        };
        imagePreloaded.src = $(e).eq(i).attr("href");
      } 
    	
    	
    	
    	function preload(e, i) {
        //when all thumbs are loaded call imagepreloader
        if(i == $(e).length) {
          preloadImages(e, 0);
          return;
        }
        //Insert fading div when thumbs are preloaded
        thumbPreloaded = new Image();
        thumbPreloaded.onload = function() {   
          position = $(e).eq(i).children("img").offset();
          zind = parseInt($(e).eq(i).parent().css("z-index"))+1;
          elem = "bgPreloader"+ i;
          $(document.body).prepend('<div id="'+elem+'" class="imgPreloader"></div>');
      	  $("div[id='"+elem+"']").css({
            "height":$(e).eq(i).children("img").height(), 
            "width":$(e).eq(i).children("img").width(), 
            "left":position.left,
            "top":position.top,
            "position":"absolute",
            "opacity":0.8,
            "z-index": zind
          });
          switch(i) { 
            case 0:
            $("div[id='"+elem+"']").transform({rotate: '-3deg'}).css({"left":position.left,"top":position.top});
            break;
            case 1:
            $("div[id='"+elem+"']").transform({rotate: '7deg'}).css({"left":position.left,"top":position.top});
            break;
            case 2:
            $("div[id='"+elem+"']").transform({rotate: '-2deg'}).css({"left":position.left,"top":position.top});
            break;
            case 3:
            $("div[id='"+elem+"']").transform({rotate: '4deg'}).css({"left":position.left,"top":position.top});
            break;
            case 4:
            $("div[id='"+elem+"']").transform({rotate: '-6deg'}).css({"left":position.left,"top":position.top});
            break;
            case 5:
            $("div[id='"+elem+"']").transform({rotate: '1deg'}).css({"left":position.left,"top":position.top});
            break;
          }   
          if($("div[id='"+elem+"']").length) $("div[id='"+elem+"']").attr("class", "bgPreloaderActive"); 
          preload($(e), ++i);
        };
        thumbPreloaded.src = $(e).eq(i).children("img").attr("src");
      } 
    	
    	
    	function imagerotation_binding(e) {
        $(e).parent().bind({
          mouseover: function() {
            if($("#imagerotations div").is(":animated")) return; 
            if($(this).attr('class')=='nohover') return;
            var nzindx = parseInt($(this).css("z-index"))+1000;
            $(this).css("z-index", nzindx);
          },
          mouseout: function() {
            //if($("#imagerotations div").is(":animated")) return; 
            if($(this).attr('class')=='nohover') return;
            var nzindx = parseInt($(this).css("z-index"))-1000;
            $(this).css("z-index", nzindx);
          }          
        });
        $(e).bind({
          click: function(){ show_rotatetimage(this); return false; } 
        }); 
      }
      
      function show_rotatetimage(e) {   
        var pid = $(e).parent().attr("id")+"big";         
        //if($("#"+pid).is(":visible, :animated")) return; 
        if($(".imgrotationcopy").is(":visible, :animated")) return;
        var tlink = $(e).attr('href'); 
        $(e).removeAttr('href');   
        $(e).parent().css('opacity','0.0');
        var i = parseInt($(e).parent().attr("id").substring(5,6)); 
        var rot = ""; 
        switch(--i) { 
          case 0:
           rot = '+=3deg';
          break;
          case 1:
            rot = '-=7deg';
          break;
          case 2:
            rot = '+=2deg';
          break;
          case 3:
            rot = '-=4deg';   
          break;
          case 4:
            rot = '+=6deg';
          break;
          case 5:
            rot = '-=1deg';
          break;
        }  
        $("#rtwrp_"+pid).show();          
        $("#"+pid).show();          
        var topmargin = $("#"+pid).offset();
        var origin =  $("#rtwrp_"+pid).attr("id").substring(6,12);
        var offset = $("#"+origin).offset();
        var offset2 = $("#main").offset();
        var leftmargin = -(offset.left-offset2.left-26);
        $("#"+pid).animate({
          rotate: rot,
          width : '800px',
          height: '600px',
          'margin-left': leftmargin,
          'margin-top': -(topmargin.top-325) 
        }, 600);   
        $("#"+pid).children("img").show().animate({
          width : '800px',
          height: '600px'   
        }, 600, function(){ 
          $("#"+pid).bind({
            click: function(){ hide_rotatetimage(e, tlink);  $("#"+pid).unbind(); return false; } 
          }); 
        });
        return false; 
      }
    	
    	function hide_rotatetimage(e, tlink) {
    	  var pid = $(e).parent().attr("id")+"big";
        var brot = "";
        var tx = 0;
        var ty = 0;
        var i = parseInt(pid.substring(5,6)); 
        position = $("#imgrt"+i).offset();               
        switch(--i) { 
          case 0:
           brot = '-=3deg';
          break;
          case 1:
            brot = '+=7deg';
          break;
          case 2:
            brot = '-=2deg';
          break;
          case 3:
            brot = '+=4deg';
          break;
          case 4:
            brot = '-=6deg';
          break;
          case 5:
            brot = '+=1deg';
          break;
        }
        $("#"+pid).animate({
          rotate: brot,
          width : '200px',
          height: '150px',
          'margin-left': '0px',
          'margin-top': '0px'   
        }, 600, function(){
          $(this).hide(); 
          $("#rtwrp_"+pid).hide();
          $(e).attr('href', tlink);
          $(e).parent().css('opacity',' 1.0'); 
        });
        $("#"+pid).children("img").animate({
          width : '200px',
          height: '150px'   
        }, 600);                           
        return false; 
      }

