eLock = 0;
rLock = 0;
uLock = 0;
iLock = 0;
noSlot = 0;
interval =  new Array();
opac = new Array();
pageY = 0;
sLock = 0;
covNext = 0;
newNext = 0;

zoomLoader = document.createElement('img');
zoomLoader.src = '/s/i/load.gif';
zoomLoader.style.position = 'absolute';
zoomLoader.style.margin = '49px';
zoomLoader.id = 'zoom_loader';
zoomButton0 = document.createElement('div');
zoomButton0.id = 'zoom_button_0';
zoomButton0.onclick = function(){xZoom();};
zoomButton1 = document.createElement('div');
zoomButton1.id = 'zoom_button_1';
zoomButton1.onclick = function(){nextImage(0);};
zoomButton2 = document.createElement('div');
zoomButton2.id = 'zoom_button_2';
zoomButton2.onclick = function(){nextImage(1);};function calNext()
{
  if(sLock == 1)
  {
    return false;
  }
  
  sLock = 1;
  
  document.getElementById("cal_last").style.display = "block";
 
  if(document.getElementById('last_cal'))
  {
    if(document.getElementById('last_cal').offsetTop <= 500)
    {
      document.getElementById("cal_next").style.display = "none";
    }
  }
  
  if(!document.getElementById("last_cal"))
  {
    document.getElementById('cal_line').style.height = document.getElementById('cal_line').offsetTop + 60 + "px";
    
    var myAjax = new Ajax.Request("/r.php",
    {
      method: "post",
      parameters: {xc: "cal", mode: "next", num: document.getElementById('cal_line').getElementsByTagName("div").length},
      onComplete: calAddNext
    });
  }
  
  scroll(document.getElementById('cal_line'), -56, 0);
}

function calAddNext(originalRequest)
{
  r = originalRequest.responseText.split("|");
  
  if(r[0] == 1)
  {
    document.getElementById('cal_line').innerHTML = document.getElementById('cal_line').innerHTML + r[1];
  }
  else
  {
    document.getElementById('cal_line').getElementsByTagName("div")[document.getElementById('cal_line').getElementsByTagName("div").length-1].id = "last_cal";
    if(document.getElementById('last_cal').offsetTop <= 240)
    {
      document.getElementById("cal_next").style.display = "none";
    }
  }
}

function calLast()
{
  if(parseInt(document.getElementById('cal_line').style.marginTop) + 60 <= 0)
  {
    if(sLock == 1)
    {
      return false;
    }
    
    sLock = 1;
    
    document.getElementById("cal_next").style.display = "block";
    
    if(parseInt(document.getElementById('cal_line').style.marginTop) + 120 > 0)
    {
      document.getElementById("cal_last").style.display = "none";
    }
    scroll(document.getElementById('cal_line'), 56, 0);
  }
}

function addEvent(o)
{
  o.parentNode.onmouseover = function(){sDates(this)};
  
  o.parentNode.style.color = '#900';
  
  o2 = o.parentNode;
  setTimeout("sDates(o2)", 1000);
  
  var myAjax = new Ajax.Request('/r.php',
  {
    method: 'post',
    parameters: {xc: 'cal', mode: 'add', date: o.parentNode.id}
  });
}

function sDates(o)
{
  var myAjax = new Ajax.Request('/r.php',
  {
    method: 'get',
    parameters: {xc: 'cal', mode: 'get', date: o.id},
    onComplete: rsDates
  });
}

function rsDates(originalRequest)
{
  r = originalRequest.responseText.split('|');
  if(r[0] == 1)
  {
    document.getElementById('dates').getElementsByTagName('big')[0].innerHTML = r[2];
    document.getElementById('events').innerHTML = r[1];
  }
}

function deleteEvent(o)
{
  confi = confirm('Wollen Sie diesen Bericht wirklich löschen?');
  if(confi)
  {
    o.parentNode.style.display = 'none';
    var myAjax = new Ajax.Request("/r.php",
    {
      method: "post",
      parameters: {xc: "cal", mode: "delete", id: o.parentNode.id.split('_')[2]}
    });
  }
}/****
 * Verarbeitet Anfragen auf Website-Inhalte per AJAX-Afterload
 ***/

function aLink(o)
{
  content(o.href);
  return false;
}

function content(link)
{
  document.body.style.cursor = "wait";
  
  var myAjax = new Ajax.Request("/request.php",
  {
    method: "get",
    parameters: {doc: link},
    onComplete: reContent
  });
}

function reContent(originalRequest)
{
  request = originalRequest.responseText.split("|");
  
  document.body.style.cursor = "default";
  
  if(request[0] != 0)
  {
    xURL = request[1];
    
    location.href = request[2];
    
    contentValue = request[1];
    
    document.getElementById("content").innerHTML = request[3];
  }
}function coverNext()
{
  if(sLock == 1 || document.getElementById("cover_next").style.display == "none")
  {
    return false;
  }
  
  sLock = 1;
  
  document.getElementById("cover_last").style.display = "block";
 
  if(document.getElementById('last_cover'))
  {
    if(-parseInt(document.getElementById('coverline').getElementsByTagName("div")[0].style.marginLeft) >= (document.getElementById('coverline').getElementsByTagName("div")[0].getElementsByTagName("div").length-4)*(document.getElementById('coverline').getElementsByTagName("div")[0].getElementsByTagName("div")[0].offsetWidth+20))
    {
      document.getElementById("cover_next").style.display = "none";
    }
  }
  
  if(!document.getElementById("last_cover"))
  {
    document.getElementById('coverline').getElementsByTagName("div")[0].style.width = document.getElementById('coverline').getElementsByTagName("div")[0].offsetWidth + 220 + "px";
    
    var myAjax = new Ajax.Request("/r.php",
    {
      method: "post",
      parameters: {xc: "cover", mode: "next", num: document.getElementById('coverline').getElementsByTagName("div")[0].getElementsByTagName("div").length},
      onComplete: coverAddNext
    });
  }
  
  scroll(document.getElementById('coverline').getElementsByTagName("div")[0], -220, 1);
}

function setTimeoutCover()
{
  if(document.getElementById('coverline'))
  {
    covNext = window.setInterval("coverNext()", 7000);
  }
  else
  {
    covNext = '';
  }
}

function coverAddNext(originalRequest)
{
  r = originalRequest.responseText.split("|");
  
  if(r[0] == 1)
  {
    document.getElementById('coverline').getElementsByTagName("div")[0].innerHTML = document.getElementById('coverline').getElementsByTagName("div")[0].innerHTML + r[1];
  }
  else
  {
    document.getElementById('coverline').getElementsByTagName("div")[0].getElementsByTagName("div")[document.getElementById('coverline').getElementsByTagName("div")[0].getElementsByTagName("div").length-1].id = "last_cover";
    if(-parseInt(document.getElementById('coverline').getElementsByTagName("div")[0].style.marginLeft) >= (document.getElementById('coverline').getElementsByTagName("div")[0].getElementsByTagName("div").length-4)*(document.getElementById('coverline').getElementsByTagName("div")[0].getElementsByTagName("div")[0].offsetWidth+20))
    {
      document.getElementById("cover_next").style.display = "none";
    }
  }
}

function coverLast()
{
  if(parseInt(document.getElementById('coverline').getElementsByTagName("div")[0].style.marginLeft) + 220 <= 0)
  {
    if(sLock == 1)
    {
      return false;
    }
    
    sLock = 1;
    
    document.getElementById("cover_next").style.display = "block";
    
    if(parseInt(document.getElementById('coverline').getElementsByTagName("div")[0].style.marginLeft) + 440 > 0)
    {
      document.getElementById("cover_last").style.display = "none";
    }
    scroll(document.getElementById('coverline').getElementsByTagName("div")[0], 220, 1);
  }
}

function addAlbum()
{
  var myAjax = new Ajax.Request("/r.php",
  {
    method: "post",
    parameters: {xc: "albums", mode: "add"},
    onComplete: addAlbumFollow
  });
}

function addAlbumFollow(originalRequest)
{
  r = originalRequest.responseText.split('|');
  if(r[0] == 1)
  {
    location.href = '/albums.php?id=' + r[1];
  }
}

function deleteAlbum(o)
{
  confi = confirm('Wollen Sie dieses Bilderalbum wirklich löschen?');
  if(confi)
  {
    var myAjax = new Ajax.Request("/r.php",
    {
      method: "post",
      parameters: {xc: "albums", mode: "delete", id: o.parentNode.id.split('_')[1]},
      onComplete: deleteAlbumComplete
    });
  }
}

function deleteAlbumComplete(originalRequest)
{
  r = originalRequest.responseText.split('|');
  
  if(r[0] == 2)
  {
    confi = confirm("Das Bilderalbum enthält noch Bilder!\nMöchten Sie trotzdem fortfahren?\n\nDabei werden alle Bilder gelöscht!");
    if(confi)
    {
      var myAjax = new Ajax.Request("/r.php",
      {
        method: "post",
        parameters: {xc: "albums", mode: "delete_complete", id: r[1]},
        onComplete: deleteAlbumComplete
      });
    }
  }
  else if(r[0] == 1)
  {
    if(!document.getElementById("last_cover"))
    {
      document.getElementById('coverline').getElementsByTagName("div")[0].style.width = document.getElementById('coverline').getElementsByTagName("div")[0].offsetWidth + 220 + "px";
      
      var myAjax = new Ajax.Request("/r.php",
      {
        method: "post",
        parameters: {xc: "cover", mode: "next", num: document.getElementById('coverline').getElementsByTagName("div")[0].getElementsByTagName("div").length-1},
        onComplete: coverAddNext
      });
    }
    document.getElementById('cover_' + r[1]).parentNode.removeChild(document.getElementById('cover_' + r[1]));
  }
}function edit(o)
{
  if(eLock)
  {
    return false;
  }
  
  iLock = 1;
  eLock = 1;
  mode = o;
  i = 0;
  
  while(mode.id.split('_')[0] != 'xc' && i < 5)
  {
    mode = mode.parentNode;
    i++;
  }
  
  eId = mode.id.substr(3);
  
  if(eId.split('_')[eId.split('_').length-1].length == 1)
  {
    eId = eId.substr(0, eId.length-2);
  }
  
  oldV = o.innerHTML;
  
  textHeight = o.offsetHeight;
  
  o.innerHTML = '<textarea class="edit" disabled="disabled">' + oldV + '</textarea>';
  
  if(o.tagName == "H2")
  {
    o.innerHTML = o.innerHTML + '<input id="edit_' + eId + '_name" onblur="save(this);" value="' + oldV + '" />';
    document.getElementById('edit_' + eId + '_name').focus();
  }
  else if(o.tagName == "SPAN")
  {
    o.innerHTML = o.innerHTML + '<textarea id="edit_' + eId + '_desc" onblur="save(this);">' + oldV + '</textarea>';
    document.getElementById('edit_' + eId + '_desc').focus();
  }
  else if(o.tagName == "DIV")
  {
    setupEdi(o, textHeight, 'edit_' + eId + '_text');
  }
  else if(o.tagName == "B")
  {
    o.innerHTML = o.innerHTML + '<textarea id="edit_' + eId + '_tags" onblur="save(this);">' + oldV + '</textarea>';
    document.getElementById('edit_' + eId + '_tags').focus();
  }
  else
  {
    alert(o.tagName);
  }
}function setupEdi(o, ediHeight, oId)
{
  rLock = 1;
  
  elementID = "edi";
  
  ediContent = o.getElementsByTagName('textarea')[0].value;
  
  o.innerHTML = o.innerHTML + '<form method="post" action="/"><textarea onclick="setup(this.id);" name="' + elementID + '" id="' + elementID + '" style="visibility: hidden; width: 100%; height: ' + (ediHeight+200) + 'px;">' + ediContent + '</textarea></form>';
  
  tinyMCE.init({
      	     /* General options */
      	     mode : "exact",
      	     elements : elementID,
      	     theme : "advanced",
             skin : "o2k7",
      	     skin_variant : "silver",
             language: "de",
             plugins : "safari,table,save,advhr,advimage,advlink,emotions,iespell,inlinepopups,insertdatetime,searchreplace,print,contextmenu,paste,directionality,fullscreen,visualchars,nonbreaking,xhtmlxtras",
             
             /* Theme options */
             theme_advanced_buttons1 : "bold,italic,underline,strikethrough,|,justifyleft,justifycenter,justifyright,justifyfull,|,fontselect,fontsizeselect,|,forecolor,backcolor,|,fullscreen,|,saveit,|",
             theme_advanced_buttons2 : "cut,copy,paste,pastetext,pasteword,|,search,replace,|,blockquote,|,undo,redo,|,link,unlink,cleanup,code,|,sub,sup,|,insertdate,inserttime,|,charmap,emotions,iespell,addimg,|",
             theme_advanced_buttons3 : "",
             theme_advanced_buttons4 : "",
             theme_advanced_toolbar_location : "external",
             theme_advanced_toolbar_align : "center",
             theme_advanced_statusbar : false,
             theme_advanced_resizing : true,
             theme_advanced_resize_horizontal : false,
             entity_encoding : "named",
             forced_root_block : '',
	           force_p_newlines : false,
             force_br_newlines : true,

             
             editor_css : "/s/e/d.css",
             content_css : "/s/e/c.css",
             cleanup : true,
             auto_focus : elementID,
             setup : function(ed) {
               ed.addButton("addimg", {
               title : "Bild hinzufügen",
               image : "/s/i/tree.gif",
               onclick : function() {xSUpload();}
               });
               ed.addButton("saveit", {
               title : "Inhalte speichern",
               image : "/s/i/ok-s.png",
               onclick : function() {if(!uLock){save(oId);}}
               });
             },
             oninit: function() {document.getElementById(elementID).style.visibility = "visible";}
  });
  
  checkHeightEdi = setInterval("setAutoResize(tinyMCE.get('edi'))", 2000);
}

function setAutoResize(ed)
{   
    /*Function to fix iframe to document height*/
    fitEditor = function(ed)
    {
        editorID = ed.id;
        var tble, frame, doc, docHeight, frameHeight;
        
        frame = document.getElementById(editorID+"_ifr");
        if ( frame != null )
        {
            /*get the document object*/
            if (frame.contentDocument) doc = frame.contentDocument; 
            else if (frame.contentWindow) doc = frame.contentWindow.document; 
            else if (frame.document) doc = frame.document; 
            
            if ( doc == null )
            return;
            
            /*prevent the scrollbar from showing*/
            doc.body.style.overflow = "hidden";
            
            /*Fixes the issue of the table leaving empty space below iframe*/
            tble = frame.parentNode.parentNode.parentNode.parentNode;
            tble.style.height = 'auto';
            
            frameHeight = parseInt(frame.style.height);
            
            /*Firefox*/
            if ( doc.height ) docHeight = doc.height;
            /*MSIE*/
            else docHeight = parseInt(doc.body.scrollHeight);
            
            /*MAKE BIGGER*/
            if ( docHeight > frameHeight ) frame.style.height = (docHeight + 20) + "px";
            /*MAKE SMALLER*/
            else if ( docHeight < frameHeight ) frame.style.height = Math.max((docHeight + 20), 100) + "px";
        }
    };
    
    /*add fitEditor function to tinyMCE events*/
    ed.onSetContent.add( fitEditor );
    ed.onChange.add( fitEditor );
    ed.onKeyPress.add( fitEditor );
    
/*Remaining bug: (Chrome and Opera) editor grows but doesn't shrink*/
}function fbInit()
{
  window.fbAsyncInit = function() {
    FB.init({appId: '155167601188400', status: true, cookie: true, xfbml: true});
  };
  (function() {
    var e = document.createElement('script'); e.async = true;
    e.src = document.location.protocol + '//connect.facebook.net/en_US/all.js';
    document.getElementById('fb-root').appendChild(e);
  }());
}function fadeOut(o, timer)
{
  o2 = o;
  timer2 = timer;
  
  if(interval[o2.id])
  {
    setTimeout("fadeOut(o2, timer2)", 1000);
  }
  else
  {
    opac[o2.id] = 100;
    interval[o2.id] = setInterval("fade(o2, 0)", timer);
  }
}

function fadeIn(o, timer)
{
  o2 = o;
  timer2 = timer;
  if(interval[o2.id])
  {
    setTimeout("fadeIn(o2, timer2)", 1000);
  }
  else
  {
    opac[o2.id] = 0;
    interval[o2.id] = setInterval("fade(o2, 1)", timer);
  }
}

function fade(o, v)
{
  if(v)
  {
    opac[o2.id] = opac[o2.id]+5;
  }
  else
  {
    opac[o2.id] = opac[o2.id]-5;
  }
  
  if((opac[o.id] > 0 && v == 0) || (opac[o.id] < 100 && v == 1))
  {
    o.style.opacity = (opac[o2.id] / 100);
    o.style.MozOpacity = (opac[o2.id] / 100);
    o.style.KhtmlOpacity = (opac[o2.id] / 100);
    o.style.filter = "alpha(opacity=" + opac[o2.id] + ")";
  }
  else
  {
    clearTimeout(interval[o2.id]);
    interval[o2.id] = null;
    if(!v)
    {
      o.style.display = "none";
    }
  }
}function deleteFile(o)
{
  confi = confirm('Wollen Sie diesen Datei wirklich löschen?');
  if(confi)
  {
    o.parentNode.style.display = 'none';
    var myAjax = new Ajax.Request("/r.php",
    {
      method: "post",
      parameters: {xc: "files", mode: "delete", id: o.parentNode.id.split('_')[2]}
    });
  }
}function deleteImage(o)
{
  confi = confirm('Wollen Sie dieses Bild wirklich löschen?');
  if(confi)
  {
    var myAjax = new Ajax.Request("/r.php",
    {
      method: "post",
      parameters: {xc: "img", mode: "delete", id: o.parentNode.id.split('_')[2], object: o.parentNode.id},
      onComplete: deleteImageComplete
    });
  }
}

function deleteImageComplete(o)
{
  r = o.responseText.split('|');
  
  if(r[0] == 1)
  {
    fadeOut(document.getElementById(r[1]), 50);
    setTimeout("document.getElementById(r[1]).parentNode.removeChild(document.getElementById(r[1]))", 4000);
  }
}

function changeCover(o)
{
  var myAjax = new Ajax.Request("/r.php",
  {
    method: "post",
    parameters: {xc: 'albums', id: o.parentNode.parentNode.parentNode.id.split('_')[2], mode: 'update', type: 'cover', value: o.parentNode.id.split('_')[2], object: 0},
    onComplete: reCCover
  });
}

function reCCover(o)
{
  r = o.responseText.split('|');
  if(r[0] == 1)
  {
    alert('Hauptbild wurde erfolgreich editiert!');
  }
}/****
 * Steuert den User-Loginvorgang am Client-Browser
 ***/

function exLogin(e)
{
  var keyCode=(e)? e.which :event.keyCode;
  if(keyCode==13)
  {
    login();
  }
}

function login()
{
  document.getElementById("mail").disabled = 1;
  document.getElementById("password").disabled = 1;
  
  xmail = document.getElementById("mail").value;
  xpasswd = document.getElementById("password").value;
  
  document.body.style.cursor = "wait";
  
  var myAjax = new Ajax.Request("/r.php",
  {
    method: "post",
    parameters: {xc: "login", mail: xmail, passwd: xpasswd},
    onComplete: reLogin
  });
}

function reLogin(originalRequest)
{
  request = originalRequest.responseText.split("|");
  document.body.style.cursor = "default";
  
  if(request[0] == 1)
  {
    document.getElementById("login").innerHTML = request[2];
    
    location.reload();
    
    aRefresh = setInterval('autoRefresh()', 1000);
    
    for(var i = 0; i < document.getElementsByTagName("li").length; i++)
    {
      var eli = document.getElementsByTagName("li")[i];
      if(eli.className == "drag")
      {
        eli.onmousedown = function(e){ddstart(this);};
        eli.style.cursor = "e-resize";
      }
      else if(eli.className == "add_navi")
      {
        eli.style.visibility = "visible";
      }
    }
    
    oInfo(request[1]);
  }
  else
  {
    oError(request[1], request[2]);
  }
  document.getElementById("mail").disabled = 0;
  document.getElementById("password").disabled = 0;
}

function logout()
{
  document.body.style.cursor = "wait";
  
  var myAjax = new Ajax.Request("/r.php",
  {
    method: "post",
    parameters: {xc: "logout"},
    onComplete: reLogout
  });
}

function reLogout(originalRequest)
{
  request = originalRequest.responseText.split("|");
  document.body.style.cursor = "default";
  
  if(request[0] == 1)
  {
    for(var i = 0; i < document.getElementsByTagName("li").length; i++)
    {
      var eli = document.getElementsByTagName("li")[i];
      if(eli.className == "drag")
      {
        eli.onmousedown = function(e){return false};
        eli.style.cursor = "default";
      }
      else if(eli.className == "add_navi")
      {
        eli.style.visibility = "hidden";
      }
    }
    
    document.getElementById("login").style.display = "none";
    
    clearInterval(aRefresh);
    
    CDtime = 0;
    
    oInfo(request[1]);
  }
  else
  {
    oError(request[1], request[2]);
  }
}function oInfo(o)
{
  if(o == null)
  {
    o = "Vorgang erfolgreich abgeschlossen!";
  }
  document.getElementById("infosymbol").style.backgroundImage = "url('/style/images/info.png')";
  document.getElementById("infotext").style.color = "#00ffff";
  document.getElementById("infotext").innerHTML = o;
  document.getElementById("infobox").style.display = "block";
  
  fadeIn(document.getElementById("infobox"), 10);
  
  setTimeout("xInfoBox()", 3000);
}

function oError(o, error)
{
  if(o == null)
  {
    o = "Ein unbekannter Fehler ist aufgetreten!";
  }
  document.getElementById("infosymbol").style.backgroundImage = "url('/style/images/error.png')";
  document.getElementById("infotext").style.color = "#ff0000";
  document.getElementById("infotext").innerHTML = o;
  document.getElementById("infobox").style.display = "block";
  
  fadeIn(document.getElementById("infobox"), 10);
  
  setTimeout("xInfoBox()", 3000);
}

function xInfoBox()
{
  fadeOut(document.getElementById("infobox"), 100);
}function newsNext()
{
  if(sLock == 1 || document.getElementById("news_next").style.display == "none")
  {
    return false;
  }
  
  sLock = 1;
  
  document.getElementById("news_last").style.display = "block";
 
  if(document.getElementById('last_news'))
  {
    if(-parseInt(document.getElementById('newsline').getElementsByTagName("div")[0].style.marginLeft) >= (document.getElementById('newsline').getElementsByTagName("div")[0].getElementsByTagName("div").length-4)*(document.getElementById('newsline').getElementsByTagName("div")[0].getElementsByTagName("div")[0].offsetWidth+20))
    {
      document.getElementById("news_next").style.display = "none";
    }
  }
  
  if(!document.getElementById("last_news"))
  {
    document.getElementById('newsline').getElementsByTagName("div")[0].style.width = document.getElementById('newsline').getElementsByTagName("div")[0].offsetWidth + 220 + "px";
    
    var myAjax = new Ajax.Request("/r.php",
    {
      method: "post",
      parameters: {xc: "news", mode: "next", num: document.getElementById('newsline').getElementsByTagName("div")[0].getElementsByTagName("div").length},
      onComplete: newsAddNext
    });
  }
  
  scroll(document.getElementById('newsline').getElementsByTagName("div")[0], -220, 1);
}

function setTimeoutNews()
{
  if(document.getElementById('newsline'))
  {
    newNext = window.setInterval("newsNext()", 5000);
  }
  else
  {
    newNext = '';
  }
}

function newsAddNext(originalRequest)
{
  r = originalRequest.responseText.split("|");
  
  if(r[0] == 1)
  {
    document.getElementById('newsline').getElementsByTagName("div")[0].innerHTML = document.getElementById('newsline').getElementsByTagName("div")[0].innerHTML + r[1];
  }
  else
  {
    document.getElementById('newsline').getElementsByTagName("div")[0].getElementsByTagName("div")[document.getElementById('newsline').getElementsByTagName("div")[0].getElementsByTagName("div").length-1].id = "last_news";
    if(-parseInt(document.getElementById('newsline').getElementsByTagName("div")[0].style.marginLeft) >= (document.getElementById('newsline').getElementsByTagName("div")[0].getElementsByTagName("div").length-4)*(document.getElementById('newsline').getElementsByTagName("div")[0].getElementsByTagName("div")[0].offsetWidth+20))
    {
      document.getElementById("news_next").style.display = "none";
    }
  }
}

function newsLast()
{
  if(parseInt(document.getElementById('newsline').getElementsByTagName("div")[0].style.marginLeft) + 220 <= 0)
  {
    if(sLock == 1)
    {
      return false;
    }
    
    sLock = 1;
    
    document.getElementById("news_next").style.display = "block";
    
    if(parseInt(document.getElementById('newsline').getElementsByTagName("div")[0].style.marginLeft) + 440 > 0)
    {
      document.getElementById("news_last").style.display = "none";
    }
    scroll(document.getElementById('newsline').getElementsByTagName("div")[0], 220, 1);
  }
}

function deleteNews(o)
{
  confi = confirm('Wollen Sie diesen Bericht wirklich löschen?');
  if(confi)
  {
    var myAjax = new Ajax.Request("/r.php",
    {
      method: "post",
      parameters: {xc: "news", mode: "delete", id: o.parentNode.id.split('_')[1]},
      onComplete: deleteNewsComplete
    });
  }
}

function deleteNewsComplete(originalRequest)
{
  r = originalRequest.responseText.split('|');
  
  if(r[0] == 1)
  {
    if(!document.getElementById("last_news"))
    {
      document.getElementById('newsline').getElementsByTagName("div")[0].style.width = document.getElementById('newsline').getElementsByTagName("div")[0].offsetWidth + 220 + "px";
      
      var myAjax = new Ajax.Request("/r.php",
      {
        method: "post",
        parameters: {xc: "news", mode: "next", num: document.getElementById('newsline').getElementsByTagName("div")[0].getElementsByTagName("div").length-1},
        onComplete: newsAddNext
      });
      
    }
    document.getElementById('news_' + r[1]).parentNode.removeChild(document.getElementById('news_' + r[1]));
  }
}

function addNews()
{
  var myAjax = new Ajax.Request("/r.php",
  {
    method: "post",
    parameters: {xc: "news", mode: "add"},
    onComplete: addNewsFollow
  });
}

function addNewsFollow(originalRequest)
{
  r = originalRequest.responseText.split('|');
  if(r[0] == 1)
  {
    location.href = '/news.php?id=' + r[1];
  }
}

function echo(originalRequest)
{
  alert(originalRequest.responseText);
}function save(o)
{
  if(!o.id)
  {
    tinyMCE.get("edi").setProgressState(1);
    clearInterval(checkHeightEdi);
    aXc = o.split('_')[1];
    aId = o.split('_')[2];
    aType = o.split('_')[3];
    aValue = tinyMCE.get("edi").getContent();
    aObject = o;
  }
  else
  {
    if(o.value == '' || o.value == o.parentNode.getElementsByTagName('textarea')[0].value)
    {
      o.parentNode.innerHTML = o.parentNode.getElementsByTagName('textarea')[0].value;
      eLock = 0;
      return false;
    }
    
    aXc = o.id.split('_')[1];
    aId = o.id.split('_')[2];
    aType = o.id.split('_')[3];
    aValue = o.value;
    aObject = o.id;
    
    o.style.color = "#bbbbbb";
    o.onfocus = function() {this.blur();};
  }
  
  document.body.style.cursor = "wait";
  
  var myAjax = new Ajax.Request("/r.php",
  {
    method: "post",
    parameters: {xc: aXc, id: aId, mode: 'update', type: aType, value: aValue, object: aObject},
    onComplete: reSave
  });
}

function reSave(originalRequest)
{
  r = originalRequest.responseText.split('|');
  
  if(r[0] == 1)
  {
    if(r[1].split('_')[3] == "text")
    {
      tinyMCE.get("edi").setProgressState(0);
      document.getElementById("edi").parentNode.parentNode.innerHTML = tinyMCE.get("edi").getContent();
    }
    else if(r[2])
    {
      document.getElementById(r[1]).parentNode.innerHTML = r[2];
    }
    else
    {
      document.getElementById(r[1]).parentNode.innerHTML = document.getElementById(r[1]).value;
    }
  }
  else
  {
    document.getElementById(r[1]).parentNode.innerHTML = document.getElementById(r[1]).parentNode.getElementsByTagName('textarea')[0].value;
  }
  
  document.body.style.cursor = "default";
  eLock = 0;
  iLock = 0;
}function scroll(o, v, c)
{
  if(c == 1)
  {
    if(!o.style.marginLeft)
    {
      o.style.marginLeft = "0px";
    }
    if(v > 0)
    {
      if(v >= 10)
      {
        o.style.marginLeft = parseInt(o.style.marginLeft)+10 + "px";
        v = v-10;
      }
      else
      {
        o.style.marginLeft = parseInt(o.style.marginLeft)-v + "px";
        v = 0;
      }
    }
    else
    {
      if(v <= -10)
      {
        o.style.marginLeft = parseInt(o.style.marginLeft)-10 + "px";
        v = v+10;
      }
      else
      {
        o.style.marginLeft = parseInt(o.style.marginLeft)+v + "px";
        v = 0;
      }
    }
  }
  else
  {
    if(!o.style.marginTop)
    {
      o.style.marginTop = "-10px";
    }
    if(v > 0)
    {
      if(v >= 10)
      {
        o.style.marginTop = parseInt(o.style.marginTop)+10 + "px";
        v = v-10;
      }
      else
      {
        o.style.marginTop = parseInt(o.style.marginTop)-v + "px";
        v = 0;
      }
    }
    else
    {
      if(v <= -10)
      {
        o.style.marginTop = parseInt(o.style.marginTop)-10 + "px";
        v = v+10;
      }
      else
      {
        o.style.marginTop = parseInt(o.style.marginTop)+v + "px";
        v = 0;
      }
    }
  }
  
  if(v != 0)
  {
    o2 = o;
    v2 = v;
    c2 = c;
    setTimeout("scroll(o2, v2, c2)", 20);
  }
  else
  {
    sLock = 0;
  }
}function progress(uId, uWin, uType)
{
  document.getElementById("progressbar").style.display = "block";
  
  var myAjax = new Ajax.Request("/r.php",
  {
    method: "get",
    parameters: {xc: 'upload', mode: 'status', id: uId, win: uWin, type: uType},
    onComplete: reProgress
  });
}

function reProgress(o)
{
  r = o.responseText.split("|");
  
  if(r[0] == 0)
  {
    r[0] = 1;
  }
  
  document.getElementById("progress").style.width = Math.round(100*r[1]/r[0]) + "%";
  
  document.getElementById("percentage").innerHTML = Math.round(100*r[1]/r[0]) + "%";
  
  upStream = Math.round(r[2]/1024);
  
  if(isNaN(upStream) || r[1] == r[0])
  {
    upStream = 0;
  }
  
  document.getElementById("speed").innerHTML = upStream + " kByte/s";
  
  document.getElementById("loaded").innerHTML = Math.round(r[1] / 1024) + " KB";
  
  if(r[4] == 1 && r[6] == 'images')
  {
    document.getElementById('xc_image_' + r[5]).getElementsByTagName('span')[0].innerHTML = 'Speichern..';
  }
  if(r[4] == 1 && ((r[6] == 's' && document.getElementById('supload_iframe').contentWindow.document.body.innerHTML.length > 2) || (r[6] != 's' && document.getElementById('upload_iframe_' + r[5]).contentWindow.document.body.innerHTML != '0')))
  {
    if(r[6] == 'images')
    {
      document.getElementById('xc_image_' + r[5]).innerHTML = '<img style="margin-left: 49px; margin-top: 10px;" src="/s/i/load.gif" alt="" title="" /><img style="width: 1px; height: 1px;" src="' + document.getElementById('upload_iframe_' + r[5]).contentWindow.document.body.innerHTML + '" alt="" title="" /><span class="utext">Laden..</span>';
      
      document.getElementById('xc_image_' + r[5]).id = 'xc_image_' + document.getElementById('upload_iframe_' + r[5]).contentWindow.document.body.innerHTML.split('/')[3];
      
      loadImage(document.getElementById('xc_image_' + document.getElementById('upload_iframe_' + r[5]).contentWindow.document.body.innerHTML.split('/')[3]));
      
      if(noSlot == 1)
      {
        document.getElementById('selector_' + r[5]).style.display = 'block';
        document.getElementById('qupload_status').innerHTML = 'Fügen Sie hier bequem neue Bilder zu diesem Album hinzu.<br />Wählen Sie ein Bild aus, um es von Ihrem Computer hochzuladen.';
        noSlot = 0;
      }
    }
    else if(r[6] == 's')
    {
      document.getElementById('supload_selector').value = '';
      document.getElementById('supload_area').getElementsByTagName('span')[0].innerHTML = '';
      document.getElementById('supload_area').style.display = 'none';
      
      if(document.getElementById('supload_iframe').contentWindow.document.body.innerHTML.split('|')[1] == '')
      {
        tinyMCE.execCommand("mceInsertContent",false,'<span><img style="margin-right: 10px; float: left;" src="' + document.getElementById('supload_iframe').contentWindow.document.body.innerHTML.split('|')[0] + '" alt="" title="" /></span>');
      }
      else
      {
        tinyMCE.execCommand("mceInsertContent",false,'<span><img class="zoom" style="margin-right: 10px; float: left;" src="' + document.getElementById('supload_iframe').contentWindow.document.body.innerHTML.split('|')[0] + '" onclick="zoom(this);" alt="" title="" /><input value="' + document.getElementById('supload_iframe').contentWindow.document.body.innerHTML.split('|')[1] + '" type="hidden" style="display: none;"></span>');
      }
      
      return false;
    }
    else
    {
      document.getElementById('xc_files_' + r[5]).innerHTML = document.getElementById('upload_iframe_' + r[5]).contentWindow.document.body.innerHTML;
    }
    document.getElementById('selector_' + r[5]).value = '';
    
    r[5]++;
    if(r[5] >= 10)
    {
      r[5] = 0;
    }
    if(document.getElementById('upload_iframe_' + r[5]).contentWindow.document.body.innerHTML == '0')
    {
      upload(document.getElementById('selector_' + r[5]));
    }
  }
  else
  {
    setTimeout('progress(\''+r[3]+'\', \''+r[5]+'\', \'' + r[6] + '\')', 100);
  }
}

function loadImage(o)
{
  img = new Image();
  img.src = o.getElementsByTagName('img')[1].src;
  
  if(img.complete)
  {
    o.removeChild(o.getElementsByTagName('img')[0]);
    o.removeChild(o.getElementsByTagName('span')[0]);
    o.innerHTML = '<img onclick="deleteImage(this);" class="delete" src="/s/i/delete.png" alt="" title="Bild löschen" />' + o.innerHTML;
    o.getElementsByTagName('img')[1].onclick = function(e){zoom(this);};
    o.getElementsByTagName('img')[1].style.width = img.width + 'px';
    o.getElementsByTagName('img')[1].style.height = img.height + 'px';
    o.getElementsByTagName('img')[1].style.marginLeft = (130-img.width)/2 + 'px';
    o.getElementsByTagName('img')[1].style.marginTop = (130-img.height)/2 + 'px';
  }
  else
  {
    o2 = o;
    setTimeout("loadImage(o2)", 100);
  }
}

function qUpload(o)
{
  o.style.display = 'none';
  
  n = o.id.split('_')[1];
  
  document.getElementById('upload_iframe_' + n).contentWindow.document.body.innerHTML = '0';
  
  if(o.parentNode.parentNode.parentNode.className.split('_')[1] == 'images')
  {
    document.getElementById('album').innerHTML = document.getElementById('album').innerHTML + '<div id="xc_image_' + n + '" class="img"><img style="margin-left: 49px; margin-top: 10px;" src="/s/i/load.gif" alt="" title="" /><span class="utext">Warten..</span></div>';
  }
  else
  {
    document.getElementById('files').innerHTML = document.getElementById('files').innerHTML + '<div id="xc_files_' + n + '"><img style="margin-left: 49px; margin-top: 10px;" src="/s/i/load.gif" alt="" title="" /><span class="utext">Warten..</span></div>';
  }
  
  n++;
  
  if(n >= 10)
  {
    n = 0;
  }
  
  if(document.getElementById('upload_iframe_' + n).contentWindow.document.body.innerHTML != '0')
  {
    document.getElementById('selector_' + n).style.display = 'block';
  }
  else
  {
    document.getElementById('qupload_status').innerHTML = 'Momentan sind alle 10 Uploadslots belegt.<br/> Warten Sie bis der nächste Uploadprozess abgeschlossen ist!';
    noSlot = 1;
  }
  
  n = n-2;
  
  if(n < 0)
  {
    n = 10 + n;
  }
  
  if(document.getElementById('upload_iframe_' + n).contentWindow.document.body.innerHTML != '0')
  {
    upload(o);
  }
}

function upload(o)
{
  win = o.id.split('_')[1];
  
  o.form.submit();
  
  if(o.parentNode.parentNode.parentNode.className.split('_')[1] == 'images')
  {
    document.getElementById('xc_image_' + win).getElementsByTagName('span')[0].innerHTML = 'Upload..';
    
    document.getElementById('xc_image_' + win).innerHTML = document.getElementById('xc_image_' + win).innerHTML + '<span id="progressbar"><span id="progress"></span><span id="percentage">0%</span><span id="loaded">0 MB</span><span id="speed">0 KB/s</span></span>';
  }
  else
  {
    document.getElementById('xc_files_' + win).getElementsByTagName('span')[0].innerHTML = 'Upload..';
    
    document.getElementById('xc_files_' + win).innerHTML = document.getElementById('xc_files_' + win).innerHTML + '<span id="progressbar"><span id="progress"></span><span id="percentage">0%</span><span id="loaded">0 MB</span><span id="speed">0 KB/s</span></span>';
  }
  
  progress(o.form.APC_UPLOAD_PROGRESS.value, win, o.parentNode.parentNode.parentNode.className.split('_')[1]);
}

function xSUpload()
{
  if(document.getElementById('supload_area').style.display == 'none')
  {
    document.getElementById('supload_area').style.display = 'block';
  }
  else
  {
    document.getElementById('supload_area').style.display = 'none';
  }
}

function sUpload(o)
{
  o.form.submit();
  
  document.getElementById('supload_area').getElementsByTagName('div')[0].innerHTML = 'Upload..';
    
  document.getElementById('supload_area').getElementsByTagName('div')[0].innerHTML = '<span id="progressbar"><span id="progress"></span><span id="percentage">0%</span><span id="loaded">0 MB</span><span id="speed">0 KB/s</span></span>';
  
  progress(o.form.APC_UPLOAD_PROGRESS.value, 0, 's');
}
function pos(o)
{
    var pos = { top:0, left:0 };
    if(!o) return pos;
    else if(typeof o == "string" ) o = document.getElementById(o);
    
    if( typeof o != "object"  || typeof o.offsetTop == "undefined") return pos;
    while (o && o.tagName != "BODY")
    {
        pos.top  += parseInt( o.offsetTop );
        pos.left += parseInt( o.offsetLeft );
        o = o.offsetParent;
    }
    return pos;
}

function zoom(o)
{
  if(iLock == 0)
  {
    sZoom(o);
  }
}

function sZoom(o)
{
  iLock = 1;
  
  img = new Image();
  img.src = o.parentNode.getElementsByTagName('input')[0].value;
  
  if(img.complete)
  {
    /*o.parentNode.removeChild(document.getElementById('zoom_loader'));*/
    
    if(o.style.marginLeft == false)
    {
      o.style.marginLeft = '0px';
    }
    if(o.style.marginTop == false)
    {
      o.style.marginTop = '0px';
    }
    
    zimg = document.createElement('img');
    zimg.src = img.src;
    zimg.id = 'zoom_img';
    zimg.style.opacity = (0);
    zimg.style.MozOpacity = (0);
    zimg.style.KhtmlOpacity = (0);
    zimg.style.filter = "alpha(opacity=0)";
    o.parentNode.insertBefore(zimg, o);
    zimg.style.width = o.offsetWidth + 'px';
    zimg.style.height = o.offsetHeight + 'px';
    zimg.style.marginLeft = o.style.marginLeft;
    zimg.style.marginTop = o.style.marginTop;
    zimg.style.position = 'absolute';
    zimg.style.zIndex = 4;
    
    document.getElementById('zoom_area').style.display = 'block';
    
    if (window.pageYOffset)
    {
      pageY = window.pageYOffset;
    }
    else if (document.body && document.body.scrollTop) {
      pageY = document.body.scrollTop;
    }
    
    img.w = img.width;
    
    img.h = img.height;
    
    if(img.w+60 > document.getElementById('zoom_area').offsetWidth)
    {
      img.w = document.getElementById('zoom_area').offsetWidth-60;
      img.h = img.w/img.width*img.h;
    }
    
    if(img.h+100 > document.getElementById('zoom_area').offsetHeight)
    {
      img.h = document.getElementById('zoom_area').offsetHeight-100;
      img.w = img.h/img.height*img.w;
    }
    
    zLeft = (document.getElementById('zoom_area').offsetWidth - img.w)/2 - pos(zimg).left;
    
    zTop = (document.getElementById('zoom_area').offsetHeight - img.h)/2 - pos(zimg).top + pageY;
    
    x = 50;
    
    mL = parseInt(zimg.style.marginLeft);
    mT = parseInt(zimg.style.marginLeft);
    Lpx = (zLeft-mL)/x;
    Tpx = (zTop-mT)/x;
    Wpx = (img.w-zimg.offsetWidth)/x;
    Hpx = (img.h-zimg.offsetHeight)/x;
    
    iW = zimg.offsetWidth;
    iH = zimg.offsetHeight;
    
    if(document.getElementById('facebook_like'))
    {
      document.getElementById('facebook_like').style.display = 'none';
    }
    i = -10;
    enlarge(document.getElementById('zoom_img'));
  }
  else
  {
    if(!document.getElementById('zoom_loader'))
    {
      /*o.parentNode.insertBefore(zoomLoader, o);*/
    }
    o2 = o;
    setTimeout("sZoom(o2)", 300);
  }
}

function enlarge(o)
{
  i++;
  
  if(i+5 > x)
  {
    Wpx = Wpx/2;
    Hpx = Hpx/2;
    Lpx = Lpx/2;
    Tpx = Tpx/2;
  }
  else if(i+15 == x)
  {
    Wpx = Wpx/2;
    Hpx = Hpx/2;
    Lpx = Lpx/2;
    Tpx = Tpx/2;
  }
  iW = iW + Wpx;
  iH = iH + Hpx;
  
  o.style.width = iW + 'px';
  o.style.height = iH + 'px';
  
  mL = mL+Lpx;
  mT = mT+Tpx;
  
  o.style.marginLeft = mL + 'px';
  o.style.marginTop = mT + 'px';
   
  if((iW < img.w))
  {
    opacity(o, (iW/img.w));
  }
  else
  {
    opacity(o, (1-img.w/iW));
  }
  
  if(i<x)
  {
    o2 = o;
    setTimeout("enlarge(o2)", 30);
  }
  else
  {
    o.style.width = img.w + 'px';
    o.style.height = img.h + 'px';
    
    o.style.marginLeft = zLeft + 'px';
    o.style.marginTop = zTop + 'px';
    
    iLock = 0;
    
    if((iW < img.w))
    {
      zoomButtons();
      if(o.parentNode.parentNode.id == 'groups')
      {
        iID = o.parentNode.getElementsByTagName('input')[0].value.split('/')[3];
        o.parentNode.innerHTML = o.parentNode.innerHTML + '<span id="zoom_desc" style="position: absolute; background-image: url(\'/s/i/trans.png\'); color: #ffffff; z-index: 5; padding-left: 10px; padding-right: 10px; font-size: 26px; margin-left: ' + (zLeft + 20) + 'px; margin-top: ' + (zTop + img.h - 50) + 'px;">' + o.parentNode.getElementsByTagName('span')[0].innerHTML + '</span><a id="zoom_download" style="z-index: 5; position: absolute; margin-left: ' + (zLeft + img.w - 100) + 'px; margin-top: ' + (zTop + img.h - 85) + 'px;" href="/getimg.php?id=' + iID + '"><img style="z-index: 5;" src="/s/i/download.png" border="0" alt="Download" title="Originalbild donwloaden (best quality)" /></a>';
      }
    }
    else
    {
      o.parentNode.removeChild(o);
    }
  }
}

function zoomButtons()
{
  document.body.insertBefore(zoomButton0,document.getElementById('zoom_area'));
  zoomButton0.style.display = 'block';
  zoomButton0.style.left = (pos(zimg).left + zimg.offsetWidth - 20) + 'px';
  zoomButton0.style.top = (pos(zimg).top - 20) + 'px';
  
  if(zimg.parentNode.parentNode.id == 'album' || zimg.parentNode.parentNode.id == 'groups')
  {
    document.body.insertBefore(zoomButton1,document.getElementById('zoom_area'));
    zoomButton1.style.display = 'block';
    zoomButton1.style.left = (pos(zimg).left - 40) + 'px';
    zoomButton1.style.top = (pos(zimg).top + zimg.offsetHeight/2 - 20) + 'px';
    
    document.body.insertBefore(zoomButton2,document.getElementById('zoom_area'));
    zoomButton2.style.display = 'block';
    zoomButton2.style.left = (pos(zimg).left + zimg.offsetWidth + 10) + 'px';
    zoomButton2.style.top = (pos(zimg).top + zimg.offsetHeight/2 - 20) + 'px';
  }
}

function xZoom()
{
  if(iLock == 1)
  {
    return false;
  }
  iLock = 1;
  
  document.body.removeChild(zoomButton0);
  
    zimg = document.getElementById('zoom_img');
    
  if(zimg.parentNode.parentNode.id == 'album' || zimg.parentNode.parentNode.id == 'groups')
  {
    if(document.getElementById('zoom_desc'))
    {
      document.getElementById('zoom_desc').parentNode.removeChild(document.getElementById('zoom_desc'));
    }
    if(document.getElementById('zoom_download'))
    {
      document.getElementById('zoom_download').parentNode.removeChild(document.getElementById('zoom_download'));
    }
    document.body.removeChild(zoomButton1);
    document.body.removeChild(zoomButton2);
  }
  document.getElementById('zoom_area').style.display = 'none';
  
    img = zimg.parentNode.getElementsByTagName('img')[1];
    
    zLeft = parseInt(img.style.marginLeft);
    
    zTop = parseInt(img.style.marginTop);
    
    if(!zLeft)
    {
      zLeft = 0;
    }
    
    if(!zTop)
    {
      zTop = 0;
    }
    
    img.w = img.width;
    
    img.h = img.height;
    
    x = 50;
    
    mL = parseInt(zimg.style.marginLeft);
    mT = parseInt(zimg.style.marginTop);
    Lpx = (zLeft-mL)/x;
    Tpx = (zTop-mT)/x;
    Wpx = (img.w-zimg.offsetWidth)/x;
    Hpx = (img.h-zimg.offsetHeight)/x;
    
    iW = zimg.offsetWidth;
    iH = zimg.offsetHeight;
    
    if(document.getElementById('facebook_like'))
    {
      document.getElementById('facebook_like').style.display = 'block';
    }
    i = -10;
    enlarge(document.getElementById('zoom_img'));
}

function nextImage(n)
{
  if(iLock == 1)
  {
    return false;
  }
  
  iLock = 1;
  
  if(n == 1)
  {
    if(document.getElementById('album') && document.getElementById('zoom_img').parentNode == document.getElementById('album').getElementsByTagName('div')[document.getElementById('album').getElementsByTagName('div').length-1])
    {
      nextImg = document.getElementById('album').getElementsByTagName('div')[0];
    }
    else if(document.getElementById('groups') && document.getElementById('zoom_img').parentNode == document.getElementById('groups').getElementsByTagName('div')[document.getElementById('groups').getElementsByTagName('div').length-1])
    {
      nextImg = document.getElementById('groups').getElementsByTagName('div')[0];
    }
    else
    {
      nextImg = document.getElementById('zoom_img').parentNode.nextSibling.nextSibling;
      
      while (nextImg.nodeType==3)
      {
        nextImg = nextImg.nextSibling;
      }
      
      while(nextImg.tagName != 'DIV')
      {
        nextImg = nextImg.nextSibling;
      }
    }
  }
  else
  {
    if(document.getElementById('album') && document.getElementById('zoom_img').parentNode == document.getElementById('album').getElementsByTagName('div')[0])
    {
      nextImg = document.getElementById('album').getElementsByTagName('div')[document.getElementById('album').getElementsByTagName('div').length-1];
    }
    else if(document.getElementById('groups') && document.getElementById('zoom_img').parentNode == document.getElementById('groups').getElementsByTagName('div')[0])
    {
      nextImg = document.getElementById('groups').getElementsByTagName('div')[document.getElementById('groups').getElementsByTagName('div').length-1];
    }
    else
    {
      nextImg = document.getElementById('zoom_img').parentNode.previousSibling;
      while (nextImg.nodeType==3)
      {
        nextImg = nextImg.previousSibling;
      }
      
      while(nextImg.tagName != 'DIV')
      {
        nextImg = nextImg.previousSibling;
      }
    }
  }
  
  lNextImage(nextImg);
}

function lNextImage(o)
{
  img = new Image();
  if(o.getElementsByTagName('input')[0])
  {
    img.src = o.getElementsByTagName('input')[0].value;
  }
  else
  {
    iLock = 0;
    return false;
  }
  if(o.getElementsByTagName('input')[0] && img.complete && img.src != false)
  {
    /*o.parentNode.removeChild(document.getElementById('zoom_loader'));*/
    
    document.getElementById('zoom_img').id = 'last_zoom_img';
    
    zimg = document.createElement('img');
    zimg.src = img.src;
    zimg.id = 'zoom_img';
    zimg.style.opacity = (0);
    zimg.style.MozOpacity = (0);
    zimg.style.KhtmlOpacity = (0);
    zimg.style.filter = "alpha(opacity=0)";
    o.insertBefore(zimg, o.getElementsByTagName('img')[0]);
    zimg.style.width = document.getElementById('last_zoom_img').offsetWidth + 'px';
    zimg.style.height = document.getElementById('last_zoom_img').offsetHeight + 'px';
    zimg.style.marginLeft = pos(document.getElementById('last_zoom_img')).left - pos(zimg).left + 'px';
    zimg.style.marginTop = pos(document.getElementById('last_zoom_img')).top - pos(zimg).top + 'px';
    zimg.style.position = 'absolute';
    zimg.style.zIndex = 5;
    
    img.w = img.width;
    
    img.h = img.height;
    
    if(img.w+60 > document.getElementById('zoom_area').offsetWidth)
    {
      img.w = document.getElementById('zoom_area').offsetWidth-60;
      img.h = img.w/img.width*img.h;
    }
    
    if(img.h+100 > document.getElementById('zoom_area').offsetHeight)
    {
      img.h = document.getElementById('zoom_area').offsetHeight-100;
      img.w = img.h/img.height*img.w;
    }
    
    zLeft = (document.getElementById('zoom_area').offsetWidth - img.w)/2 - pos(o.getElementsByTagName('img')[o.getElementsByTagName('img').length-1]).left;
    
    zTop = (document.getElementById('zoom_area').offsetHeight - img.h)/2 - pos(o.getElementsByTagName('img')[o.getElementsByTagName('img').length-1]).top + pageY;
    
    
    x = 10;
    
    mL = parseInt(zimg.style.marginLeft);
    mT = parseInt(zimg.style.marginTop);
    mL2 = parseInt(document.getElementById('last_zoom_img').style.marginLeft);
    mT2 = parseInt(document.getElementById('last_zoom_img').style.marginTop);
    Lpx = (zLeft-mL)/x;
    Tpx = (zTop-mT)/x;
    Wpx = (img.w-zimg.offsetWidth)/x;
    Hpx = (img.h-zimg.offsetHeight)/x;
    
    iW = zimg.offsetWidth;
    iH = zimg.offsetHeight;
    
    if(document.getElementById('zoom_desc'))
    {
      document.getElementById('zoom_desc').parentNode.removeChild(document.getElementById('zoom_desc'));
    }
    if(document.getElementById('zoom_download'))
    {
      document.getElementById('zoom_download').parentNode.removeChild(document.getElementById('zoom_download'));
    }
    
    document.getElementById('zoom_button_0').style.display = 'none';
    
    document.getElementById('zoom_button_1').style.display = 'none';
    
    document.getElementById('zoom_button_2').style.display = 'none';
    
    document.getElementById('last_zoom_img').parentNode.removeChild(document.getElementById('last_zoom_img'));
    
    i = -10;
    nextEnlarge();
  }
  else
  {
    if(!document.getElementById('zoom_loader'))
    {
      /*o.parentNode.insertBefore(zoomLoader, o);*/
    }
    o2 = o;
    setTimeout("lNextImage(o2)", 300);
  }
}

function nextEnlarge()
{
  i++;
  
  if(i+5 > x)
  {
    Wpx = Wpx/2;
    Hpx = Hpx/2;
    Lpx = Lpx/2;
    Tpx = Tpx/2;
  }
  else if(i+15 == x)
  {
    Wpx = Wpx/2;
    Hpx = Hpx/2;
    Lpx = Lpx/2;
    Tpx = Tpx/2;
  }
  iW = iW + Wpx;
  iH = iH + Hpx;
  
  document.getElementById('zoom_img').style.width = iW + 'px';
  document.getElementById('zoom_img').style.height = iH + 'px';
  
  mL = mL+Lpx;
  mT = mT+Tpx;
  mL2 = mL2+Lpx;
  mT2 = mT2+Tpx;
  
  document.getElementById('zoom_img').style.marginLeft = mL + 'px';
  document.getElementById('zoom_img').style.marginTop = mT + 'px';
  
  opacity(document.getElementById('zoom_img'), (i/x));
  
  if(i<x)
  {
    setTimeout("nextEnlarge()", 20);
  }
  else
  {
    iLock = 0;
    
    document.getElementById('zoom_img').style.width = img.w + 'px';
    document.getElementById('zoom_img').style.height = img.h + 'px';
    
    document.getElementById('zoom_img').style.marginLeft = zLeft + 'px';
    document.getElementById('zoom_img').style.marginTop = zTop + 'px';
    document.getElementById('zoom_img').style.zIndex = 4;
    
    document.getElementById('zoom_button_0').style.display = 'block';
    document.getElementById('zoom_button_0').style.left = (pos(zimg).left + zimg.offsetWidth - 20) + 'px';
    document.getElementById('zoom_button_0').style.top = (pos(zimg).top - 20) + 'px';
    document.getElementById('zoom_button_1').style.display = 'block';
    document.getElementById('zoom_button_1').style.left = (pos(zimg).left - 40) + 'px';
    document.getElementById('zoom_button_1').style.top = (pos(zimg).top + zimg.offsetHeight/2 - 20) + 'px';
    document.getElementById('zoom_button_2').style.display = 'block';
    document.getElementById('zoom_button_2').style.left = (pos(zimg).left + zimg.offsetWidth + 10) + 'px';
    document.getElementById('zoom_button_2').style.top = (pos(zimg).top + zimg.offsetHeight/2 - 20) + 'px';
    
    if(document.getElementById('zoom_img').parentNode.parentNode.id == 'groups')
    {
      iID = document.getElementById('zoom_img').parentNode.getElementsByTagName('input')[0].value.split('/')[3];
      document.getElementById('zoom_img').parentNode.innerHTML = document.getElementById('zoom_img').parentNode.innerHTML + '<span id="zoom_desc" style="display: block; z-index: 5; position: absolute; background-image: url(\'/s/i/trans.png\'); color: #ffffff; z-index: 5; padding-left: 10px; padding-right: 10px; font-size: 26px; margin-left: ' + (zLeft + 20) + 'px; margin-top: ' + (zTop + img.h - 50) + 'px;">' + document.getElementById('zoom_img').parentNode.getElementsByTagName('span')[0].innerHTML + '</span><a id="zoom_download" style="z-index: 5; position: absolute; margin-left: ' + (zLeft + img.w - 100) + 'px; margin-top: ' + (zTop + img.h - 85) + 'px;" href="/getimg.php?id=' + iID + '"><img style="z-index: 5;" src="/s/i/download.png" border="0" alt="Download" title="Originalbild donwloaden (best quality)" /></a>';
    }
  }
}

function opacity(o, x)
{
  o.style.opacity = (x);
  o.style.MozOpacity = (x);
  o.style.KhtmlOpacity = (x);
  o.style.filter = "alpha(opacity=" + x*100 + ")";
}
