/*------------------------------------------------------------------
	Web Gallery Wizard 
	
	Copywright KOMOTION, Inc. 2003,2004
	
------------------------------------------------------------------*/

// functionality supported on IE 6 or later browsers
var fIExStyle = false;
var fGekStyle = false;
var fOldStyle = false;
var cSlideShowTimeout = 33;
var iSlideCurrent = -1;
var timeoutid = "";

DetectBrowser();

var g_fApplyFilterToImage = (navigator.family == 'ie4' && navigator.version >=5.5);
var g_fApplyNavigation = (navigator.family == 'ie4' && navigator.version >=4);

function DetectBrowser()
{
  var oldOnError = window.onerror;
  var element = null;

  window.onerror = null;
  
  // work around bug in xpcdom Mozilla 0.9.1
  window.saveNavigator = window.navigator;

  navigator.OS    = '';
  navigator.version  = parseFloat(navigator.appVersion);
  navigator.org    = '';
  navigator.family  = '';

  var platform;
  if (typeof(window.navigator.platform) != 'undefined')
  {
    platform = window.navigator.platform.toLowerCase();
    if (platform.indexOf('win') != -1)
      navigator.OS = 'win';
    else if (platform.indexOf('mac') != -1)
      navigator.OS = 'mac';
    else if (platform.indexOf('unix') != -1 || platform.indexOf('linux') != -1 || platform.indexOf('sun') != -1)
      navigator.OS = 'nix';
  }

  var i = 0;
  var ua = window.navigator.userAgent.toLowerCase();
  
  if (ua.indexOf('opera') != -1)
  {
    i = ua.indexOf('opera');
    navigator.family  = 'opera';
    navigator.org    = 'opera';
    navigator.version  = parseFloat('0' + ua.substr(i+6), 10);
  }
  else if ((i = ua.indexOf('msie')) != -1)
  {
    navigator.org    = 'microsoft';
    navigator.version  = parseFloat('0' + ua.substr(i+5), 10);
    
    if (navigator.version < 4)
      navigator.family = 'ie3';
    else
      navigator.family = 'ie4'
  }
  else if (ua.indexOf('gecko') != -1)
  {
    navigator.family = 'gecko';
    var rvStart = ua.indexOf('rv:');
    var rvEnd   = ua.indexOf(')', rvStart);
    var rv      = ua.substring(rvStart+3, rvEnd);
    var rvParts = rv.split('.');
    var rvValue = 0;
    var exp     = 1;

    for (var i = 0; i < rvParts.length; i++)
    {
      var val = parseInt(rvParts[i]);
      rvValue += val / exp;
      exp *= 100;
    }
    navigator.version = rvValue;

    if (ua.indexOf('netscape') != -1)
      navigator.org = 'netscape';
    else if (ua.indexOf('compuserve') != -1)
      navigator.org = 'compuserve';
    else
      navigator.org = 'mozilla';
  }
  else if ((ua.indexOf('mozilla') !=-1) && (ua.indexOf('spoofer')==-1) && (ua.indexOf('compatible') == -1) && (ua.indexOf('opera')==-1)&& (ua.indexOf('webtv')==-1) && (ua.indexOf('hotjava')==-1))
  {
    var is_major = parseFloat(navigator.appVersion);
    
    if (is_major < 4)
      navigator.version = is_major;
    else
    {
      i = ua.lastIndexOf('/')
      navigator.version = parseFloat('0' + ua.substr(i+1), 10);
    }
    navigator.org = 'netscape';
    navigator.family = 'nn' + parseInt(navigator.appVersion);
  }
  else if ((i = ua.indexOf('aol')) != -1 )
  {
    // aol
    navigator.family  = 'aol';
    navigator.org    = 'aol';
    navigator.version  = parseFloat('0' + ua.substr(i+4), 10);
  }
  else if ((i = ua.indexOf('hotjava')) != -1 )
  {
    // hotjava
    navigator.family  = 'hotjava';
    navigator.org    = 'sun';
    navigator.version  = parseFloat(navigator.appVersion);
  }

  window.onerror = oldOnError;
  
  //alert(navigator.OS);
  //alert(navigator.family);
  //alert(navigator.version);
  
	if (navigator.family == 'ie4' && navigator.version >= 4)
	{
	fIExStyle=true;
	}
	else if (navigator.family == 'gecko')// && navigator.version >= 1)	
	{
	fGekStyle=true;
	}
	else
	{
	fOldStyle=true;
	}
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.0
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && document.getElementById) x=document.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

function NavigateImage(iDir)
{
	if (g_fApplyNavigation)
	{
		StopSlideShow();

		var strSource = GetFileName(MainImage.src);
		var oMainDoc = window.parent.document;
		for (i = 0; i<oMainDoc.images.length; i++)
		{
			if (strSource == GetFileName(oMainDoc.images.item(i).src))
			{
				if ((i+iDir) >= 0 && (i+iDir) < oMainDoc.images.length)
				{
					resetImageOnObject(oMainDoc.images.item(i));
					oMainDoc.images.item(i+iDir).parentElement.focus();
					oMainDoc.images.item(i+iDir).click();
					break;
				}
			}
		}
	}
}

function GetFileName(strFileName)
{
	var rgData = strFileName.split("/");
	if (rgData.length > 0)
		return rgData[rgData.length-1];
	else
		return "";
}

function StopSlideShow()
{
	parent.window.fSlideShow = false;
	SlideShowPlay.src = "../../Site/images/WGW_SlidePlay.gif";
	iSlideCurrent = -1;
}

function runSlides()
{
	if (g_fApplyNavigation)
	{
		if (parent.window.fSlideShow == true)
		{
			SlideShowPlay.src = "../../Site/images/WGW_SlideStop.gif";
			timeoutid = setTimeout("Ticker()", cSlideShowTimeout);
		}
		else
		{
			SlideShowPlay.src = "../../Site/images/WGW_SlidePlay.gif";
			if (timeoutid != "")
				clearTimeout(timeoutid);
		}
    }
}

function SlideShow()
{
	if (g_fApplyNavigation)
	{
		// toggle the existing state
		parent.window.fSlideShow = !parent.window.fSlideShow;
		
		// start or stop the slide show
		if (parent.window.fSlideShow == true)
		{
			SlideShowPlay.src = "../../Site/images/WGW_SlideStop.gif";
			NavigateSlideShow();
			timeoutid = setTimeout("Ticker()", cSlideShowTimeout);
		}
		else
		{
			SlideShowPlay.src = "../../Site/images/WGW_SlidePlay.gif";
			if (timeoutid != "")
				clearTimeout(timeoutid);
		}
    }
}

function Ticker()
{
   if (document.readyState == "complete")
   {
		// navigate to the next image in album and set another timer
		NavigateSlideShow();
    }
    timeoutid = setTimeout("Ticker()", cSlideShowTimeout);
}

function NavigateSlideShow()
{
	if (parent.window.fSlideShow == false)
	{
	StopSlideShow();
	return;
	}
	
	var strSource = GetFileName(MainImage.src);
	var oMainDoc = window.parent.document;
	if (iSlideCurrent == -1)
	{
		for (i = 0; i<oMainDoc.images.length; i++)
		{
			if (strSource == GetFileName(oMainDoc.images.item(i).src))
			{
			iSlideCurrent = i;
			break;
			}
		}
	}
	
	resetImageOnObject(oMainDoc.images.item(iSlideCurrent));
	iSlideCurrent = (iSlideCurrent +1) % (oMainDoc.images.length-1);
	oMainDoc.images.item(iSlideCurrent).parentElement.focus();
	oMainDoc.images.item(iSlideCurrent).click();
	parent.window.fSlideShow = true;
}

function CheckSlideShow()
{
	if (g_fApplyNavigation)
	{
		runSlides();		
	}
}	

function SlideShowMouseOver()
{
	if (g_fApplyNavigation)
	{
		if (parent.window.fSlideShow == true)
		{
			SlideShowPlay.src = "../../Site/images/WGW_SlideStop_f2.gif";
			SlideShowPlay.style.cursor='hand';
		}
		else
		{
			SlideShowPlay.src = "../../Site/images/WGW_SlidePlay_f2.gif";
			SlideShowPlay.style.cursor='hand';
		}
	}
}

function SlideShowMouseOut()
{
	if (g_fApplyNavigation)
	{
		if (parent.window.fSlideShow == true)
		{
			SlideShowPlay.src = "../../Site/images/WGW_SlideStop.gif";
			SlideShowPlay.style.cursor='default';
		}
		else
		{
			SlideShowPlay.src = "../../Site/images/WGW_SlidePlay.gif";
			SlideShowPlay.style.cursor='default';
		}
	}
}
