try {document.execCommand("backgroundimagecache", false, true)} catch (e) {}

var Cookie={
	set:function(c_name,value) {
		document.cookie=c_name + "=" + escape(value)
	},
	get:function(c_name) {
		if (document.cookie.length>0) {
			c_start=document.cookie.indexOf(c_name + "=");
			if (c_start!=-1) {
				c_start=c_start + c_name.length+1;
				c_end=document.cookie.indexOf(";",c_start);
				if (c_end==-1) c_end=document.cookie.length;
				return unescape(document.cookie.substring(c_start,c_end));
			}
		}
		return null;
	},
	remove:function(c_name) {this.set(c_name,"",-1);}
}

var Behaviour = {
	//param: Object sheet = {cssRule : callback}
	//	where cssRule is a string and callback is a function that passes a DOM element as its parameter and returns null, i.e. void callback(DOMElement element)
	register : function(sheet) {Behaviour.list.push(sheet);},
	//call apply after ajaxing stuff if you want behaviour rules to apply to ajaxed elements
	apply : function() {
		for (h = 0; sheet = Behaviour.list[h]; h++) {
			for (selector in sheet) {
				list = $$(selector);
				if (!list) continue;
				for (i = 0; element = list[i]; i++) sheet[selector](element);
			}
		}
	},
	//private
	list : new Array()
}


Event.observe(window, "load" ,function() {
	var Redirect = {
		container:{}
	};
	Behaviour.register({
		//CSS hover script for elements that don't accept css hover class in IE6
		"li" : function(element) {
			var timeout;
			Event.observe(element, "mouseover", function() {
				clearTimeout(timeout);
				Element.addClassName(element, "over");
			})
			Event.observe(element, "mouseout", function() {
				timeout = setTimeout(function() {Element.removeClassName(element, "over");}, 1);
			})
		},
		"a[target=_blank]" : function(link) {
			if (link.id != "exiter") {
				link.redirect = link.href;
				link.href = "javascript://popup: " + link.href;
				link.target = "_self";
				Event.observe(link, "click", function() {
					var redirectUrl = Element.hasClassName(this, "internal") ? "" : document.getElementById("outboundRedirect").getAttribute("value") + "?page=";
					Redirect.container = window.open(redirectUrl + this.redirect,"","width=580,height=675,resizable=1,status=0,scrollbars");
					Redirect.container.focus();
					return false;
				}.bind(link));
			}
			else {
				Event.observe(link, "click", function() {
					setTimeout(function(){window.close();}, 0);
				}.bind(link));
			}
		},
		"#sensetest .scale td" : function(element) {
			Event.observe(element, "click", function() {
				var tds = this.parentNode.getElementsByTagName("td");
				var tbl = this.parentNode.parentNode.parentNode;
				if (tbl.id=="smell0" || tbl.id=="taste0")
				{
					for (var td, i = 0; td = tds[i++];) Element.removeClassName(td, "selected");
					Element.addClassName(element, "selected");
					document.getElementById(element.parentNode.parentNode.parentNode.id + "value").value = element.innerHTML;
					var smell=document.getElementById("smell0value").value;
					var taste=document.getElementById("taste0value").value;
					var src=String(document.location).replace(/sense_test.*/gi,"sense_test/save/?TasteValue="+taste+"&SmellValue="+smell);
					document.getElementById("updateFrame").src=src;
				}
			})
			Event.observe(element, "mouseover", function() {
				Element.addClassName(element, "over");
			})
			Event.observe(element, /*@cc_on "mouseleave" || @*/"mouseout", function() {
				Element.removeClassName(element, "over");
			})
		}
	});
	Behaviour.apply();
});

var togglediv = function(showe, hidee){
	if($(showe) && $(showe).hasClassName("hidden")){
		$(showe).removeClassName("hidden");
		$(hidee).addClassName("hidden");
	}
}

var language = location.href.indexOf("/fr/") > - 1 ? "fr" : "en";
var countdowntoquit = function(){location.href = siteroot + language + "/countdown";}