function setActiveStyleSheet(name) 
{
  var i, a, main;
  for(i=0; (a = document.getElementsByTagName("link")[i]); i++) {
    if(a.getAttribute("rel") && a.getAttribute("rel").indexOf("style") != -1 && a.getAttribute("title")) {
      a.disabled = true;
      if(a.getAttribute("title") == name) a.disabled = false;
    }
  }
}

function changeStyleSheet(name,value)
{
	setProfileCookie(name,value);
	setActiveStyleSheet(value);
}


function setProfileCookie(name,value) 
{
  	var expiration_date = new Date("January 1, 2010");
 	expiration_date = expiration_date.toGMTString();
	setCookie(name, value, expiration_date);
}

function setCookie(name, value, expires)
{
	 document.cookie= name + "=" + escape(value) +
        ((expires) ? "; expires=" + expires : "") + "; path=/" ;
	
}

function setRouterSize(i)
{
	setProfileCookie("RouterCookie",i);	
	//	thisMovie("routerswf").SetVariable("largetext", sendTextL);
	//	thisMovie("routerswf").SetVariable("smalltext", sendTextS);	
	if(window.routerswf) window.document["routerswf"].SetVariable("strSize", i);
	else if(document.routerswf) document.routerswf.SetVariable("strSize", i);
	 postionSubNav(true);
	//	setFlashVariables('routerswf','largetext=' + sendTextL +'&'+'smalltext='+sendTextS);
	//	setFlashVariables('routerswf','largetext=14&smalltext=13');	
}

/**
 * Gets the value of the specified cookie.
 *
 * name  Name of the desired cookie.
 *
 * Returns a string containing value of specified cookie,
 *   or null if cookie does not exist.
 */
function getCookie(name)
{
    var dc = document.cookie;
    var prefix = name + "=";
    var begin = dc.indexOf("; " + prefix);
    if (begin == -1)
    {
        begin = dc.indexOf(prefix);
        if (begin != 0) return null;
    }
    else
    {
        begin += 2;
    }
    var end = document.cookie.indexOf(";", begin);
    if (end == -1)
    {
        end = dc.length;
    }
    return unescape(dc.substring(begin + prefix.length, end));
}


function addBookmark(url,title) {
if (window.sidebar) {
window.sidebar.addPanel(title, url,"");
} else if( document.all ) {
 window.external.AddFavorite( url, title);
 } else if( window.opera && window.print ) {
 return true;
}
}

function setTitle(str)
{
	document.title = "Cafe Lowrey - " + str;	
}

function openPicture(url, width, height)
{
	var str 	= "height=" + (height+30) + ",innerHeight=" + height + ",width=" + (width+30) + ",innerWidth=" + width + ",statusbar=no,scrollbars=yes";
	var xpos	= (screen.availWidth-width)/2;
	var ypos	= (screen.availHeight-height)/2;
	newWindow 	= window.open(url,"pic",str);
	newWindow.focus();
	return newWindow;
}

function openURL(url, name, width, height)
{
	var str 	= "height=" + height + ",innerHeight=" + height + ",width=" + width + ",innerWidth=" + width + ",statusbar=no,scrollbars=no";
	var xpos	= (screen.availWidth-width)/2;
	var ypos	= (screen.availHeight-height)/2;
	newWindow 	= window.open(url,"pic",str);
	newWindow.focus();
	return newWindow;
	
}

function checkDay()
{
	var month 		= document.getElementById("mm").value;
	var dsel 		= document.getElementById("dd");
	var selval		= document.getElementById("dd").value;
	var year 		= document.getElementById("yy").value;
	var leapyear 	= false;
	if (year % 4 == 0) leapyear = true;
	var monthlength = 30;
    switch (parseInt(month))
	{
		case 1: monthlength=31; break;
		case 2: monthlength=(leapyear?29:28); break;
		case 3: monthlength=31; break;
		case 4: monthlength=30; break;
		case 5: monthlength=31; break;
		case 6: monthlength=30; break;
		case 7: monthlength=31; break;
		case 8: monthlength=31; break;
		case 9: monthlength=30; break;
		case 10: monthlength=31; break;
		case 11: monthlength=30; break;
		case 12: monthlength=31; break;
	}
	dsel.options.length 	= monthlength;
	for (i = 0; i < dsel.options.length; i++)
	{
		dsel.options[i].value 	= (i+1);
		dsel.options[i].text 	= (i+1);
	}
}

function MM_findObj(n, d) { //v4.01
  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 && d.getElementById) x=d.getElementById(n); return x;
}

function MM_validateForm() { //v4.0
  var i,p,q,nm,test,num,min,max,errors='',args=MM_validateForm.arguments;
  for (i=0; i<(args.length-2); i+=3) { test=args[i+2]; val=MM_findObj(args[i]);
    if (val) { nm=val.name; if ((val=val.value)!="") {
      if (test.indexOf('isEmail')!=-1) { p=val.indexOf('@');
        if (p<1 || p==(val.length-1)) errors+='- '+nm+' must contain an e-mail address.\n';
      } else if (test!='R') { num = parseFloat(val);
        if (isNaN(val)) errors+='- '+nm+' must contain a number.\n';
        if (test.indexOf('inRange') != -1) { p=test.indexOf(':');
          min=test.substring(8,p); max=test.substring(p+1);
          if (num<min || max<num) errors+='- '+nm+' must contain a number between '+min+' and '+max+'.\n';
    } } } else if (test.charAt(0) == 'R') errors += '- '+nm+' is required.\n'; }
  } if (errors) alert('The following error(s) occurred:\n'+errors);
  document.MM_returnValue = (errors == '');
}

Window.onDomReady(delayActivatePage.bind(this));

function delayActivatePage()
{
	$(document.body).addClass('script');
	activatePage.delay(10);
}


function postionSubNav(bolNoFade)
{
	var strSectionName			= $(document.body).getProperty('id');
	if (Cookie.get('TextCookie') && Cookie.get('TextCookie') == "false")
	{
		if(strSectionName && $('dyn_pagetitle'))
		{
			var objCoordinates 			= $('dyn_pagetitle').getCoordinates();
			var objSubnav				= $('sub_nav_'+strSectionName);
			var objMenuCoor				= $('menu').getCoordinates();
			var objMastheadCoor			= $('masthead').getCoordinates();
			var intPadding				= 45;
			var intRePostion			= objMenuCoor.width - objMastheadCoor.width + objCoordinates.width + intPadding;
			if(objSubnav)
			{
				objSubnav.setStyle('left', intRePostion+'px');
				if (!bolNoFade)
				{
					objSubnav.setOpacity(0);
					new Fx.Style(objSubnav, 'opacity', {duration:1000, transition:Fx.Transitions.expoInOut}).start(0,1);
				}
			}		
		}
	}
}

function activatePage()
{
	
	footnoteLinks('cabin','wrapper_outer');
	writeBookmarkLink();	
	
	
	postionSubNav();	
	
	var strMastheadImage		= $('masthead_image');
	
	if (strMastheadImage)
	{								
		if (Cookie.get('FlashCookie') && Cookie.get('FlashCookie') == "false")
		{			
			// If the flash cookie is set to false fade in the image
			strMastheadImage.setOpacity(0);	
			new Fx.Style(strMastheadImage, 'opacity', {duration:1200, transition:Fx.Transitions.expoInOut}).start(0,1);
		}
	}
	
	if (Cookie.get('TextCookie') && Cookie.get('TextCookie') == "false")
	{
		// Find a List of tags from the first coloumn
		var objColumn				= $('column_first');
		if(objColumn)
		{
			var arrItems				= objColumn.getChildren();
			var arrParas				= new Array();
			// loop through the array looking for paragraph tags
			for (var y = 0; y < arrItems.length; y++)
			{
				if (arrItems[y].tagName != null && arrItems[y].getTag() == 'p')
				{
					arrParas.push(arrItems[y]);
				}
			}
			if (arrParas.length > 0)
			{
				// Get the last one
				var objLastPara				= arrParas[arrParas.length-1];	
				
				// make sure we want a leaf on it
				if(!objLastPara.attributes["class"] || (objLastPara.attributes["class"] && objLastPara.attributes["class"].value != "NoLeaf"))
				{
					// Create a leaf image and inject it within the tag
					var objNewLeafImg 			= new Element('img');						
					objNewLeafImg.setProperty('src', '../z_images/layout/bg_leaf.gif');
					objNewLeafImg.setProperty('alt', 'End.');
					objNewLeafImg.injectInside(objLastPara);
				}
			}
		}
		
		// Search for any .signoff classes
		var arrSignOff 					= $$('.signoff');
		
		for (var x = 0; x < arrSignOff.length; x++)
		{
			// Create a leaf image and inject it within the tag
			var objNewLeafImg 		= new Element('img');						
			objNewLeafImg.setProperty('src', '../z_images/layout/bg_leaf.jpg');
			objNewLeafImg.setProperty('alt', 'End.');
			objNewLeafImg.injectInside(arrSignOff[x]);							
		}
			
		if (BrowserDetect.browser != "Opera" && BrowserDetect.browser != "Safari")
		{
			var arrFieldSets			= $$('fieldset');
			
			for (var x = 0; x < arrFieldSets.length; x++)
			{
				var objDivTL			= new Element('div');
				objDivTL.addClass('tl');
				objDivTL.injectInside(arrFieldSets[x]);	
				
				var objDivTR			= new Element('div');
				objDivTR.addClass('tr');
				objDivTR.injectInside(arrFieldSets[x]);	
				
				var objDivBL			= new Element('div');
				objDivBL.addClass('bl');
				objDivBL.injectInside(arrFieldSets[x]);	
				
				var objDivBR			= new Element('div');
				objDivBR.addClass('br');
				objDivBR.injectInside(arrFieldSets[x]);	
			}
		}
	}
	
	var accessCtrl					= $('accessibility_ctrl');
	
	if (Cookie.get('TextCookie') && Cookie.get('TextCookie') == "false")
	{
		var accessClicker			= $('dyn_access_click');
		
		if (Cookie.get("accessCookie") && Cookie.get("accessCookie") == "true")		
		{
			accessCtrl.setOpacity(100);
			accessCtrl.setStyle('visibility', 'visible');
			accessClicker.addClass('dyn_peek');
		} else {
			accessCtrl.setOpacity(0);			
		}		
	
		accessClicker.addEvent('click', function()
										{															
											if (accessClicker.hasClass('dyn_peek'))
											{
												// hide the accessibility panel
												Cookie.set("accessCookie", "false", {duration: false, path:"/", domain:"countylife.theroundhouse.local"});
												accessClicker.removeClass('dyn_peek');
												new Fx.Style(accessCtrl, 'opacity', {duration:500, transition:Fx.Transitions.expoInOut}).start(1,0);																			
											} else {
												// show the accessibility panel
												Cookie.set("accessCookie", "true", {duration: false, path:"/", domain:"countylife.theroundhouse.local"});
												accessClicker.addClass('dyn_peek');
												new Fx.Style(accessCtrl, 'opacity', {duration:500, transition:Fx.Transitions.expoInOut}).start(0,1);								
											}										
										});	
	} else {
		accessCtrl.setOpacity(100);
		accessCtrl.setStyle('visibility', 'visible');
	}
}


					
////////////////////////////////
// Courtesy of QuirksMode.Org //
////////////////////////////////

var BrowserDetect =
{
	init: function ()
	{
		this.browser = this.searchString(this.dataBrowser) || "An unknown browser";
		this.version = this.searchVersion(navigator.userAgent)
					|| this.searchVersion(navigator.appVersion)
					|| "An unknown version";
		this.OS 	 = this.searchString(this.dataOS) || "An unknown OS";
	},
	searchString: function (data)
	{
		for (var i=0;i<data.length;i++)
		{
			var dataString			 = data[i].string;
			var dataProp			 = data[i].prop;
			this.versionSearchString = data[i].versionSearch || data[i].identity;
			if (dataString)
			{
				if (dataString.indexOf(data[i].subString) != -1)
				{
					return data[i].identity;
				}
			}
			else if (dataProp)
			{
				return data[i].identity;
			}
		}
	},
	searchVersion: function (dataString)
	{
		var index = dataString.indexOf(this.versionSearchString);
		if (index == -1) return;
		return parseFloat(dataString.substring(index+this.versionSearchString.length+1));
	},
	dataBrowser:
	[
		{ 	string: navigator.userAgent,
			subString: "OmniWeb",
			versionSearch: "OmniWeb/",
			identity: "OmniWeb"
		},
		{
			string: navigator.vendor,
			subString: "Apple",
			identity: "Safari"
		},
		{
			prop: window.opera,
			identity: "Opera"
		},
		{
			string: navigator.vendor,
			subString: "iCab",
			identity: "iCab"
		},
		{
			string: navigator.vendor,
			subString: "KDE",
			identity: "Konqueror"
		},
		{
			string: navigator.userAgent,
			subString: "Firefox",
			identity: "Firefox"
		},
		{
			string: navigator.vendor,
			subString: "Camino",
			identity: "Camino"
		},
		{		// for newer Netscapes (6+)
			string: navigator.userAgent,
			subString: "Netscape",
			identity: "Netscape"
		},
		{
			string: navigator.userAgent,
			subString: "MSIE",
			identity: "Explorer",
			versionSearch: "MSIE"
		},
		{
			string: navigator.userAgent,
			subString: "Gecko",
			identity: "Mozilla",
			versionSearch: "rv"
		},
		{ 		// for older Netscapes (4-)
			string: navigator.userAgent,
			subString: "Mozilla",
			identity: "Netscape",
			versionSearch: "Mozilla"
		}
	],
	dataOS :
	[
		{
			string: navigator.platform,
			subString: "Win",
			identity: "Windows"
		},
		{
			string: navigator.platform,
			subString: "Mac",
			identity: "Mac"
		},
		{
			string: navigator.platform,
			subString: "Linux",
			identity: "Linux"
		}
	]

};

BrowserDetect.init();

/*
	Author:		Mike Harris
	Purpose:	Writes out a reasonably reliable 'bookmark this page' 
				link using the lovely browser detect code above
*/
function writeBookmarkLink()
{
	var strOnClick	= "";
	var bolMac	  	= (BrowserDetect.OS == "Mac");
	var strButton	= (bolMac ? "Command" : "CTRL");
	
	var lnkBookmarker = document.getElementById("lnkBookmark");

	if(lnkBookmarker)
	{
		strUrl	 = location.href;
		strTitle = document.title;
		
		if(BrowserDetect.browser == "Opera" && parseInt(BrowserDetect.version) >= '7')
		{
			lnkBookmarker.href  = strUrl;			
			lnkBookmarker.rel   = 'sidebar';
			lnkBookmarker.title = strTitle;			
		}
		else
		{
			lnkBookmarker.title = "Click Here To Bookmark '" + strTitle + "'";

			lnkBookmarker.onclick = function()
			{
				switch(BrowserDetect.browser)
				{
					case "Explorer":
						window.external.AddFavorite(strUrl, strTitle);
					break;
					case "Firefox":
						window.sidebar.addPanel(strTitle, strUrl,'');
					break;
					case "Opera":
						alert('To bookmark this page, press ' + strButton + ' + T');
					break;		
					case "Safari":
						alert('To bookmark this page, press ' + strButton + ' + D');
					break;
					case "Netscape":
						alert('To bookmark this page, press ' + strButton + ' + D');
					break;
					case "Konqueror":
						alert('To bookmark this page, press ' + strButton + ' + B');
					break;
					default:
						alert('This page can only be bookmarked via your browser');
					break;
				}
				
				return false;
			}
		}
	}
}

// for the verifictaion image on the 'contact us' page
function regenerate()
{
	strCurrent	= document.getElementById('imgVerify').src;
	iPos		= strCurrent.lastIndexOf('?');
	
	if(iPos > -1)
	{
		strCurrent	= strCurrent.substring(0, strCurrent.lastIndexOf('?'));
	}
	
	document.getElementById('imgVerify').src = strCurrent + "?time=" + (new Date()).getTime();
}