/*	sIFR v2.0 RC4
	Copyright 2004 - 2005 Mike Davidson, Shaun Inman, Tomas Jogin and Mark Wubben

	This software is licensed under the CC-GNU LGPL <http://creativecommons.org/licenses/LGPL/2.1/>
*/

var hasFlash=function(){var a=6;if(navigator.appVersion.indexOf("MSIE")!=-1&&navigator.appVersion.indexOf("Windows")>-1){document.write('<script language="VBScript"\> \non error resume next \nhasFlash = (IsObject(CreateObject("ShockwaveFlash.ShockwaveFlash." & '+a+'))) \n</script\> \n');if(window.hasFlash!=null)return window.hasFlash}if(navigator.mimeTypes&&navigator.mimeTypes["application/x-shockwave-flash"]&&navigator.mimeTypes["application/x-shockwave-flash"].enabledPlugin){var b=(navigator.plugins["Shockwave Flash 2.0"]||navigator.plugins["Shockwave Flash"]).description;return parseInt(b.charAt(b.indexOf(".")-1))>=a}return false}();String.prototype.normalize=function(){return this.replace(/\s+/g," ")};if(Array.prototype.push==null){Array.prototype.push=function(){var i=0,a=this.length,b=arguments.length;while(i<a){this[b++]=arguments[i++]}return this.length}};if(!Function.prototype.apply){Function.prototype.apply=function(a,b){var c=[];var d,e;if(!a)a=window;if(!b)b=[];for(var i=0;i<b.length;i++){c[i]="b["+i+"]"}e="a.__applyTemp__("+c.join(",")+");";a.__applyTemp__=this;d=eval(e);a.__applyTemp__=null;return d}}function named(a){return new named.Arguments(a)}named.Arguments=function(a){this.oArgs=a};named.Arguments.prototype.constructor=named.Arguments;named.extract=function(a,b){var c,d;var i=a.length;while(i--){d=a[i];if(d!=null&&d.constructor!=null&&d.constructor==named.Arguments){c=a[i].oArgs;break}}if(c==null)return;for(e in c)if(b[e]!=null)b[e](c[e]);return};var parseSelector=function(){var a=/^([^#.>`]*)(#|\.|\>|\`)(.+)$/;function b(c,d,e){c=c.normalize().replace(" ","`");var f=c.match(a);var g,h,j,k;var l=[];if(f==null)f=[c,c];if(f[1]=="")f[1]="*";if(e==null)e="`";if(d==null)d=document;switch(f[2]){case "#":k=f[3].match(a);if(k==null)k=[null,f[3]];g=document.getElementById(k[1]);if(g==null||(f[1]!="*"&&g.nodeName.toLowerCase()!=f[1].toLowerCase()))return l;if(k.length==2){l.push(g);return l}return b(k[3],g,"#");case ".":if(e!=">")h=m(d,f[1]);else h=d.childNodes;for(var i=0,n=h.length;i<n;i++){g=h[i];if(g.nodeType!=1)continue;k=f[3].match(a);if(k!=null){if(g.className==null||g.className.match("\\b"+k[1]+"\\b")==null)continue;j=b(k[3],g,k[2]);l=l.concat(j);}else if(g.className!=null&&g.className.match("\\b"+f[3]+"\\b")!=null)l.push(g);}return l;case ">":if(e!=">")h=m(d,f[1]);else h=d.childNodes;for(var i=0,n=h.length;i<n;i++){g=h[i];if(g.nodeType!=1)continue;if(g.nodeName.toLowerCase()!=f[1].toLowerCase())continue;j=b(f[3],g,">");l=l.concat(j);}return l;case "`":h=m(d,f[1]);for(var i=0,n=h.length;i<n;i++){g=h[i];j=b(f[3],g,"`");l=l.concat(j);}return l;default:if(e!=">")h=m(d,f[1]);else h=d.childNodes;for(var i=0,n=h.length;i<n;i++){g=h[i];if(g.nodeType!=1)continue;if(g.nodeName.toLowerCase()!=f[1].toLowerCase())continue;l.push(g);}return l;}}function m(d,o){if(o=="*"&&d.all!=null)return d.all;return d.getElementsByTagName(o);}return b;}();var sIFR=function(){var a="http://www.w3.org/1999/xhtml";var b=false;var c=false;var d;var ah=[];var f=function(){var g=navigator.userAgent.toLowerCase();var f={a:g.indexOf("applewebkit")>-1,b:g.indexOf("safari")>-1,c:navigator.product!=null&&navigator.product.toLowerCase().indexOf("konqueror")>-1,d:g.indexOf("opera")>-1,e:document.contentType!=null&&document.contentType.indexOf("xml")>-1,f:true,g:true,h:null,i:null,j:null,k:null};f.l=f.a||f.c;f.m=!f.a&&navigator.product!=null&&navigator.product.toLowerCase()=="gecko";if(f.m)f.j=new Number(g.match(/.*gecko\/(\d{8}).*/)[1]);f.n=g.indexOf("msie")>-1&&!f.d&&!f.l&&!f.m;f.o=f.n&&g.match(/.*mac.*/)!=null;if(f.d)f.i=new Number(g.match(/.*opera(\s|\/)(\d+\.\d+)/)[2]);if(f.n||(f.d&&f.i<7.6))f.g=false;if(f.a)f.k=new Number(g.match(/.*applewebkit\/(\d+).*/)[1]);if(window.hasFlash&&(!f.n||f.o)){var aj=(navigator.plugins["Shockwave Flash 2.0"]||navigator.plugins["Shockwave Flash"]).description;f.h=parseInt(aj.charAt(aj.indexOf(".")-1));}if(g.match(/.*(windows|mac).*/)==null||f.o||f.c||(f.d&&f.i<7.6)||(f.b&&f.h<7)||(!f.b&&f.a&&f.k<124)||(f.m&&f.j<20020523))f.f=false;return f;}();if(window.hasFlash==false||!document.getElementsByTagName||!document.getElementById||(f.e&&(f.n||f.l)))return{UA:f};function af(e){if((!k.bAutoInit&&(window.event||e)!=null)||!l(e))return;b=true;for(var i=0,h=ah.length;i<h;i++)j.apply(null,ah[i]);ah=[];}var k=af;function l(e){if(c==false||k.bIsDisabled==true||((f.e&&f.m||f.l)&&e==null&&b==false)||(document.body==null||document.getElementsByTagName("body").length==0))return false;return true}function m(n){if(f.n)return n.replace(new RegExp("%\d{0}","g"),"%25");return n.replace(new RegExp("%(?!\d)","g"),"%25");}function o(p,q,r,s,t){var u="";var v=p.firstChild;var w,x,y,z;if(s==null)s=0;if(t==null)t="";while(v){if(v.nodeType==3){z=v.nodeValue.replace("<","&lt;");switch(r){case "lower":u+=z.toLowerCase();break;case "upper":u+=z.toUpperCase();break;default:u+=z;}}else if(v.nodeType==1){if(v.nodeName.toLowerCase()=="a"&&!v.getAttribute("href")==false){if(v.getAttribute("target"))t+="&sifr_url_"+s+"_target="+v.getAttribute("target");t+="&sifr_url_"+s+"="+m(v.getAttribute("href")).replace(/&/g,"%26");u+='<a href="asfunction:_root.launchURL,'+s+'">';s++;}else if(v.nodeName.toLowerCase()=="br")u+="<br/>";if(v.hasChildNodes()){y=o(v,null,r,s,t);u+=y.u;s=y.s;t=y.t}if(v.nodeName.toLowerCase()=="a")u+="</a>";}w=v;v=v.nextSibling;if(q!=null){x=w.parentNode.removeChild(w);q.appendChild(x);}}return{"u":u,"s":s,"t":t}}function A(B){if(document.createElementNS&&f.g)return document.createElementNS(a,B);return document.createElement(B);}function C(D,E,z){var p=A("param");p.setAttribute("name",E);p.setAttribute("value",z);D.appendChild(p);}function F(p,G){var H=p.className;if(H==null)H=G;else H=H.normalize()+(H==""?"":" ")+G;p.className=H}function j(I,J,K,L,M,N,O,P,Q,R,S,r,T){if(!l())return ah.push(arguments);named.extract(arguments,{sSelector:function(value){I=value},sFlashSrc:function(value){J=value},sColor:function(value){K=value},sLinkColor:function(value){L=value},sHoverColor:function(value){M=value},sBgColor:function(value){N=value},nPaddingTop:function(value){O=value},nPaddingRight:function(value){P=value},nPaddingBottom:function(value){Q=value},nPaddingLeft:function(value){R=value},sFlashVars:function(value){S=value},sCase:function(value){r=value},sWmode:function(value){T=value}});var U=parseSelector(I);if(U.length==0)return false;if(S!=null)S="&"+S.normalize();else S="";if(K!=null)S+="&textcolor="+K;if(L!=null)S+="&linkcolor="+L;if(M!=null)S+="&hovercolor="+M;if(O==null)O=0;if(P==null)P=0;if(Q==null)Q=0;if(R==null)R=0;if(N==null)N="#FFFFFF";if(T=="transparent")if(!f.f)T="opaque";else N="transparent";if(T==null)T="";var p,V,W,X,Y,Z,aa,ab,ac;var ad=null;for(var i=0,h=U.length;i<h;i++){p=U[i];if(p.className!=null&&p.className.match(/\bsIFR\-replaced\b/)!=null)continue;V=p.offsetWidth-R-P;W=p.offsetHeight-O-Q;aa=A("span");aa.className="sIFR-alternate";ac=o(p,aa,r);Z="txt="+m(ac.u).replace(/\+/g,"%2B").replace(/&/g,"%26").replace(/\"/g, "%22").normalize() + S + "&w=" + V + "&h=" + W + ac.t;F(p,"sIFR-replaced");if(ad==null||!f.g){if(!f.g)p.innerHTML=['<embed class="sIFR-flash" type="application/x-shockwave-flash" src="',J,'" quality="best" wmode="',T,'" bgcolor="" flashvars="',Z,'" width="',V,'" height="',W,'" sifr="true"></embed>'].join("");else{if(f.d){ab=A("object");ab.setAttribute("data",J);C(ab,"quality","best");C(ab,"wmode",T);C(ab,"bgcolor",N);}else{ab=A("embed");ab.setAttribute("src",J);ab.setAttribute("quality","best");ab.setAttribute("flashvars",Z);ab.setAttribute("wmode",T);ab.setAttribute("bgcolor",N);}ab.setAttribute("sifr","true");ab.setAttribute("type","application/x-shockwave-flash");ab.className="sIFR-flash";ad=ab.cloneNode(true);}}else ab=ad.cloneNode(true);if(f.g){if(f.d)C(ab,"flashvars",Z);else ab.setAttribute("flashvars",Z);ab.setAttribute("width",V);ab.setAttribute("height",W);ab.style.width=V+"px";ab.style.height=W+"px";p.appendChild(ab);}p.appendChild(aa);if(f.l||f.n)p.innerHTML+="";}if(f.n&&k.bFixFragIdBug)setTimeout(function(){document.title=d},0);}function ai(){d=document.title}function ae(){if(k.bIsDisabled==true)return;c=true;if(document.documentElement)F(document.documentElement,"sIFR-hasFlash");if(window.attachEvent)window.attachEvent("onload",af);else if(!f.c&&(document.addEventListener||window.addEventListener)){if(document.addEventListener)document.addEventListener("load",af,false);if(window.addEventListener)window.addEventListener("load",af,false);}else if(typeof window.onload=="function"){var ag=window.onload;window.onload=function(){ag();af();}}else window.onload=af;if(!f.n||window.location.hash=="")k.bFixFragIdBug=false;else ai()}k.UA={bIsWebKit:f.a,bIsSafari:f.b,bIsKonq:f.c,bIsOpera:f.d,bIsXML:f.e,bHasTransparencySupport:f.f,bUseDOM:f.g,nFlashVersion:f.h,nOperaVersion:f.i,nGeckoBuildDate:f.j,nWebKitVersion:f.k,bIsKHTML:f.l,bIsGecko:f.m,bIsIE:f.n,bIsIEMac:f.o};k.bAutoInit=true;k.bFixFragIdBug=true;k.replaceElement=j;k.updateDocumentTitle=ai;k.setup=ae;k.bIsDisabled=false;return k;}();

if(typeof sIFR == "function" && !sIFR.UA.bIsIEMac){
	sIFR.setup();
};

/* === END sIFR FUNCTIONS ================================================================= */


// MOUSEOVER -----------------------------
	function imageLoader(a) {
		if (document.images) {
			if (!document.p) document.p=new Array();
			var i, j=document.p.length;
			for (i=0; i<a.length; i++)
				if (a[i].indexOf("#")!=0) { document.p[j] = new Image; document.p[j++].src = a[i]; }
		}
	}
	function preloadImages() {
		if (typeof preloadArray != "undefined") {
			imageLoader(preloadArray);
		}
	}

	// PRELOAD ARRAY - located in template

	// start preloading images after page load
	if (window.addEventListener) {
		window.addEventListener("load", preloadImages, true);
	} else if (window.attachEvent) {
		window.attachEvent("onload", preloadImages);
	} else {
		window.onload = preloadImages;
	}

	HOVER_X = "_on"; // mouse-over extension
	// USAGE: swap(this, ['newimage.gif'])
	function swap(i) {
		if (document.images && i.childNodes) {
			var a = swap.arguments[1], s = i.childNodes[0];
			if (a) s.src = a;
			else {
				var x = s.src.lastIndexOf('.'), xl = HOVER_X.length;
				if (s.src.substring(x-xl, x) == HOVER_X)
					s.src = s.src.substring(0,x-xl)+s.src.substring(x,s.src.length);
				else s.src = s.src.substring(0,x)+HOVER_X+s.src.substring(x,s.src.length);
			}
		}
	}
// end mouseover -----------------------------


function go(s) {
	window.location.assign(s);
}

function goMember() {
	box = document.forms[0].membersnav;
	destination = box.options[box.selectedIndex].value;
	if (destination) top.location.href = destination;
}



// POPUP ------------------------------------------------------------------


	// olde popup, sometimes used in checkout path  :-(
	function popWindow(theURL,winName,features) {
		window.open(theURL,winName,features);
	}


// New and Better popup

// 	usage: popuplink(['js-only url',] this[, w[, h[, scroll[, extras]]]])
// 	basic usage: <a href="popup.html" target="_blank" onclick="return(popuplink(this));">new pop</a>
// 	advanced usage: <a href="popup_nojs.html" target="_blank" onclick="return(popuplink('popup_yesjs.html', this, 200, 100, false));">new pop</a>
// 	site-wide defaults:
	/* OLD
	popup_w = 600;
	popup_h = 450;
	popup_scroll = true;
	popup_extras = 'location=0,status=0,menubar=0,resizable=0';
	*/
	popup_w = 750;
	popup_h = 500;
	popup_scroll = true;
	popup_extras = 'location=yes,toolbar=yes,menubar=yes,directories=yes,status=yes,resizable=yes';

//	POPUP_FANCY = 'location=yes,toolbar=yes,menubar=yes,directories=yes,status=yes,resizable=yes';
// 	NS4 placement:   	screenX and screenY
//	IE placement:		left and top
function popuplink() {
	var undef, i=0, args=popuplink.arguments;
	var url = (typeof(args[i])=='string') ? args[i++] : args[i].getAttribute('href');
	var target = args[i++].getAttribute('target') || '_blank';
	var w = args[i++];
	var h = args[i++];
	var s = (args[i]===undef) ? popup_scroll : args[i++];

	//	centering: determine screen center
	var scrw=(screen.width/2)-((w || popup_w)/2);
	var scrh=(screen.height/2)-((h || popup_w)/2);
	 	if (scrh > 100) { scrh = scrh - 40; } // bump vertical pos. just above center, but only if it fits

	var features = 'width=' + (w || popup_w)
		 + ',height=' + (h || popup_h)
		 + ',scrollbars=' + (s ? 'yes,' : 'no,')
		 + (args[i] || popup_extras)
		 + ',left='+scrw+',top='+scrh+',screenX='+scrw+',screenY='+scrh; // positioning for IE and NS
	var win = window.open(url, target, features);
	win.focus();
	return false;
}


//Price chart popup for tickets page

function price_popup(mylink, windowname)
{
if (! window.focus)return true;
var href;
if (typeof(mylink) == 'string')
   href=mylink;
else
   href=mylink.href;
window.open(href, windowname, 'width=460,height=630,scrollbars=yes,left=457,top=120');
return false;
}


function package_popup(mylink, windowname)
{
if (! window.focus)return true;
var href;
if (typeof(mylink) == 'string')
   href=mylink;
else
   href=mylink.href;
window.open(href, windowname, 'width=420,height=350,scrollbars=yes,left=457,top=120');
return false;
}

// END POP UP ------------			
		
		
		
		
		
// === table striper ===

// required work around for IE bug
function hasClass(obj) {
   var result = false;
   if (obj.getAttributeNode("class") != null) {result = obj.getAttributeNode("class").value;}
   return result;
}   

function stripe(id) {
  var even = false;
  // set defaults - can be overridden in function call
  var evenColor = arguments[1] ? arguments[1] : "#f5f4ea";
  var oddColor = arguments[2] ? arguments[2] : "#efecde";

  var table = document.getElementById(id);
  if (! table) { return; }
  var tbodies = table.getElementsByTagName("tbody");
  for (var h = 0; h < tbodies.length; h++) {
    var trs = tbodies[h].getElementsByTagName("tr");
    for (var i = 0; i < trs.length; i++) {
   // avoid rows that have a class attribute or backgroundColor style
   if (!hasClass(trs[i]) && ! trs[i].style.backgroundColor) {
        var tds = trs[i].getElementsByTagName("td");
        for (var j = 0; j < tds.length; j++) {
          var mytd = tds[j];
          // avoid cells that have a class attribute or backgroundColor style
       		if (! hasClass(mytd) && ! mytd.style.backgroundColor) { mytd.style.backgroundColor = even ? evenColor : oddColor; }
	  } }
      even =  ! even;
} } }

// -- end table striper -------------------
