<!--
window.onerror = function() {return true;}

function ss(o) {
	if (o) o.select();
}

function se(o) {
	if (o) {
		o.value = o.value + ' ';
		o.value = o.value.substr(0, o.value.length - 1);
	}
}

function trim(str) {
	return str.replace(/^\s*/, '').replace(/\s*$/, '');
}

function wo(o, width, height, top) {
	if (!o.name) o.name = 'popup_window';
	if (!width) width=500;
	if (!height) height=400;

	var params = [];
	params[params.length] ='width=' + width;
	params[params.length] ='height=' + height;
	if (top) params[params.length] = 'top=' + top;

	var w = window.open(o.href, o.name + '_popup', params.join(','));
	if (typeof(w) != 'undefined') w.focus();
	return false;
}

function wc(url) {
	if (opener) {
		if (opener.closed) window.open(url, '');
		else if (opener.location.href.search(url) == -1) opener.location.href = url;
		opener.focus();
		self.close();
		return false;
	}
	return true;
}

function checkExp(value, regExp) {
	var arr = regExp.exec(value);
	if (arr) {
		for (var i = 0; i < arr.length; i++) if (arr[i] == value) return true;
	}
	return false;
}

function renameAttribute(o, from, to) {
	if (o) {
		var s = o.getAttribute(from);
		if (s) {
			o.removeAttribute(from);
			o.setAttribute(to,s);
		}
	}
}

function parseEMail(value) {
	var re = new RegExp('^[\\w.\\-\\+]+@([a-z0-9\\-]+\\.)+[a-z]{2,6}$', 'i');
	return checkExp(value, re);
}

function parsePhone(value) {
	var re = new RegExp('[\\d\\+\\-\\(\\)\\.,; ]{5,}');
	return checkExp(value, re);
}

function checkText(e, isRequired) {
	e.value = trim(e.value);

	if (isRequired) {
		if (e.value.length < 1) {
			renameAttribute(e, 'vtw', '_vtw');
			return false;
		}
	}

	var ret = true;
	if (e.value.length) {
		var type = e.getAttribute('vt');
		if (type) {
			switch(type) {
				case 'EMail':
					ret = parseEMail(e.value);
				break;
				case 'Phone':
					ret = parsePhone(e.value);
				break;
			}
			ret ? renameAttribute(e, 'vtw', '_vtw') : renameAttribute(e, '_vtw', 'vtw');
		}
	}
	return ret;
}

function checkRadio(e, isRequired) {
	var f = e.form;
	if (f && f.elements[e.name]) {
		for (var i = 0; i < f.elements[e.name].length; i++) if (f.elements[e.name][i].checked) return true;
	}
	return false;
}

function checkSelect(e, isRequired) {
	var si = e.selectedIndex;
	return (e[si] && (trim(e[si].value).length > 0));
}

function checkE(e) {
	var isRequired = (e.getAttribute('vr') == 1) ? true : false;

	if ((isRequired || (e.getAttribute('vv') == 1)) && (e.getAttribute('skip') != 1)) {
		var valid = true;
		
		var tagName = e.tagName.toString().toLowerCase();
		switch(tagName) {
			case 'input':
				switch (e.type.toString().toLowerCase()) {
					case 'text':
						valid = checkText(e, isRequired);
					break;

					case 'radio':
						valid = checkRadio(e, isRequired);
					break;
				}
			break;
			
			case 'select':
				valid = checkSelect(e, isRequired);
			break;

			case 'textarea':
				valid = checkText(e, isRequired);
			break;
		}
		
		
		if (valid) return true;
		else {
			try {
				e.focus();
				if (tagName != 'select') e.select();
			} catch (e) {}

			var tmsg = e.getAttribute('vtw');
			if (!tmsg) {
				var msg = e.getAttribute('vw');
				if (!msg) msg = 'Some fields are left empty or are in invalid format.';
			}
			alert(tmsg || msg);
		}
		return false;
	}
	return true;
}

function validate(f) {
	if (f && f.elements) {
		for (var i = 0; i < f.elements.length; i++) if (!checkE(f.elements[i])) return false;
		return true;
	} 
	return false;
}

function iPreload(src) {
	img = new Image();
	img.src = src;
}

function iShow(e) {
	var el = window.event ? window.event.srcElement : e.currentTarget;
	var ext = el.src.match(/\.([^.]{3,4})$/i);
	var re = new RegExp('\.' + ext[1], 'i');
	el.src = el.src.replace(re, '_.' + ext[1]);
}

function iHide(e) {
	var el = window.event ? window.event.srcElement : e.currentTarget;
	var ext = el.src.match(/\.([^.]{3,4})$/i);
	var re = new RegExp('_\.' + ext[1], 'i');
	el.src = el.src.replace(re, '.' + ext[1]);
}

function BrowserDetectLite() {
	var ua = navigator.userAgent.toLowerCase(); 
	this.ua = ua;

	// browser name
	this.isGecko     = (ua.indexOf('gecko') != -1);
	this.isMozilla   = (this.isGecko && ua.indexOf("gecko/") + 14 == ua.length);
	this.isNS        = ( (this.isGecko) ? (ua.indexOf('netscape') != -1) : ( (ua.indexOf('mozilla') != -1) && (ua.indexOf('spoofer') == -1) && (ua.indexOf('compatible') == -1) && (ua.indexOf('opera') == -1) && (ua.indexOf('webtv') == -1) && (ua.indexOf('hotjava') == -1) ) );
	this.isIE        = ( (ua.indexOf("msie") != -1) && (ua.indexOf("opera") == -1) && (ua.indexOf("webtv") == -1) ); 
	this.isOpera     = (ua.indexOf("opera") != -1); 
	this.isKonqueror = (ua.indexOf("konqueror") != -1); 
	this.isIcab      = (ua.indexOf("icab") != -1); 
	this.isAol       = (ua.indexOf("aol") != -1); 
	this.isWebtv     = (ua.indexOf("webtv") != -1); 
	this.isOmniweb   = (ua.indexOf("omniweb") != -1);
	this.isDreamcast   = (ua.indexOf("dreamcast") != -1);
	
	// spoofing and compatible browsers
	this.isIECompatible = ( (ua.indexOf("msie") != -1) && !this.isIE);
	this.isNSCompatible = ( (ua.indexOf("mozilla") != -1) && !this.isNS && !this.isMozilla);
	
	// browser version
	this.versionMinor = parseFloat(navigator.appVersion); 
	
	// correct version number for NS6+ 
	if (this.isNS && this.isGecko) {
		this.versionMinor = parseFloat( ua.substring( ua.lastIndexOf('/') + 1 ) );
	}
	
	// correct version number for IE4+ 
	else if (this.isIE && this.versionMinor >= 4) {
		this.versionMinor = parseFloat( ua.substring( ua.indexOf('msie ') + 5 ) );
	}
	
	// correct version number for Opera 
	else if (this.isOpera) {
		if (ua.indexOf('opera/') != -1) {
			this.versionMinor = parseFloat( ua.substring( ua.indexOf('opera/') + 5 ) );
		}
		else {
			this.versionMinor = parseFloat( ua.substring( ua.indexOf('opera ') + 5 ) );
		}
	}
	
	// correct version number for Konqueror
	else if (this.isKonqueror) {
		this.versionMinor = parseFloat( ua.substring( ua.indexOf('konqueror/') + 10 ) );
	}
	
	// correct version number for iCab 
	else if (this.isIcab) {
		if (ua.indexOf('icab/') != -1) {
			this.versionMinor = parseFloat( ua.substring( ua.indexOf('icab/') + 6 ) );
		}
		else {
			this.versionMinor = parseFloat( ua.substring( ua.indexOf('icab ') + 6 ) );
		}
	}
	
	// correct version number for WebTV
	else if (this.isWebtv) {
		this.versionMinor = parseFloat( ua.substring( ua.indexOf('webtv/') + 6 ) );
	}
	
	this.versionMajor = parseInt(this.versionMinor); 
	this.geckoVersion = ( (this.isGecko) ? ua.substring( (ua.lastIndexOf('gecko/') + 6), (ua.lastIndexOf('gecko/') + 14) ) : -1 );
	
	// platform
	this.isWin   = (ua.indexOf('win') != -1);
	this.isWin32 = (this.isWin && ( ua.indexOf('95') != -1 || ua.indexOf('98') != -1 || ua.indexOf('nt') != -1 || ua.indexOf('win32') != -1 || ua.indexOf('32bit') != -1) );
	this.isMac   = (ua.indexOf('mac') != -1);
	this.isUnix  = (ua.indexOf('unix') != -1 || ua.indexOf('linux') != -1 || ua.indexOf('sunos') != -1 || ua.indexOf('bsd') != -1 || ua.indexOf('x11') != -1)
	
	// specific browser shortcuts
	this.isNS4x = (this.isNS && this.versionMajor == 4);
	this.isNS40x = (this.isNS4x && this.versionMinor < 4.5);
	this.isNS47x = (this.isNS4x && this.versionMinor >= 4.7);
	this.isNS4up = (this.isNS && this.versionMinor >= 4);
	this.isNS6x = (this.isNS && this.versionMajor == 6);
	this.isNS6up = (this.isNS && this.versionMajor >= 6);
	
	this.isIE4x = (this.isIE && this.versionMajor == 4);
	this.isIE4up = (this.isIE && this.versionMajor >= 4);
	this.isIE5x = (this.isIE && this.versionMajor == 5);
	this.isIE55 = (this.isIE && this.versionMinor == 5.5);
	this.isIE5up = (this.isIE && this.versionMajor >= 5);
	this.isIE6x = (this.isIE && this.versionMajor == 6);
	this.isIE6up = (this.isIE && this.versionMajor >= 6);
	
	this.isIE4xMac = (this.isIE4x && this.isMac);
}

var l = document.location;
var bro = new BrowserDetectLite();
var root = window.addEventListener || window.attachEvent ? window : document.addEventListener ? document : null;

// -->
