var Browser = {
	IE:     !!(window.attachEvent && !window.opera),
	IE7: 	!!(window.attachEvent && !window.opera) && navigator.appVersion.indexOf("MSIE 7.0")>=0,
    Opera:  !!window.opera,
    WebKit: navigator.userAgent.indexOf('AppleWebKit/') > -1,
    Gecko:  navigator.userAgent.indexOf('Gecko') > -1 && navigator.userAgent.indexOf('KHTML') == -1
}
 
function xstatic(page) {
	new Ajax.Request('xstatic.jsp', {
		method: 'post',
		parameters: 'page=' + page,
		onComplete: function(transport) {
			transport.responseText.evalScripts();
			$('xstatic-updater').innerHTML = transport.responseText;
			highslideImages($('xstatic-updater'));
			//initMainContentContainer();
			executeXStaticFunctions();
		}
	});
}

function highslideImages(container) {
	if (module == 'gallery') return;
	if (container == null) container = document;
	var imgs = container.getElementsByTagName("img");
	
	for(var i=0, length=imgs.length; i< length; i++) {
		var img = imgs[i];
		if (img.id != null && img.id == "popup") {
			var p = img.parentNode;
			var popupSrc = img.getAttribute('popupsrc');
			var anchor = document.createElement('a');
			
			anchor.setAttribute('id', 'thumb' + i);
			anchor.setAttribute('class', 'highslide');
			anchor.className = 'highslide';
			if (popupSrc != null) {
				anchor.setAttribute('href', popupSrc);
			} else {
				anchor.setAttribute('href', img.src.replace('_th', ''));
			}
			
			p.replaceChild(anchor, img);
			anchor.appendChild(img);
		 	if (img.alt != null && img.alt != '') {
		 		if (Browser.IE) {
		 			anchor.onclick = function(e) {
		 				var a = (!e) ? window.event.srcElement : e.target;
		 				return hs.expand(a.parentNode, { captionId: 'caption' + a.parentNode.id }); 
		 			}	
		 		} else {
			 		anchor.setAttribute('onclick', 'return hs.expand(this, { captionId: "caption' + anchor.id + '" })');
		 		}
				new Insertion.After(anchor, '<div class="highslide-caption" id="caption' + anchor.id + '">' + img.alt + '</div>');
		 	} else {
		 		if (Browser.IE) {
		 			anchor.onclick = function(e) {
			 			var a = (!e) ? window.event.srcElement : e.target;
			 			return hs.expand(a.parentNode); 
			 		}
		 		} else {
			 		anchor.setAttribute('onclick', 'return hs.expand(this)');
		 		}
		 	}
		}
	}
}
/*
initMainContentContainer = function() {
	var mcc = $('main_content_container');
	if (module == 'first') {
		var fpnc = $('first_page_news_container');
		var h = Element.getHeight(fpnc);
		h = (Browser.IE) ? h - 4 : h + 1;
		Element.setStyle(mcc, {height: h + 'px'});
	} else {
		if (!Browser.IE7) Element.setStyle(mcc, {height: '10px'});
		var lcc = $('left_column_container');
		var lh = Element.getHeight(lcc);
		var mh = Element.getHeight(mcc.parentNode);
		if (lh >= mh) {
			if (!Browser.IE7) Element.setStyle(mcc, {height: lh + 'px'});
		} else {
			Element.setStyle(mcc, {height: mh + 'px'});
		}
		if (Browser.IE7) {
			//Element.setStyle(mcc, {height: 'none'});
		}
	}
	if (!Browser.IE) {
		Element.setStyle(mcc, {
			display: 'table-cell',
			width: '592px'
		});
	}
}
*/
function loadRoadTrip(trip) {
	window.location = 'index.jsp?page=' + trips[trip];
}

var xstaticFunctions = [];
function addOnXStaticLoad(func) {
	xstaticFunctions[xstaticFunctions.length] = func;
}

function executeXStaticFunctions() {
	while (xstaticFunctions != 0) {
		var func = xstaticFunctions.shift();
		func();
	}
}

function addOnLoad(func) {
	Event.observe(window, 'load', func);
}

function loadFlash(container, id, src, w, h, v, bg) {
	var so = new SWFObject(src, id, w, h, v, bg == null ? "#F0ECE7" : bg);
	so.addParam('wmode', 'opaque');
	so.addParam('menu', 'false');
	so.write(container);
}

var SWF = {
	_initialize: function(args) {
		var result = {
			src: '',
			name: '',
			width: 0,
			height: 0,
			version: '8',
			bgcolor: '#FFFFFF',
			parameters: {},
			variables: {},
			container: null
		}
		for(var key in args) { if (result[key] != null) { result[key] = args[key]; } }
		if (args.container == null || args.container == '' || typeof args.container != 'string') {
			result.container = null;
		} else {
			result.container = args.container;
		}
		return result;
	},
	
	_make: function(args) {
		args = SWF._initialize(args);
		var result = function() {
			if (args.container == null) return;
			var so = new SWFObject(args.src, args.name, args.width, args.height, args.version, args.bgcolor);
			var parameters = args.parameters;
			for(var key in parameters) { so.addParam(key, parameters[key]); }
			var variables = args.variables;
			for(var key in variables) { so.addVariable(key, variables[key]); }
		
			so.write(args.container);
		}
		return result;
	},
	
	insert: function(args) {
		var handler = SWF._make(args);
		if (typeof window.addEventListener != "undefined")
			window.addEventListener("load", handler, false);
		else if (typeof window.attachEvent != "undefined") {
			window.attachEvent("onload", handler);
		}
		else {
			if (window.onload != null) {
				var oldOnload = window.onload;
				window.onload = function (e) {
					oldOnload(e);
					handler();
				};
			}
			else window.onload = handler;
		}
	}
}

function doSearch(pageNo) {
	document.forms['search_form'].elements['pageNo'].value = pageNo;
	document.forms['search_form'].submit();
}

function popupSearchEngine() {
	var a = $('searchButton');
	
	var container = $('searchContainer');
	if (container.getStyle('display') == 'none') {
			container.setStyle({
			position: 'absolute',
			'z-index': 1000,
			left: (getX(a) - 180) + 'px',
			top: (getY(a) + 15) + 'px',
			width: '200px',
			height: '50px',
			padding: '5px;',
			border: '2px solid #FFFFFF',
			'background-color': '#55724A',
			display: 'block'
		});
	} else {
		container.setStyle({display: 'none'});
	}
}

function getX(obj) {
	var x = 0;
	do {
		x += obj.offsetLeft;
		obj = obj.offsetParent;
	} while (obj);
	return x;
}

function getY(obj) {
	var y = 0;
	do {
		y += obj.offsetTop;
		obj = obj.offsetParent;
	} while (obj);
	return y;
}
