<!--
var ns = (navigator.appName.indexOf('Netscape')>-1);
var ie = (navigator.appName.indexOf('Microsoft Internet Explorer')>-1);
var castleMenuItems = new Array(
	["History", "castle-history.html", "History of the Castle","tnav2-history"],
	["Sinclairs", "castle-sinclairs.html", "History of the Sinclairs and Earls of Caithness","tnav2-sinclairs"],
	["Images", "castle-images.html", "Castle Image Library","tnav2-images"]);
var visitMenuItems = new Array(
	["Location","visit-location.html","Location","tnav3-location"],
	["Opening","visit-opening.html","Opening Times","tnav3-opening"],
	["Disabled", "visit-access.html", "Disabled Access","tnav3-disabled"]
	);
var newsMenuItems = new Array(
	["Archive", "news.html?archive=1", "News archive","tnav4-archives"],
	["Calendar", "calendar.html?newspage=2&did=C", "Events Calendar","tnav4-calendar"]
	);
var clanMenuItems = new Array(
	["Faqs", "faq.html", "Faqs","tnav5-faqs"]);
var teamMenuItems = new Array(
	["Earl", "team-earl.html", "The Earl of Caithness","tnav6-earl"],
	["Viscount", "team-viscount.html", "The Viscount Thurso","tnav6-viscount"],
	["Euan", "team-euan.html", "Euan Sinclair","tnav6-euan"],
	["Laird", "team-laird.html", "Iain Laird","tnav6-laird"],
	["Professional", "team-professional.html", "The Professional Team","tnav6-professional"]
	);
var documentsMenuItems = new Array(
	["Constitutional", "docs-constitutional.html", "Constiutional Documents","tnav7-constitutional"],
	["Property", "docs-property.html", "Property","tnav7-property"],
	["Trust", "docs-trust.html", "Trust Records","tnav7-trust"],
	["Accounts", "docs-accounts.html", "Accounts","tnav7-accounts"]
	);
var archaeologyMenuItems = new Array(
	["Archaeology", "arch-update.html", "Archaeological update", "tnav2-archaeology"],
	["Illustrations", "castle-illustrations.html", "Conservation Plan Illustrations","tnav2-illustrations"],
	["Documents", "castle-documents.html", "Conservation Plan Documents","tnav2-documents"]
	);
var resourcesMenuItems = new Array(
	["Links", "resources-links.html", "Links","tnav9-links"]);
	

function createMenu(menuName, menuItems, theUrl)
{
   var myRegEx = /snav[1-9]_/;
   var graphicName = menuName.replace(myRegEx,"");
   var divHTML = '<DIV ID="' + menuName + 'MenuDiv" CLASS="'+ menuName +'DivMenu"';
   divHTML = divHTML + 'onmouseout="return hideMenu(this, ' + menuName.length + ',event)">';
   divHTML = divHTML + '<img src="images/nav-'+graphicName+'_f2.gif" border="0" class="subnavigation" ID=\'' + menuName + 'TableBody\' onclick="goPage(\'' + theUrl + '\')">';

   var tableHTML = '<TABLE BORDER="0" CELLSPACING="0" CELLPADDING="0" ID="' + 
      menuName + 'Table" align="center"><TBODY ID="' + menuName + 'TableBody">';
   var tableRowHTML = "";
   var rowCount;
   var totalNoRows = menuItems.length;
   for (rowCount = 0; rowCount < totalNoRows; rowCount++)
   {
      tableRowHTML = tableRowHTML + '<TR ID="' + menuName + menuItems[rowCount][0] +  'TR"><TD ID="' + menuName + menuItems[rowCount][0];
      tableRowHTML = tableRowHTML + '" onclick="goPage(\'' + menuItems[rowCount][1] + '\')"';
      //tableRowHTML = tableRowHTML + 'CLASS="TDMenu" onmouseover="this.className=\'TDMenuOver\';" onmouseout="this.className=\'TDMenu\';"><img src=\'images/' + menuItems[rowCount][3] + '.gif\' border=\'0\' ID=\'' + menuName + menuItems[rowCount][0] + '\' onMouseOver="MM_swapImage(\'' + menuName + menuItems[rowCount][0] + '\',\'\',\'images/' + menuItems[rowCount][3] + '_f2.gif\')" onMouseOut="MM_swapImgRestore()"></TD></TR>';
      tableRowHTML = tableRowHTML + 'CLASS="TDMenu" onmouseover="this.className=\'TDMenuOver\';" onmouseout="this.className=\'TDMenu\';"><img src=\'images/' + menuItems[rowCount][3] + '.gif\' border=\'0\' ID=\'' + menuName + menuItems[rowCount][0] + '\' onMouseOver="document.images[\'' + menuName + menuItems[rowCount][0] + '\'].src = \'images/' + menuItems[rowCount][3] + '_f2.gif\';" onMouseOut="document.images[\'' + menuName + menuItems[rowCount][0] + '\'].src = \'images/' + menuItems[rowCount][3] + '.gif\';" class="subnavigation"></TD></TR>';
   }
  
   return divHTML + tableHTML + tableRowHTML + '</TBODY></TABLE></DIV>';
}

function showMenu(menuToShow, e)
{
   if (ns)
   {
      var srcElement = e.target;
   } 
   else
   {
      var srcElement = event.srcElement; 
   }
   var xPos = DL_GetElementLeft(srcElement);
   var yPos = DL_GetElementTop(srcElement);
   menuToShow.style.left = xPos // + (srcElement.width)
   menuToShow.style.top = yPos;
}

function hideMenu(menuToHide, menuIDLength, e)
{   
   var toElementID;
   if (ns)
   {
      var mouseLastIn = e.relatedTarget;       
   }
   else
   {
      var mouseLastIn =  event.toElement; 
   }
   if (mouseLastIn != null)
   {
      if (mouseLastIn.nodeType == 3)
      {
         mouseLastIn = mouseLastIn.parentNode; 
      }
      toElementID = mouseLastIn.id;
   }
   else 
   {  
       return false;
   }

   if (typeof(toElementID) == "undefined")
   {
      toElementID = "UNDEF";
   }
   toElementID = toElementID.substr(0,menuIDLength);
   var divMenuID = menuToHide.id;
   divMenuID = divMenuID.substr(0,menuIDLength);
   if (toElementID != divMenuID)
   {
      menuToHide.style.left = -200 + 'px';
      menuToHide.style.top = -1000 + 'px';
   }
}

function DL_GetElementLeft(eElement)
{
    var nLeftPos = eElement.offsetLeft; // initialize var to store calculations 
    var eParElement = eElement.offsetParent; // identify first offset parent element 
    while (eParElement != null)
    {	// move up through element hierarchy 
    	nLeftPos += eParElement.offsetLeft; // appending left offset of each parent 
    	eParElement = eParElement.offsetParent; // until no more offset parents exist 
    }
    return nLeftPos; // return the number calculated
}

function DL_GetElementTop(eElement)
{
    var nTopPos = eElement.offsetTop; // initialize var to store calculations 
    var eParElement = eElement.offsetParent; // identify first offset parent element 
    while (eParElement != null)
    {	// move up through element hierarchy 
    	nTopPos += eParElement.offsetTop; // appending top offset of each parent 
    	eParElement = eParElement.offsetParent; // until no more offset parents exist 
    }
    return nTopPos; // return the number calculated 
}

function goPage(src)
{
   window.location.href = src;
}

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 RRwin(theUrl)
{
	// The following lines set defaults for the popup window size.
	// Adjust these figures here if all popups on the site are to be the same dimensions.
	var winWidth = 506;
	var winHeight = 400;
	
	// By adding additional arguments when calling the function the window
	// dimensions can be amended on the fly.
	// Call with RRwin('url.html',740,600)
	var rrArgs=RRwin.arguments;
	winWidth = rrArgs[1]?rrArgs[1]:winWidth;
	winHeight = rrArgs[2]?rrArgs[2]:winHeight;
	
	var maxWidth = screen.availWidth;
	var maxHeight = screen.availHeight;
	topCoord = (maxHeight/2 - (winHeight/2));
	leftCoord = ((maxWidth/2) - (winWidth/2));
	var newHeight = maxHeight > winHeight?winHeight:maxHeight;
	
	var features = "menubar=yes,scrollbars=yes,resizeable=yes,width="+winWidth+",height="+newHeight+",left="+leftCoord+",top="+topCoord;
	window.open(theUrl, 'popwin', features);
	
	// Idea for future. Could add fourth parameter for a full screen popup.
}

// Browser Detect Lite  v2.1
// http://www.dithered.com/javascript/browser_detect/index.html
// modified by Chris Nott (chris@NOSPAMdithered.com - remove NOSPAM)
//
// modified by Michael Lovitt to include OmniWeb and Dreamcast

function BrowserDetectLite() {
	var ua = navigator.userAgent.toLowerCase(); 
	this.ua = ua;

	// browser name
	this.isGecko     = (ua.indexOf('gecko') != -1);
	this.isMozilla   = (this.isGecko && ua.indexOf("gecko/") + 14 == ua.length);
	this.isNS        = ( (this.isGecko) ? (ua.indexOf('netscape') != -1) : ( (ua.indexOf('mozilla') != -1) && (ua.indexOf('spoofer') == -1) && (ua.indexOf('compatible') == -1) && (ua.indexOf('opera') == -1) && (ua.indexOf('webtv') == -1) && (ua.indexOf('hotjava') == -1) ) );
	this.isIE        = ( (ua.indexOf("msie") != -1) && (ua.indexOf("opera") == -1) && (ua.indexOf("webtv") == -1) ); 
	this.isOpera     = (ua.indexOf("opera") != -1); 
	this.isKonqueror = (ua.indexOf("konqueror") != -1); 
	this.isIcab      = (ua.indexOf("icab") != -1); 
	this.isAol       = (ua.indexOf("aol") != -1); 
	this.isWebtv     = (ua.indexOf("webtv") != -1); 
	this.isOmniweb   = (ua.indexOf("omniweb") != -1);
	this.isDreamcast   = (ua.indexOf("dreamcast") != -1);
	
	// spoofing and compatible browsers
	this.isIECompatible = ( (ua.indexOf("msie") != -1) && !this.isIE);
	this.isNSCompatible = ( (ua.indexOf("mozilla") != -1) && !this.isNS && !this.isMozilla);
	
	// browser version
	this.versionMinor = parseFloat(navigator.appVersion); 
	
	// correct version number for NS6+ 
	if (this.isNS && this.isGecko) {
		this.versionMinor = parseFloat( ua.substring( ua.lastIndexOf('/') + 1 ) );
	}
	
	// correct version number for IE4+ 
	else if (this.isIE && this.versionMinor >= 4) {
		this.versionMinor = parseFloat( ua.substring( ua.indexOf('msie ') + 5 ) );
	}
	
	// correct version number for Opera 
	else if (this.isOpera) {
		if (ua.indexOf('opera/') != -1) {
			this.versionMinor = parseFloat( ua.substring( ua.indexOf('opera/') + 6 ) );
		}
		else {
			this.versionMinor = parseFloat( ua.substring( ua.indexOf('opera ') + 6 ) );
		}
	}
	
	// correct version number for Konqueror
	else if (this.isKonqueror) {
		this.versionMinor = parseFloat( ua.substring( ua.indexOf('konqueror/') + 10 ) );
	}
	
	// correct version number for iCab 
	else if (this.isIcab) {
		if (ua.indexOf('icab/') != -1) {
			this.versionMinor = parseFloat( ua.substring( ua.indexOf('icab/') + 6 ) );
		}
		else {
			this.versionMinor = parseFloat( ua.substring( ua.indexOf('icab ') + 6 ) );
		}
	}
	
	// correct version number for WebTV
	else if (this.isWebtv) {
		this.versionMinor = parseFloat( ua.substring( ua.indexOf('webtv/') + 6 ) );
	}
	
	this.versionMajor = parseInt(this.versionMinor); 
	this.geckoVersion = ( (this.isGecko) ? ua.substring( (ua.lastIndexOf('gecko/') + 6), (ua.lastIndexOf('gecko/') + 14) ) : -1 );
	
	// platform
	this.isWin   = (ua.indexOf('win') != -1);
	this.isWin32 = (this.isWin && ( ua.indexOf('95') != -1 || ua.indexOf('98') != -1 || ua.indexOf('nt') != -1 || ua.indexOf('win32') != -1 || ua.indexOf('32bit') != -1) );
	this.isMac   = (ua.indexOf('mac') != -1);
	this.isUnix  = (ua.indexOf('unix') != -1 || ua.indexOf('linux') != -1 || ua.indexOf('sunos') != -1 || ua.indexOf('bsd') != -1 || ua.indexOf('x11') != -1)
	
	// specific browser shortcuts
	this.isNS4x = (this.isNS && this.versionMajor == 4);
	this.isNS40x = (this.isNS4x && this.versionMinor < 4.5);
	this.isNS47x = (this.isNS4x && this.versionMinor >= 4.7);
	this.isNS4up = (this.isNS && this.versionMinor >= 4);
	this.isNS6x = (this.isNS && this.versionMajor == 6);
	this.isNS6up = (this.isNS && this.versionMajor >= 6);
	
	this.isIE4x = (this.isIE && this.versionMajor == 4);
	this.isIE4up = (this.isIE && this.versionMajor >= 4);
	this.isIE5x = (this.isIE && this.versionMajor == 5);
	this.isIE55 = (this.isIE && this.versionMinor == 5.5);
	this.isIE5up = (this.isIE && this.versionMajor >= 5);
	this.isIE6x = (this.isIE && this.versionMajor == 6);
	this.isIE6up = (this.isIE && this.versionMajor >= 6);
	
	this.isIE4xMac = (this.isIE4x && this.isMac);
}
var browser = new BrowserDetectLite();

//-->
