/**
 * @author macbook
 */

if(!Array.indexOf){
	    Array.prototype.indexOf = function(obj){
	        for(var i=0; i<this.length; i++){
	            if(this[i]==obj){
	                return i;
	            }
	        }
	        return -1;
	    }
}


function $h(id) {
	return document.getElementById(id);
}

function $$h(className, tag, elm){
	var testClass = new RegExp("(^|\\s)" + className + "(\\s|$)");
	var tag = tag || "*";
	var elm = elm || document;
	var elements = (tag == "*" && elm.all)? elm.all : elm.getElementsByTagName(tag);
	var returnElements = [];
	var current;
	var length = elements.length;
	for(var i=0; i<length; i++){
		current = elements[i];
		if(testClass.test(current.className)){
			returnElements.push(current);
		}
	}
	return returnElements;
}

function haddClass(id,className) {
	if (typeof(id) == 'object') {
		var el = id;
	} else {
		var el = $h(id);
	}
	
	if(el) {
		var classes = el.className;
		var exp = classes.split(' ');
		if(exp.indexOf(className) === -1) {
			exp.push(className);
		}
		var c = exp.join(' ');	
		el.className = c;
	}
}

function hremoveClass(id,className) {
	if (typeof(id) == 'object') {
		var el = id;
	} else {
		var el = $h(id);
	}
	
	if(el) {
		var classes = el.className;
		var exp = classes.split(' ');
		var index = exp.indexOf(className);
		if(index > -1) {
			exp.splice(index,1);
		}

		var c = exp.join(' ');
		el.className = c;
	}
}

function hasClass(id,className) {
	if (typeof(id) == 'object') {
		var el = id;
	} else {
		var el = $h(id);
	}
	
	if (el) {
		var classes = el.className;
		
		var exp = classes.split(' ');
		var index = exp.indexOf(className);
		if (index > -1) {
			return true;
		}
		else {
			return false;
		}
	}
}

function getScrollTop() {
	var ScrollTop = document.body.scrollTop;

	if (ScrollTop == 0) {
	    if (window.pageYOffset) {
			ScrollTop = window.pageYOffset;
		} else {
			ScrollTop = (document.body.parentElement) ? document.body.parentElement.scrollTop : 0;
		}

	}
	
	return ScrollTop;
}

function serializeForm(id) {
	var f = $h(id);
	var input = f.getElementsByTagName('input');
	var str = '';
	
	for(var i = 0; i < input.length; i++) {
		str += '&' + input[i].name + '=' + input[i].value;
	}
	
	var input = f.getElementsByTagName('textarea');
		
	for(var i = 0; i < input.length; i++) {
		str += '&' + input[i].name + '=' + input[i].value;
	}
	
	return str;
}

function validateForm(id) {
	var f = $h(id);
	var input = f.getElementsByTagName('input');
	
	for(var i = 0; i < input.length; i++) {
		if(hasClass(input[i],'required')&&!input[i].value) {
			return false;
		}
	}
	
	return true;
}

function evenHeight(c) {
	
	var maxh = 0;
	c.each(function(e) {
		var h = (e.select('li').length)-1;
		if(h > maxh) { maxh = h; }
	});
	
	c.each(function(e) {
		e.style.height = (30+((maxh*15)))+'px';
	});
	
}

function ajaxResp(url,params,responseFn)
{
var xmlhttp;
if (window.XMLHttpRequest)
  {
  // code for IE7+, Firefox, Chrome, Opera, Safari
  xmlhttp=new XMLHttpRequest();
  }
else
  {
  // code for IE6, IE5
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
xmlhttp.onreadystatechange=function()
{
if(xmlhttp.readyState==4)
  {
  //RESPONSE
  var respTxt = xmlhttp.responseText;
  eval(responseFn+'(respTxt)');
  }
}

xmlhttp.open("POST",url,true);
xmlhttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
xmlhttp.send(params);
}

 
var Menu = new Object;
Menu.currentTopic = false;

Menu.hover = function(ref) {
	var el = $$h('tab','li',$h('main_menu'));
	for(var i = 0; i < el.length; i++) {
		hremoveClass(el[i],'act');
	}
	haddClass(ref, 'act');
}

Menu.topic = function(t) {
	if (t !== Menu.currentTopic) {
		Menu.hover($h('tab'+t));
		
		Menu.currentTopic = t;
		Cookies.createCookie('currentTopic',t,1);
		
		var el = $$h('t', 'div', $h('topic'));
		for (var i = 0; i < el.length; i++) {
			hremoveClass(el[i], 'show');
		}
		$h('splash').className = 'splash' + t;
		haddClass($h('t' + t), 'show');
		
		var cnt = $h('tInner' + t);
		$fx(cnt).fxAdd({
			type: 'opacity',
			from: 0,
			to: 100,
			step: 2,
			delay: 10
		}).fxRun();
	}
}

Menu.saveScroll = function() {
	var sc = getScrollTop();
	Cookies.createCookie('scroll',sc,1);
}

