// JavaScript Document

//------------------------------------------------------
// Image Preloader
//------------------------------------------------------

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];
      }
  }
}

x=new Array( );
x[0]="../images/photo/thumb-building.gif";
x[1]="../images/photo/thumb-kasha.gif";
x[2]="../images/photo/thumb-nemo.gif";
x[3]="../images/photo/thumb-maynard.gif";
x[4]="../images/photo/thumb-diesel.gif";
x[5]="../images/photo/thumb-tile.gif";
x[6]="../images/photo/thumb-wiggle.gif";
x[7]="../images/photo/thumb-self.gif";
x[8]="../images/photo/thumb-curtain.gif";
x[9]="../images/photo/thumb-fuzzyseb.gif";
x[10]="../images/photo/thumb-tidewater.gif";

y=new Array( );
y[0]="../images/dvd/thumb-lifeisshort-01.gif";
y[1]="../images/dvd/thumb-lifeisshort-02.gif";
y[2]="../images/dvd/thumb-lifeisshort-03.gif";
y[3]="../images/dvd/thumb-kecak-01.gif";
y[4]="../images/dvd/thumb-kecak-02.gif";
y[5]="../images/dvd/thumb-kecak-03.gif";
y[6]="../images/dvd/thumb-fulltrackestate-01.gif";
y[7]="../images/dvd/thumb-fulltrackestate-02.gif";
y[8]="../images/dvd/thumb-fulltrackestate-03.gif";
y[9]="../images/dvd/thumb-japanmix1-01.gif";
y[10]="../images/dvd/thumb-japanmix1-02.gif";
y[11]="../images/dvd/thumb-japanmix1-03.gif";
y[12]="../images/dvd/thumb-japanmix2-01.gif";
y[13]="../images/dvd/thumb-japanmix2-02.gif";
y[14]="../images/dvd/thumb-japanmix3-01.gif";
y[15]="../images/dvd/thumb-japanmix4-01.gif";
y[16]="../images/dvd/thumb-clonehigh.gif";

z=new Array( );
z[0]="../images/web/thumb-kecak2.gif";
z[1]="../images/web/thumb-stylehouse.gif";
z[2]="../images/web/thumb-208.gif";
z[3]="../images/web/thumb-ymca.gif";
z[4]="../images/web/thumb-chatham.gif";
z[5]="../images/web/thumb-cff.gif";
z[6]="../images/web/thumb-mcmartin.gif";
z[7]="../images/web/thumb-logcanoe.gif";
z[8]="../images/web/thumb-gplm.gif";


//------------------------------------------------------
// CSS OnMouseOver Float
//------------------------------------------------------

document.getElementsByClassName = function (needle)
{
  var         my_array = document.getElementsByTagName("*");
  var         retvalue = new Array();
  var        i;
  var        j;

  for (i = 0, j = 0; i < my_array.length; i++)
  {
    var c = " " + my_array[i].className + " ";
    if (c.indexOf(" " + needle + " ") != -1)
      retvalue[j++] = my_array[i];
  }
  return retvalue;
}
function addEvent(obj, evType, fn)
{
	if (obj.addEventListener)
	{
		obj.addEventListener(evType, fn, true);
		return true;
	} 
	else if (obj.attachEvent)
	{
		var r = obj.attachEvent("on"+evType, fn);
		return r;
	} 
	else 
	{
		return false;
	}
}


// ------------------------------------------------------------

function HelpHover()
{
	this._mousePosX = 0;
	this._mousePosY = 0;
	this._hoverItem = null;
	this._hoverContents = null;
}

HelpHover.prototype.init = function()
{
	var hh = this;
	var helpItems = document.getElementsByClassName('hasHelp');
	for (var i=0; i<helpItems.length; i++)
	{
		helpItems[i].onmousemove = function(e)
		{
			if (!e) var e = window.event;
			if (e.pageX || e.pageY)
			{
				hh.mousePosX = e.pageX;
				hh.mousePosY = e.pageY;
			}
			else if (e.clientX || e.clientY)
			{
				hh.mousePosX = e.clientX + document.documentElement.scrollLeft;
				hh.mousePosY = e.clientY + document.documentElement.scrollTop;
			}
			hh._hoverItem = this;
			hh._hoverContents = document.getElementById(this.id+'Help');
			hh.move();
		}
		helpItems[i].onmouseout = function (e)
		{
			hh.out();
		}
	}
}

HelpHover.prototype.out = function()
{
	this._hoverContents.style.top = -10000+'px';
	this._hoverContents.style.left = -10000+'px';
	this._hoverItem = null;
	this._hoverContents = null;
}

HelpHover.prototype.move = function()
{
	this._hoverContents.style.top = this.mousePosY+20+'px';
	this._hoverContents.style.left = this.mousePosX+0+'px';
	//alert(this._hoverContents.style.width);
	//this._hoverContents.style.left = this.mousePosX-this._hoverContents.style.width+'px';
}

addEvent(window, 'load', function()
{
	var hh = new HelpHover();
	hh.init();
});

//------------------------------------------------------
// Code for the Image Pop Window
//------------------------------------------------------

function openPopup (imageURL, caption) {

/*
Calling sequence: <a href="a.jpg" onclick="return openPopup('images/ann/large-lookingnorth.jpg','Looking North');">

The first parameter is the URL of the image to be opened, and the second 
parameter is the caption for the image which is displayed in the window title
and in the alt property of the image tag.
*/

  // Constants - change these to suit your requirements Note that the defaultWidth
  // and defaultHeight variables should be set to more than your largest image to
  // overcome a bug in Mozilla (at least up to Firefox 0.9).

  var windowTop = 100;                // Top position of popup
  var windowLeft = 100                // Left position of popup
  var defaultWidth = 730;             // Default width (for browsers that cannot resize)
  var defaultHeight = 532;            // Default height (for browsers that cannot resize)
  var onLoseFocusExit = true;         // Set if window to exit when it loses focus
  var undefined;

  // Set up the window open options
  var Options = "width=" + defaultWidth + ",height=" + defaultHeight + ",top=" + windowTop + ",left=" + windowLeft + ",resizable"
  
  // Now write the HTML markup to the new window, ensuring that we insert the 
  // parameter URL of the image and the parameter description of the image in 
  // the right place.
  var myScript = "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\" \"http://www.w3.org/TR/html4/loose.dtd\">\n" +
    "<html>\n" + 
    "<head>\n" + 
    "<title>" + caption + "\</title>\n" +
    "<meta http-equiv=\"Content-Type\" content=\"text/html; charset=ISO-8859-1\">\n" +
    "<meta http-equiv=\"Content-Language\" content=\"en-gb\">\n" +
    "<script language=\"JavaScript\" type=\"text/javascript\">\n" +
    "function resizewindow () {\n" +
    "  var width = document.myimage.width;\n" + 
    "  var height = document.myimage.height;\n";
  
  // Netscape  
  if (navigator.appName.indexOf("Netscape") != -1) {  
    myScript = myScript +  "  window.innerHeight = height;\n  window.innerWidth = width;\n"
  }
   
  // Opera 
  else if (navigator.appName.indexOf("Opera") != -1) {
    myScript = myScript +  "  window.resizeTo (width+12, height+31);\n"
  }
  
  // Microsoft 
  else if (navigator.appName.indexOf("Microsoft") != -1) { 
    myScript = myScript + "  window.resizeTo (width+12, height+31);\n" 
  }
  
  // Assume a frig factor for any other browsers
  else {
    myScript = myScript + "  window.resizeTo (width+14, height+34);\n"
  }
      
  myScript = myScript + "}\n" + "window.onload = resizewindow;\n" +
    "</script>\n</head>\n" + "<body ";
    
  // If the window is required to close when it loses focus.
  if (onLoseFocusExit) {myScript = myScript + "onblur=\"self.close()\" ";}
    
  myScript = myScript + "style=\"margin: 0px; padding: 0px;\">\n" +
    "<img src=\"" + imageURL + "\" alt=\"" + caption + "\" title=\"" + caption + "\" name=\"myimage\">\n" + 
    "</body>\n" +  "</html>\n";
        
  // Diagnostic - uncomment the next line if you wish to see the script generated.   
  //alert (myScript);
  
  // Create the popup window
  var imageWindow = window.open ("","imageWin",Options);
  imageWindow.document.write (myScript)
  imageWindow.document.close ();
  if (window.focus) imageWindow.focus();
  return false;
}

//---------------------------------------------------------------
