var Pix_ImgName  = 0;
var Pix_SubTekst = 1;
var Pix_URL      = 2;
var Pix_TopTekst = 3;
var Pix_IMGTekst = 4;
var Pix_IMGPos   = 5;
var css_Path     = '../Slideshow.css'
var PopWindow

var SlideCounter = -1
var PrevSlide    = -1
var SlideTimer   = -1
var DebugOn      = false

// Is dit Opera?
//function IsOpera(){ return RegExp("^.*Opera.*$").exec(navigator.userAgent) != null; }
function IsOpera(){ return navigator.userAgent.indexOf("Opera")>0 }

// Nooit crashen (tenzij DebugOn aan staat).
function blockError(){return DebugOn;}
window.onerror = blockError;

//=== Debug staat online altijd UIT (gelijk ook even aan
//=== de rest vertellen of we online zijn):
var loc = self.location
var WereOnLine = false
loc = loc + ""
if( loc.toUpperCase().indexOf("FILE") == -1 ){
    DebugOn    = false
    WereOnLine = true
  }

//--------------
  function Debug( t ){
//--------------
  if(DebugOn && IsOpera() ){ opera.postError( t ); }
}
//=== Voor browsers die getElementById niet snappen:
if(document.all && !document.getElementById) {
    document.getElementById = function(id) {
         return document.all[id];
}}

//=== De Slideshow (timer wordt in LoadImg() gezet)
//   (nieuwe plaatjes alleen tonen als de vorige compleet binnen is - werkt niet !)
//-----------------------
  function Play_SlideShow(){
//-----------------------
  LoadImg(SlideCounter>=p ? 0 : SlideCounter+1)
}

//=== LoadImg() toont 1 slide, zet er eventueel tekst onder en bestuurt de timer.
//----------------
  function LoadImg(nr){
//----------------
//nr controleren:
  nr= nr<=0 ? 0 : nr
  nr= nr >p ? p : nr

  PrevSlide = SlideCounter;
  SlideCounter = nr

try {
//Kadertje om de actieve Thumbnail zetten:
  if( PrevSlide >= 0 ) {
    var back = parent.Thumbs.document.bgColor;
    parent.Thumbs.document.images(PrevSlide).className="Thumbs"
  }
  parent.Thumbs.document.images(nr).className="ActiveThumb"
//============= Thumbnail synchroniseren:
  if( (parent.Thumbs.document.images(nr).offsetTop +
       parent.Thumbs.document.images(nr).offsetHeight ) >
      (parent.Thumbs.document.body.scrollTop +
       parent.Thumbs.document.body.offsetHeight )
    ){
      parent.Thumbs.scrollBy(0, (parent.Thumbs.document.images(nr).offsetTop   +
                                 parent.Thumbs.document.images(nr).parentElement.parentElement.offsetHeight) -
                                (parent.Thumbs.document.body.offsetHeight +
                                 parent.Thumbs.document.body.scrollTop)
                            )
  }

  if( DebugOn ) {
    top.document.title= parent.Thumbs.document.images(nr).parentElement.offsetTop
                + "; " + parent.Thumbs.document.images(nr).parentElement.offsetHeight
                + "; " + parent.Thumbs.document.images(nr).parentElement.parentElement.offsetTop
                + "; " + parent.Thumbs.document.images(nr).offsetTop
                + "; " + parent.Thumbs.document.images(nr).offsetHeight
  }

  if(parent.Thumbs.document.images(nr).offsetTop <
     parent.Thumbs.document.body.scrollTop
    ){
      parent.Thumbs.scrollTo(0, parent.Thumbs.document.images(nr).parentElement.parentElement.offsetTop)
  }
}catch(e){}

//===========================


//====Plaatje neerzetten:
  if((typeof Pix[nr][Pix_URL])!="undefined"
      && Pix[nr][Pix_URL]!= ""
  ){
    parent.Slide.document.location.replace( "Slides/" + Pix[nr][Pix_URL] )
  }
  else{
//parent.Slide.document.location= ""
    Verhaaltje = ((typeof Pix[nr][Pix_IMGTekst])=="undefined") ? "" : Pix[nr][Pix_IMGTekst]

//====Tekst neerzetten:
    parent.Slide.document.open();
    parent.Slide.document.write( '<HTML>'
                               + '<head><link rel="stylesheet" type="text/css" href="' + css_Path + '">'
                               + '<BASE TARGET="_blank"></head>'
                               + '<body class="SlidePage">'
                               + (DebugOn ? '<INPUT TYPE=TextArea value="<" rows=6 cols=60 id=debug>' : "")
															 + '<div class=SlideDiv>'
  //                           + '<TABLE WIDTH="100%" HEIGHT="100%"  class="SlidePage"><tr><TD>'
                               + '    <center>'
                               + '    <img src="' + "Slides/"
//                        Voor als men een pad naar Thumbs heeft gebruikt:
                               + Pix[nr][Pix_ImgName].replace('/Thumbs/','/Slides/')
                               + '" class=SlidePic' + Pix[nr][Pix_IMGPos] + '>'
                               + '    </center>'
                               )
/*    parent.Slide.document.write( '<HTML>'
                               + '<head><link rel="stylesheet" type="text/css" href="' + css_Path + '">'
                               + '<script type="text/javascript" src="../FitImg.js"></script>'
                               + '<BASE TARGET="_blank"></head>'
                               + '<body class="SlidePage" onload="SizeImg()" onresize="SizeImg()">'
                               + (DebugOn ? '<INPUT TYPE=TextArea value="<" rows=6 cols=60 id=debug>' : "")
                               + '<TABLE WIDTH="100%" HEIGHT="100%"  class="SlidePage"><tr><TD>'
                               + '    <center>'
                               + '    <img src="' + "Slides/"
//                        Voor als men een pad naar Thumbs heeft gebruikt:
                               + Pix[nr][Pix_ImgName].replace('/Thumbs/','/Slides/')
                               + '" class=SlidePic' + Pix[nr][Pix_IMGPos] + '>'
                               + '    </center>'
                               )
*/
  if(Verhaaltje != ""){
    if(Pix[nr][Pix_IMGPos]==""){
// Beetje extra ruimte als de tekst onder het plaatje staat:
       parent.Slide.document.write( '<br>' );
    }
    parent.Slide.document.write( '<div class="SlideTekst' + Pix[nr][Pix_IMGPos]
                               + '">' + Verhaaltje + '</div>'
                               + '</div>'
                               )
  }
    parent.Slide.document.write( ''
//                             + '<br>' + Pix[nr][Pix_ImgName]
                               + '  </TD></tr></TABLE>'
                               + '</body></HTML>'
                               );
    parent.Slide.document.close();
    if( DebugOn ) parent.Slide.debug.value=parent.Slide.document.body.outerHTML;

  }

  if( SlideTimer != -1){ clearTimeout(SlideTimer) }
  if (SlideshowOn){
    SlideTimer = setTimeout('Play_SlideShow(SlideCounter)',SlideSpeed);
  }
//preload next image:
  if( nr < p ){
    PreloadImg = new Image();
    PreloadImg.src = Pix[nr+1][Pix_ImgName]
  }
}

//=== SetButtonText() zet "stop" of "start" op de Slideshow button
//----------------------
  function SetButtonText(){
//----------------------
    document.getElementById('gStartButt').value= SlideshowOn ? "stop" : "start";
}
//----------------
  function go_Left() {
//----------------
                     LoadImg( SlideCounter<=0 ? p : SlideCounter-1 )
//                   SlideshowOn=false;
//                   if( SlideTimer != -1){ clearTimeout(SlideTimer) }
                     document.getElementById('gLeftButt').blur()
                     SetButtonText()
}
//-----------------
  function go_Right(){
//-----------------
                     LoadImg( SlideCounter>=p ? 0 : SlideCounter+1 );
//                   SlideshowOn=false;
//                   if( SlideTimer != -1){ clearTimeout(SlideTimer) }
                     document.getElementById('gRightButt').blur()
                     SetButtonText()
}
//----------------
  function go_Stop() {
//----------------
                     SlideshowOn = !SlideshowOn;
                     if(SlideshowOn){
                      Play_SlideShow()
                     }
                     else{
                       if( SlideTimer != -1){ clearTimeout(SlideTimer) }
                     }
                     document.getElementById('gStartButt').blur()
                     SetButtonText()
}

//-----------------
  function SetSpeed(){
//-----------------
  x=document.getElementById('SecList');

  SlideSpeed = parseInt(x.options[x.selectedIndex].text )*1000;
  if( SlideTimer != -1){ clearTimeout(SlideTimer) }
  if (SlideshowOn){
    SlideTimer = setTimeout('Play_SlideShow(SlideCounter)',SlideSpeed);
  }
}

//-----------------
  function InitPage(){
//-----------------
  var l_URL = location.href
  if(l_URL.indexOf("?")>0){
    var Page = l_URL.substr(l_URL.indexOf("?")+1)
    document.write ( '<html><head>'
                   + '<link rel="stylesheet" type="text/css" href="../Slideshow.css">'
                   + '<link rel="stylesheet" type="text/css" href="../../Overzicht/Overzicht.css">'
                   + "<script language='JavaScript' src='../Slideshow.js'></script>"
                   + '</head>'
                   + '<body>'
                   + '<br><span class=OverzichtsTitel><br>' + Page + '</span>'
                   )
    for (var i in Pix ){
      TopTekst = ((typeof Pix[i][Pix_TopTekst])=="undefined") ? "" : Pix[i][Pix_TopTekst]
      SubTekst = ((typeof Pix[i][Pix_SubTekst])=="undefined") ? "" : Pix[i][Pix_SubTekst]
      ImgName  = ((typeof Pix[i][Pix_ImgName] )=="undefined") ? "" : Pix[i][Pix_ImgName]

      Debug( "InitPage() - thumb: " + ImgName )

      document.write( '<span class=OverzichtsThumb>' )
      if(TopTekst != "") document.write( TopTekst + "<br>" )

      document.write( "" //"<a name='" + ImgName + "'>"
                                  + "<img class=Thumbs "
                                  + "border=2 "
                                  + "src='Thumbs/" + ImgName + "' onclick='ShowImg(" + i + ",'" + ImgName + "')' alt='Pyrofoor de Amsterdam " + SubTekst + "'>"
                                  + ( SubTekst !="" ? "<br>" + SubTekst + "<br>" : "" )
  //                             + "<br>" + ImgName
                                  + "</span>"
                                  )
    }

  }else{
    if(Logo!="_wait_"){
      if(Logo!=""){
      parent.Slide.document.write ( '<html>'
                                  + '<head><script type="text/javascript" src="../FitImg.js"></script></head>'
                                  + '<body class="SlidePage" onload="SizeImg()" onresize="SizeImg()">'
                                  + "<script language='JavaScript' src='../Slideshow.js'></script>"
                                  + '<link rel="stylesheet" type="text/css" href="' + css_Path + '">'
                                  + (DebugOn ? '<INPUT TYPE=TextArea value="<"  rows=6 cols=60 id=debug>' : "")
                                + '<div class=SlideDiv><center>'
  //                              + '<table width=500 height="100%" ALIGN=center border=0 class="SlidePage"><tr><td VALIGN=Middle>'
                                  + "<img src='" + Logo + "'><br><br>"
                                  + ((typeof LogoTekst)=="undefined" ? "" : "<div class='SlideLogoTekst'>" + LogoTekst + "</div>")
  //                              + '</table>'
                                + '</center></div>'
                                  )
      }
    }
    parent.Thumbs.document.write( '<html><BASE TARGET="_blank"><body class="ThumbsPage">'
                                + '<link rel="stylesheet" type="text/css" href="' + css_Path + '">'
                                )

    for (var i in Pix ){
      TopTekst = ((typeof Pix[i][Pix_TopTekst])=="undefined") ? "" : Pix[i][Pix_TopTekst]
      SubTekst = ((typeof Pix[i][Pix_SubTekst])=="undefined") ? "" : Pix[i][Pix_SubTekst]
      ImgName  = ((typeof Pix[i][Pix_ImgName] )=="undefined") ? "" : Pix[i][Pix_ImgName]

      Debug( "InitPage() - thumb: " + ImgName )

      parent.Thumbs.document.write( '<div>' )
      if(TopTekst != ""){
        parent.Thumbs.document.write( TopTekst + "<br>" )
      }

      parent.Thumbs.document.write( "" //"<a name='" + ImgName + "'>"
                                  + (WereOnLine ? "" : i)
                                  + "<img class=Thumbs "
                                  + "border=2 "
                                  + "src='Thumbs/" + ImgName + "' onclick='parent.Controls.LoadImg(" + i + ")' title='Pyrofoor de Amsterdam " + SubTekst + "'>"
                                  + ( SubTekst !="" ? "<br>" + SubTekst + "<br>" : "" )
  //                             + "<br>" + ImgName
                                  + "<br><br></div>"
                                  )
    }
  //parent.Thumbs.document.write( "</div>" );
    parent.Thumbs.document.close();
    parent.Slide.document.close();

    Debug(parent.Thumbs.document.body.outerHTML);
    if(DebugOn){ parent.Slide.debug.value=parent.Thumbs.document.body.outerHTML};
    //if(DebugOn){ parent.Slide.debug.value=parent.Slide.document.body.outerHTML};

    if(Logo!="_wait_"){
      if(Logo!=""){
          if (SlideshowOn){ SlideTimer = setTimeout('Play_SlideShow(SlideCounter)',SlideSpeed); }
      }else{
          SlideTimer = setTimeout('Play_SlideShow(SlideCounter)',0);
      }
    }
    SetButtonText()
  }
}

//---------------
  function AddPic( PicNR ){
//---------------
  var cmd
  var l_IMG   =""
  var l_URL   =""
  var l_TTEXT =""
  var l_BTEXT =""
  var l_STEXT =""
  var l_POS   ="" // bottom

  for (i = 1;i < AddPic.arguments.length;i++) {
    tmp     = AddPic.arguments[i]
    cmd     = tmp.substring(0, tmp.indexOf(":" ) ).toUpperCase()
    AddThis = tmp.substring( tmp.indexOf(":" )+1 )
    FouteCMD= false

    switch( cmd ){
      case "IMG"  : l_IMG   = AddThis; break;
      case "URL"  : l_URL   = AddThis; break;
      case "TTEXT": l_TTEXT = AddThis; break;
      case "BTEXT": l_BTEXT = AddThis; break;
      case "STEXT": l_STEXT = AddThis; break;
      case "LTEXT": l_STEXT = AddThis; l_POS="_l"; break;
      case "RTEXT": l_STEXT = AddThis; l_POS="_r"; break;
      default     : FouteCMD=true
    }
    if( (!WereOnLine) && FouteCMD ){
        alert( "Slideshow.js: AddPic()\nUnknown command error:\n" + tmp )
    }
  }
  Pix[PicNR] = new Array( l_IMG, l_BTEXT, l_URL, l_TTEXT, l_STEXT, l_POS )
}

//Voorbeeld: popup links in de Logo tekst.
//var LogoTekst   = "<div class=ThumbTitle>In de media:</div>"
//                +   "<span class=VisLink2><a href=javascript:Pop_Up(&quot;Slides/Amsterdam_Online.htm&quot;,600,600);>&nbsp;Amsterdam Online </a></span>"
//                + "| <span class=VisLink2><a href=javascript:Pop_Up(&quot;Slides/Trouw.html&quot;,500,400);>&nbsp;Trouw&nbsp;      </a></span>"
//                + "| <span class=VisLink2><a href=javascript:Pop_Up(&quot;Slides/Parool.htm&quot;,600,600);>&nbsp;Het Parool&nbsp; </a></span>"
//                + "| <span class=VisLink2><a href=javascript:Pop_Up(&quot;Slides/AD.html&quot;,600,400);>&nbsp;Algemeen Dagblad    </a></span>"
//
//---------------
  function Pop_Up(htmlFile, Breedte, Hoogte){
//---------------
    if( PopWindow != null ){
        try { PopWindow.close() }
        catch(e){}
    }
    PopWindow = open( htmlFile
                    , "test"
                    , "toolbar=no,menubar=no,width=" + Breedte
                    + ",height=" + Hoogte
                    + ",resizable=yes"
                    + "left = 312,top = 0"
                    )
}

  function ShowImg(i, ImgName) {
                       alert(ImgName)
    if( PopWindow != null ){
        try { PopWindow.close() }
        catch(e){}
    }

    PopWindow = open( "../../Overzicht/Empty.html"
                    , "test"
                    , "toolbar=no,menubar=no,width=500px"
                    + ",height=500px"
                    + ",resizable=yes"
                    + "left = 312,top = 0"
                    )
    PopWindow.document.write("<img src='Slides/" + ImgName + "'>")
}

