function GetIEversion() {
var version=0;
if(navigator.appName.indexOf('Internet Explorer') != -1)
{
var temp=navigator.appVersion.split('MSIE');
version=parseFloat(temp[1]);
}
return version;
}

function IsIE78Moz() {
var version = GetIEversion();
return ((version > 6) || (version == 0));
}

var banneranim = null;
var bannerplaytimer = null;

function banner(action, senderel) {
	var bannerhel = document.getElementById('bannerh');;
	if (bannerhel != null) {
	if (action == 'load') {
		if (bannerplaytimer != null) clearTimeout(bannerplaytimer);
		bannerplaytimer = setTimeout(function() {banner('show', null);},5000);
	} else if (action == 'show') {
		if (bannerplaytimer != null) clearTimeout(bannerplaytimer);
		var curbannerid = parseInt(bannerhel.getAttribute('data-curbanner'));
		if (isNaN(curbannerid)) curbannerid = 1;
		var bannerscount = parseInt(bannerhel.getElementsByTagName('div').length);
		if (senderel == null) {
		var bannerid = 'next';
		} else {
		var bannerid = senderel.getAttribute('data-bannerid');
		}
		if (bannerid == 'next') bannerid = curbannerid + 1;
		if (parseInt(bannerid) > bannerscount) bannerid = 1;
		if (curbannerid != bannerid) {
		var curbannerbtn = null;
		var bannerbtn = null;
		var bannerbtns = document.getElementById('bannertoolbar').getElementsByTagName('a');
		for (var ibannerbtn=0;ibannerbtn < bannerbtns.length;ibannerbtn++) {
			if (bannerbtns[ibannerbtn].getAttribute('data-bannerid') == bannerid) bannerbtn = bannerbtns[ibannerbtn];
			if (bannerbtns[ibannerbtn].getAttribute('data-bannerid') == curbannerid) curbannerbtn = bannerbtns[ibannerbtn];
			if ((bannerbtn != null) && (curbannerbtn != null)) break;
		}
		var bannertitle = bannerbtn.getAttribute('data-bannertitle');
		curbannerbtn.className = '';
		bannerbtn.className = 'selected';
		if (banneranim != null) {
			clearInterval(banneranim.intervalId);
			banneranim.clearSubjects();
			banneranim = null;
		}
		banneranim = new Animator({transition: Animator.makeEaseOut(1), duration: 1000, onComplete: function() {bannerhel.getElementsByTagName('div')[curbannerid-1].style.display = 'none';}});
		banneranim.addSubject(new NumericalStyleSubject(bannerhel.getElementsByTagName('div')[curbannerid-1], 'opacity', 1, 0));
		banneranim.addSubject(new NumericalStyleSubject(bannerhel.getElementsByTagName('div')[bannerid-1], 'opacity', 0, 1));
		banneranim.jumpTo(0);
		bannerhel.getElementsByTagName('div')[bannerid-1].style.display = 'block';
		banneranim.seekFromTo(0, 1);
		document.getElementById('bannertitle').innerHTML = bannertitle;
		bannerhel.setAttribute('data-curbanner', bannerid);
		}
		bannerplaytimer = setTimeout(function() {banner('show', null);},5000);
	}
	}
}

var referenceanim = null;

function reference(action, senderel) {
	var divh = document.getElementById('referenceholder');
	if (divh != null) {
	var itemel = divh.getElementsByTagName('li')[0];
	var curscroll = parseInt(divh.getAttribute('data-curscroll'));
	var itemwidth = 177+23;
	var itemsperpage = 3;
	if (isNaN(curscroll)) curscroll = 0;
	if (action == 'load') {
		divh.scrollLeft = 0;
		divh.setAttribute('data-curscroll', 0);
	} else {
		var newscroll = 0;
		var scrollmax = (itemwidth * (parseInt(divh.getElementsByTagName('li').length) - itemsperpage));
		if (action == 'prev') newscroll = curscroll - (itemwidth * itemsperpage);
		if (action == 'next') newscroll = curscroll + (itemwidth * itemsperpage);
		if (newscroll < 0) newscroll = 0;
		if (newscroll > scrollmax) newscroll = scrollmax;
		if (newscroll != curscroll) {
			if (referenceanim != null) {
			clearInterval(referenceanim.intervalId);
			referenceanim.clearSubjects();
			referenceanim = null;
			}
			referenceanim = new Animator({transition: Animator.makeEaseOut(1), duration: 1000});
			referenceanim.startscrollpos = curscroll;
			referenceanim.setscrollpos = newscroll;
			referenceanim.addSubject(function (value) {var divh = document.getElementById('referenceholder'); var scrollpos = referenceanim.startscrollpos + Math.round(value*(referenceanim.setscrollpos-referenceanim.startscrollpos)); divh.scrollLeft = scrollpos; divh.setAttribute('data-curscroll', scrollpos);});
			referenceanim.seekFromTo(0, 1);
		}
	}
	}
}

var referencelistfx = null;

function referencelist(action, senderel) {
	var holder = document.getElementById('referencelist');
	if (holder != null) {
		if (action == 'load') {
			referencelistfx = new Array();
			var itemels = holder.getElementsByTagName('a');
			for (var itemi=0;itemi<itemels.length;itemi++) {
				itemels[itemi].setAttribute('data-itemindex', parseInt(itemi+1));
				var animfx = new Animator({transition: Animator.makeEaseOut(1), duration: 200});
				animfx.addSubject(new NumericalStyleSubject(itemels[itemi].getElementsByTagName('span')[0], 'height', 0, 20));
				animfx.addSubject(new NumericalStyleSubject(itemels[itemi].getElementsByTagName('span')[1], 'height', 0, 20));
				animfx.addSubject(new NumericalStyleSubject(itemels[itemi].getElementsByTagName('span')[2], 'height', 15, 0));
				animfx.jumpTo(1);
				referencelistfx.push(animfx);
			}
		}
		if (action == 'in') {
			if (referencelistfx != null) {
				referencelistfx[parseInt(senderel.getAttribute('data-itemindex'))-1].seekTo(0);
			}
		}
		if (action == 'out') {
			if (referencelistfx != null) {
				referencelistfx[parseInt(senderel.getAttribute('data-itemindex'))-1].seekTo(1);
			}
		}
	}
}

var FastInit

function addLoadEvent(func) {
  FastInit.addOnLoad(func);
}

function trim(stringToTrim) {
	return stringToTrim.replace(/^\s+|\s+$/g,"");
}
function validateemail(email) {
	var filter=/^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i
	if (filter.test(email)) {
		return true;
	} else {
		return false;
	}
}

addLoadEvent(function() {banner('load', null);});
addLoadEvent(function() {reference('load', null);});
addLoadEvent(function() {referencelist('load', null);});