var speed = 3000

var crossFadeDuration = 3

var Pic1 = new Array()
var Pic2 = new Array()
var Pic3 = new Array()

Pic1[0] = 'images/a_a_g_g.gif'
Pic1[1] = 'images/cat_balloo.gif'
Pic1[2] = 'images/p_n_wedding.gif'
Pic1[3] = 'images/a_g.gif'
Pic1[4] = 'images/d_j.gif'
Pic1[5] = 'images/peter_sue.gif'
Pic1[6] = 'images/gote.gif'
Pic1[7] = 'images/t_j_ithaca.gif'



Pic2[0] = 'images/a_i_seychelles.gif'
Pic2[1] = 'images/d_s_bday.gif'
Pic2[2] = 'images/puerto.gif'
Pic2[3] = 'images/a_i_sf.gif'
Pic2[4] = 'images/g_a_d_j_sweden.gif'
Pic2[5] = 'images/s_a_f_wedding.gif'
Pic2[6] = 'images/p_w.gif'
Pic2[7] = 'images/d_t_j.gif'

Pic3[0] = 'images/bjorkenstams.gif'
Pic3[1] = 'images/h_lg_fam.gif'
Pic3[2] = 'images/t_j_biking.gif'
Pic3[3] = 'images/boys.gif'
Pic3[4] = 'images/hk7s.gif'
Pic3[5] = 'images/t_w_graduation.gif'
Pic3[6] = 'images/t_a_g_d.gif'
Pic3[7] = 'images/a_a.gif'


var t1
var current1 = 0
var p1 = Pic1.length
var preLoad1 = new Array()

var t2
var current2 = 0
var p2 = Pic2.length
var preLoad2 = new Array()


var t3
var current3 = 0
var p3 = Pic3.length
var preLoad3 = new Array()



var numBatchLoad = 3




function preloadNextBatch()
{

	begin = new Date()


    toLoad1 = current1 + numBatchLoad
    if (toLoad1 > p1)
    {
      toLoad1 = p1
    }

	for (i = 0; i < toLoad1; i++)
	{
       preLoad1[i] = new Image()
	   preLoad1[i].src = Pic1[i]
    }

    toLoad2 = current2 + numBatchLoad;
    if (toLoad2 > p1)
    {
      toLoad2 = p1;
    }

	for (i = 0; i < toLoad2; i++)
	{
       preLoad2[i] = new Image()
	   preLoad2[i].src = Pic2[i]
    }


    toLoad3 = current3 + numBatchLoad;
    if (toLoad3 > p1)
    {
      toLoad3 = p1;
    }

	for (i = 0; i < toLoad3; i++)
	{
       preLoad3[i] = new Image()
	   preLoad3[i].src = Pic3[i]
    }
    end = new Date();
    elapsed = end - begin;


    //alert ("Time took: " + elapsed + " seconds to load");

    // If it took longer to load, go to next pic.. otherwise wait.
    if (elapsed < speed)
    {
        wait = speed - elapsed;
		t3 = setTimeout('change1()', wait)
    }
    else
    {
    	change1();
    }



}



function runShow()
{
    // on first load, if cookie has data, return to last image
    if (current1 !=0 && document.all)
    {
      document.images.ShowPic1.src = Pic1[current1]
      document.images.ShowPic2.src = Pic2[current1]
      document.images.ShowPic3.src = Pic3[current1]    
      document.images.ShowPic1.style.filter="blendTrans(duration=1)"
      document.images.ShowPic2.style.filter="blendTrans(duration=1)"
      document.images.ShowPic3.style.filter="blendTrans(duration=1)"     
      document.images.ShowPic1.filters.blendTrans.Apply()
      document.images.ShowPic2.filters.blendTrans.Apply()      
      document.images.ShowPic3.filters.blendTrans.Apply()            
      document.images.ShowPic1.filters.blendTrans.Play()
      document.images.ShowPic2.filters.blendTrans.Play()
      document.images.ShowPic3.filters.blendTrans.Play()
      
      current1 = current1 + 1
      if (current1 > (p1-2)) current1=0
      current2 = current2 + 1
      if (current2 > (p2-2)) current2=0
      current3 = current3 + 1
      if (current3 > (p2-2)) current3=0
    }
   setDate()
   preloadNextBatch()
}

function doNothing()
{
   change1();
   t2 = setTimeout(speed/2)
   //alert('test');
   //change2();
   t2 = setTimeout(speed/2)
   //change3();
}

function change1()
{
   if (document.all){
      document.images.ShowPic1.style.filter="blendTrans(duration=crossFadeDuration)"
      document.images.ShowPic1.filters.blendTrans.Apply()
   }
   document.images.ShowPic1.src = preLoad1[current1].src
   if (document.all){
      document.images.ShowPic1.filters.blendTrans.Play()
   }  
   setCookie('lastImage', current1)
   current1 = current1 + 1   
   if (current1 > (p1-2)) current1=0
   t1 = setTimeout('change2()', speed)
}

function change2()
{
   if (document.all){
      document.images.ShowPic2.style.filter="blendTrans(duration=crossFadeDuration)"
      document.images.ShowPic2.filters.blendTrans.Apply()
   }
   document.images.ShowPic2.src = preLoad2[current2].src
   if (document.all){
      document.images.ShowPic2.filters.blendTrans.Play()
   }
   current2 = current2 + 1
   if (current2 > (p2-2)) current2=0
   t2 = setTimeout('change3()', speed)
}


function change3()
{
   if (document.all){
      document.images.ShowPic3.style.filter="blendTrans(duration=crossFadeDuration)"
      document.images.ShowPic3.filters.blendTrans.Apply()
   }
   document.images.ShowPic3.src = preLoad3[current3].src
   if (document.all){
      document.images.ShowPic3.filters.blendTrans.Play()
   }
   current3 = current3 + 1
   if (current3 > (p3-2)) current3=0

   preloadNextBatch()
}


var expdate = new Date (); // pre-set to the current time and date
expdate.setTime(expdate.getTime() + 1000 * 60 * 60 * 24 * 365); // add one year to it 

function getCookieVal (offset) 
{  
   var endstr = document.cookie.indexOf (";", offset);  
   if (endstr == -1)    
      endstr = document.cookie.length;  
   return unescape(document.cookie.substring(offset, endstr));
}

function getCookie (name) 
{  
   var arg = name + "=";  
   var alen = arg.length;  
   var clen = document.cookie.length;  
   var i = 0;  
   while (i < clen) 
   {    
      var j = i + alen;    
      if (document.cookie.substring(i, j) == arg)      
         return getCookieVal (j);    
      i = document.cookie.indexOf(" ", i) + 1;    
      if (i == 0) break;   
   }  
   return null;
}

function setCookie (name, value) 
{  
   var argv = setCookie.arguments;  
   var argc = setCookie.arguments.length;  
   var expires = (argc > 2) ? argv[2] : null;  
   var path = (argc > 3) ? argv[3] : null;  
   var domain = (argc > 4) ? argv[4] : null;  
   var secure = (argc > 5) ? argv[5] : false;  
   document.cookie = name + "=" + escape (value) +  "; expires=" + expdate.toGMTString() + "; path=/";

}


var lastImageValue = getCookie('lastImage');

if (lastImageValue != null) 
{
   current1 = parseInt(lastImageValue)
   current2 = parseInt(lastImageValue)
   current3 = parseInt(lastImageValue)

}



