// Function passes flash selection to form field
function flashSelectRegion(id){
	document.getElementById('place').value=id;
}

//cls = class
//n = node
//t = tag
document.getElementsByClassName = function(cls,n,t)
{
	var rtn = [];
	n=n===null?document:n;
	t=t===null?'*':t;
	var els = n.getElementsByTagName ? n.getElementsByTagName(t) : document.all;
	els = (!els||!els.length ) && document.all ? document.all : els;
	if(cls==null){return els;}
	for (var i=0,j=0; i < els.length; i++)
	{
		if(els[i].className.match("(^|\\s)"+cls+"(\\s|$)"))
		{
			rtn[j++] = els[i];
		}
	}
	return rtn;
};

function jsfAttachEvent(obj,evt,fnc)
{
	if(window.addEventListener)
	{
		obj.addEventListener(evt, fnc, false);
	}
	else if(window.attachEvent)
	{
		obj.attachEvent('on'+evt, fnc);
	}
	else if (obj.getElementById && evt=='load')
	{
		obj.onload = fnc;
	}
}

function triggerToolTip(cls) // tooltips for IE6
{
	if (navigator.appName == "Microsoft Internet Explorer" && parseFloat(navigator.appVersion.substr(navigator.appVersion.indexOf("MSIE") + 5, 3)) <= 6.0) {
		var mouseover = function(event) {
			event.srcElement._parent.className = "info hover";
		}
		var mouseout = function(event) {
			event.srcElement._parent.className = "info";
		}
		var tooltips = document.getElementsByClassName(cls,null, null);
		for (var i = 0; i < tooltips.length; i++) {
			var img = document.getElementsByClassName(null, tooltips[i], "img");
			if (!img.length) return false;
			img = img[0];
			img._parent = tooltips[i];
			jsfAttachEvent(img, "mouseover", mouseover);
			jsfAttachEvent(img, "mouseout", mouseout);
		}
	}
}

function $(id) {
	return document.getElementById(id);
}
function $$(c,o,t) {
	return HW.getElementsByClassName(c,o,t);
}
var HW = {
	log:function(a) {
		if(window.console) {window.console.log(a);return true;}
		return false;
	},
	error:function(e) {
		if(window.console) {window.console.error(e);}
		else {alert(e);}
	},
	getElementsByClassName:function(cls,n,t)
	{
		var rtn = [];
		n=n===null?document:n;
		t=t===null?'*':t;
		var els = n.getElementsByTagName?n.getElementsByTagName(t):document.all;
		els = (!els||!els.length) && document.all?document.all:els;
		if(cls==null){return els;}
		for (var i=0,j=0; i<els.length;i++) {
			if(this.hasClass(els[i],cls)) {
				rtn[j++] = els[i];
			}
		}
		return rtn;
	},
	attachEvent:function(obj,evt,fnc)
	{
		if(window.addEventListener) {obj.addEventListener(evt, fnc, false);}
		else if(window.attachEvent) {obj.attachEvent('on'+evt, fnc);}
		else if (obj.getElementById && evt=='load') {obj.onload = fnc;}
	},
	preventDefault:function(e) {
		e=e||window.event;
		if(e.preventDefault) {e.preventDefault();}
		else {e.returnValue = false;}
	},
	cancelBubble:function(e) {
		e=e||window.event;
		if(e.stopPropogation) {e.stopPropogation();}
		else {e.cancelBubble = true;}
	},
	extendObject:function(d,s)
	{
		d=d===null?new Object():d;
		for (p in s) {d[p] = s[p];}
		return d;
	},
	addClass:function(o,c)
	{
		if (!this.hasClass(o,c)){
			if (o.className == "") {o.className = c;}
			else {o.className += " " + c;}
		}
	},
	hasClass:function(o,c)
	{
		var p = new RegExp("(^| )" + c + "( |$)");
		if (p.test(o.className)) {return true;}
		return false;
	},
	removeClass:function(o,c)
	{
		var p = new RegExp("(^| )" + c + "( |$)");
		o.className = o.className.replace(p, "$1");
		o.className = o.className.replace(/ $/, "");
	},
	setStyle:function(o,s) {
		for(var i in s) {
			o.style[i] = s[i];
		}
	}
}

HW.ClearDefault = function(cls) {
	if(cls) {
		var inputs = $$(cls,document.body,'input');
		for(var i=0;i<inputs.length;i++) {
			var elm = this;
			(function(){
				var obj = inputs[i];
				inputs[i] = HW.extendObject(inputs[i],elm.Element);
				HW.attachEvent(inputs[i],'focus',function() {obj.focusHandler()});
				HW.attachEvent(inputs[i],'blur',function() {obj.blurHandler()});
			})()
		}
	}
}

HW.ClearDefault.prototype = {
	Element:{
		focusHandler:function() {
			if (this.value == this.defaultValue) {this.value = '';}
		},
		blurHandler:function() {
			if (this.value == "") {
				this.value= this.defaultValue;
			}
		}
	}
}
	
function jsfOnLoad() {
	triggerToolTip("info");
	if(HW.ClearDefault) {
		new HW.ClearDefault('ClearDefault');
	}
}

jsfAttachEvent(window,'load',jsfOnLoad);