  //User settings
  var photoWidth = 800;  //Breedte in pixels, bij een gedraaide foto is dit de hoogte
  var photoHeight = 600; //Hoogte in pixels, bij een gedraaide foto is dit de breedte
  var photoTime = 3500;  //Pauze in microseconde tussen elke foto in play modus

  //System settings
  var photoID = '';
  var playMode = false;
  var newsPhoto = false;
  var teamPhoto = false;

  //Deze functie aanroepen als het fotoalbum geopend moet worden
  function showPhoto(id) {
    photoID = id;
    if (!document.getElementById('showBox')) {
      var boxDiv = document.createElement('div');
      boxDiv.setAttribute('id', 'showBox');
      document.body.appendChild(boxDiv);
      object = document.getElementById('showBox');
      resizeShowBox();
      fadeUp(0, 75, 75);
    } else {
      fadeDown(75, 0, 75);
    }
  }

  //Functie voor het verwijderen van de box
  function removeBoxInfo() {
    document.body.removeChild(document.getElementById('toolbar'));
    document.body.removeChild(document.getElementById('photoLayer'));
    document.body.removeChild(document.getElementById('showBox'));
  }

  //Functie voor het instellen van de opacity van een object
  function opacObj(opacity, obj) { 
    obj.style.opacity = (opacity / 100); 
    obj.style.MozOpacity = (opacity / 100); 
    obj.style.KhtmlOpacity = (opacity / 100); 
    obj.style.filter = "alpha(opacity=" + opacity + ")";
  } 

  //Functie voor het laten in fade van een object
  function fadeUp(fadeStart, fadeStop, fadeStep)  {
    var intFade = fadeStart + fadeStep;
    if (intFade > fadeStop) {
      intFade = fadeStop;
    }
    var temp = 'fadeUp(' + intFade + ',' + fadeStop + ',' + fadeStep + ')';
    opacObj(intFade, object);
    if (intFade < fadeStop) {
      setTimeout(temp, 20);
    } else {
      getPhoto();
    }
  }

  //Functie voor het laten uit fade van een object
  function fadeDown(fadeStart, fadeStop, fadeStep) {
    var intFade = fadeStart - fadeStep;
    if (intFade < fadeStop) {
      intFade = fadeStop;
    }
    var temp = 'fadeDown(' + intFade + ',' + fadeStop + ',' + fadeStep + ')';
    opacObj(intFade, object);
    if (intFade > fadeStop) {
      setTimeout(temp, 20);
    } else {
      removeBoxInfo();
    }
  }

  function preLoadToolBar() {
    var imgStart = document.createElement('img');
    imgStart.src = host + '/images/photo/' + 'start.gif';
    var imgBack = document.createElement('img');
    imgBack.src = host + '/images/photo/' + 'back.gif';
    var imgPlay = document.createElement('img');
    imgPlay.src = host + '/images/photo/' + 'play.gif';
    var imgNext = document.createElement('img');
    imgNext.src = host + '/images/photo/' + 'next.gif';
    var imgEnd = document.createElement('img');
    imgEnd.src = host + '/images/photo/' + 'end.gif';
    var imgLoader = document.createElement('img');
    imgLoader.src = host + '/images/photo/' + 'loader.gif';
    var imgPause = document.createElement('img');
    imgPause.src = host + '/images/photo/' + 'pause.gif';
    var imgBG = document.createElement('img');
    imgBG.src = host + '/images/photo/' + 'bg.gif';
    var imgClose = document.createElement('img');
    imgBG.src = host + '/images/photo/' + 'close.gif';
  }

  //Maak het object aan met toolbar waar de foto's in getoond worden
  function getPhoto() {
    //De foto layer
    var photoLayer = document.createElement('div');
    photoLayer.setAttribute('id', 'photoLayer');
    photoLayer.style.width = photoWidth + 'px';
    photoLayer.style.height = photoHeight + 'px';
    var img = document.createElement('img');
    img.setAttribute('src', host + '/images/photo/loader.gif');
    img.setAttribute('id', 'imgPhoto');
    photoLayer.appendChild(img);
    document.body.appendChild(photoLayer);
    replacePhotoLayer();

    //En de toolbar als top layer
    toolbar = document.createElement('div');
    toolbar.setAttribute('id', 'toolbar');
    toolbar.appendChild(createToolbarButton('Begin', 'toolbarStart', 'start.gif', 'playMode = false; loadPhoto(this.getAttribute(\'photoID\'))'));
    toolbar.appendChild(createToolbarButton('Vorige', 'toolbarBack', 'back.gif', 'playMode = false; loadPhoto(this.getAttribute(\'photoID\'))'));
    toolbar.appendChild(createToolbarButton('Play', 'toolbarPlay', 'play.gif', 'playMode = (playMode ? false : true); if(playMode) {loadPhoto(this.getAttribute(\'photoID\')); document.getElementById(\'toolbarPlay_img\').setAttribute(\'src\', host + \'/images/photo/pause.gif\');} else { document.getElementById(\'toolbarPlay_img\').setAttribute(\'src\', host + \'/images/photo/play.gif\'); }'));
    toolbar.appendChild(createToolbarButton('Volgende', 'toolbarNext', 'next.gif', 'playMode = false; loadPhoto(this.getAttribute(\'photoID\'))'));
    toolbar.appendChild(createToolbarButton('Eind', 'toolbarEnd', 'end.gif', 'playMode = false; loadPhoto(this.getAttribute(\'photoID\'))'));
    var div = document.createElement('div');
    div.setAttribute('id', 'toolbarLoader');
    toolbar.appendChild(div);
    toolbar.appendChild(createToolbarButton('Sluiten', 'toolbarClose', 'close.gif', 'newsPhoto = false; playMode = false; showPhoto();'));
    var div = document.createElement('div');
    div.setAttribute('id', 'toolbarInfo');
    div.appendChild(document.createTextNode('Foto: 0 van 0'));
    toolbar.appendChild(div);
    div = document.createElement('div');
    div.setAttribute(className, 'clear');
    toolbar.appendChild(div);
    document.body.appendChild(toolbar);
    opacObj(50, toolbar);
    toolbar.style.left = parseInt(parseInt(winSize['x'] / 2) - parseInt(toolbar.offsetWidth / 2)) + 'px';
    toolbar.style.top = parseInt(winSize['y'] - toolbar.offsetHeight - 50) + 'px';

    //Laad de openings foto
    loadPhoto(photoID);
  }

  //Functie voor het aanmaken van buttons, Hierbij wordt de naam van de button opgegeven, het plaatje die hij moet krijgen en het event voor als er op geklikt wordt
  function createToolbarButton(name, id, src, event) {
    var a = document.createElement('a');
    a.setAttribute('href', 'javascript:;');
    a.onclick = function() {
      eval(event);
    }
    a.setAttribute('id', id);
    a.setAttribute('photoID', '0');
    var img = document.createElement('img');
    img.setAttribute('id', id + '_img');
    img.setAttribute('src', host + '/images/photo/' + src);
    img.setAttribute('alt', name);
    img.setAttribute('title', name);
    a.appendChild(img);
    return a;
  }

  //Zet de toolbar weer in het midden van het scherm
  function replaceToolbar() {
    if (document.getElementById('toolbar')) {
      document.getElementById('toolbar').style.left = parseInt(parseInt(winSize['x'] / 2) - parseInt(toolbar.offsetWidth / 2) + winScroll['x']) + 'px';
      document.getElementById('toolbar').style.top = parseInt(winSize['y'] - toolbar.offsetHeight - 50 + winScroll['y']) + 'px';
    }
  }

  //Functie om de de Showbox op de juiste grote te zetten
  function resizeShowBox() {
    if (document.getElementById('showBox')) {
      obj = document.getElementById('showBox');
      obj.style.height = (document.documentElement.scrollHeight > document.documentElement.clientHeight ? document.documentElement.scrollHeight : document.documentElement.clientHeight) + 'px';
      obj.style.width = (document.documentElement.scrollWidth > document.documentElement.clientWidth ? document.documentElement.scrollWidth : document.documentElement.clientWidth) + 'px';
    }
  }

  //Zet de toolbar weer in het midden van het scherm
  function replacePhotoLayer() {
    if (document.getElementById('photoLayer')) {
      document.getElementById('photoLayer').style.left = parseInt(parseInt(winSize['x'] / 2) - parseInt(document.getElementById('photoLayer').offsetWidth / 2)) + 'px';
      document.getElementById('photoLayer').style.top = parseInt(parseInt(winSize['y'] / 2)  - parseInt(document.getElementById('photoLayer').offsetHeight / 2)) + 'px';
    }
  }

  //Functie voor het laden van de foto's
  function loadPhoto(id) {
    if (document.getElementById('toolbar')) {
      XMLRequestPhoto = createHTTPHandler();
      XMLRequestPhoto.onreadystatechange=function() {
        if (XMLRequestPhoto.readyState==1) {
          if (!document.getElementById('imgToolbarLoader')) {
            objLoader = document.getElementById('toolbarLoader');
            var img = document.createElement('img');
            img.setAttribute('id', 'imgToolbarLoader');
            img.setAttribute('src', host + '/images/photo/loader.gif');
            img.setAttribute('title', 'Photo Loader');
            img.setAttribute('alt', 'load');
            objLoader.appendChild(img);
          }
        }
        else if (XMLRequestPhoto.readyState==4) {
          var root = XMLRequestPhoto.responseXML;
          var photo = root.getElementsByTagName('photo');
          var imgPhoto = document.getElementById('imgPhoto');
          if (photo.length != 1) {
            var toolbarInfo = document.getElementById('toolbarInfo');
            cleanNode(toolbarInfo);
            toolbarInfo.appendChild(document.createTextNode('Error: Geen foto met dit ID'));
          } else {
            imgPhoto.onload = function () {
              if (document.getElementById('imgToolbarLoader')) {
                cleanNode(document.getElementById('toolbarLoader'));
              }
              imgPhoto.style.width = getNodeValue(photo[0], 'width') + 'px';
              imgPhoto.style.height = getNodeValue(photo[0], 'height') + 'px';
              photoLayer.style.width = getNodeValue(photo[0], 'width') + 'px';
              photoLayer.style.height = getNodeValue(photo[0], 'height') + 'px';
              replacePhotoLayer();
              document.getElementById('toolbarStart').setAttribute('photoID', getNodeValue(photo[0], 'start_id'));
              document.getElementById('toolbarBack').setAttribute('photoID', getNodeValue(photo[0], 'back_id'));
              document.getElementById('toolbarPlay').setAttribute('photoID', getNodeValue(photo[0], 'next_id'));
              document.getElementById('toolbarNext').setAttribute('photoID', getNodeValue(photo[0], 'next_id'));
              document.getElementById('toolbarEnd').setAttribute('photoID', getNodeValue(photo[0], 'end_id'));
              var toolbarInfo = document.getElementById('toolbarInfo');
              cleanNode(toolbarInfo);
              toolbarInfo.appendChild(document.createTextNode('Foto: ' + getNodeValue(photo[0], 'count') + ' van ' + getNodeValue(photo[0], 'total')));
              if (playMode) {
                setTimeout("loadPhoto('"+getNodeValue(photo[0], 'next_id')+"')", photoTime);
              }
            }
            if (newsPhoto) {
              imgPhoto.setAttribute('src', host + '/images/news/' + getNodeValue(photo[0], 'src'));
            }
            else if (teamPhoto) {
              imgPhoto.setAttribute('src', host + '/images/team/' + getNodeValue(photo[0], 'src'));            
            } else {
              imgPhoto.setAttribute('src', host + '/images/photos/' + getNodeValue(photo[0], 'src'));
            }
          }
        }
      }
      if (newsPhoto) {
        var url = "getNewsPhoto/" + id;
      } 
      else if (teamPhoto) {
        var url = "getTeamPhoto/" + id;
      } else {
        var url = "getPhoto/" + id;
      }
      openHTTPHandler(url, XMLRequestPhoto);
    }
  }

  //Laad de plaatjes van de toolbar vast in
  preLoadToolBar()
