// page init
$(document).observe("dom:loaded", function() {
	initAccordion();
	initInputs();
	initCufon();
	initTabs();
	initDropDown();
	_firstChild();
	hideSelects();
})

// dropdown code
function initDropDown() {
	var nav = document.getElementById("nav");
	if(nav) {
		var lis = nav.getElementsByTagName("li");
		for (var i=0; i<lis.length; i++) {
			if(lis[i].getElementsByTagName("ul").length > 0) {
				lis[i].className += " has-drop-down"
				lis[i].getElementsByTagName("a")[0].className += " has-drop-down-a"
			}
		}
	}
}

function _firstChild() {
	var _nav_main = document.getElementById("nav");
	var _nav_item = _nav_main.getElementsByTagName("li");
	if(_nav_main){
		_nav_item[0].className += " firstchild";
	}
}
function hideSelects() {
	var _refreshTime = 50;
	var _menu = document.getElementById("nav");
	if(_menu) {
		var _menu = _menu.getElementsByTagName('ul')[0];
		var _items = [];
		var _tmp = _menu.getElementsByTagName('div');
		for (var i = 0; i < _tmp.length; i++) if(hasClass(_tmp[i],'drop') || hasClass(_tmp[i],'subnav')) _items.push(_tmp[i]);

		for (var i = 0; i < _items.length; i++) {
			(function(){
				var _timer;
				var _drop = _items[i];
				var _opener = _drop.parentNode;
				var _iframe = document.createElement('IFRAME');
				_iframe.style.filter="alpha(opacity=0)";
				_iframe.style.position="absolute";
				//_iframe.src="javascript:true";
				_iframe.src="";
				_iframe.frameBorder=0;
				_iframe.style.top='0px';
				_iframe.style.left='0px';
				_iframe.style.zIndex=-1;
				_drop.appendChild(_iframe);
				function recalcDimensions() {
					setTimeout(function(){
						_iframe.style.height = _drop.offsetHeight+30+'px';
						_iframe.style.width = _drop.offsetWidth+'px';
						//_iframe.style.top = _drop.style.top;
						_iframe.style.display = "block";
					},_refreshTime);
				}
				_opener.onmouseover = function(){
					if(_timer) clearTimeout(_timer);
					addClass(_opener,'hover');
					setTimeout(recalcDimensions,50);
				}
				_opener.onmouseout = function(){
					_timer = setTimeout(function(){
						removeClass(_opener,'hover');
						_iframe.style.display = "none";
					},_refreshTime);
				}
			})(i);
		}
	}
	function hasClass(obj,cname) {
		return (obj.className ? obj.className.match(new RegExp('(\\s|^)'+cname+'(\\s|$)')) : false);
	}
	function addClass(obj,cname) {
		if (!hasClass(obj,cname)) obj.className += " "+cname;
	}
	function removeClass(obj,cname) {
		if (hasClass(obj,cname)) obj.className=obj.className.replace(new RegExp('(\\s|^)'+cname+'(\\s|$)'),' ');
	}
}

// cufon init
function initCufon() {
	Cufon.replace('#nav span a', {textShadow: '#f3d67a 1px 2px', fontFamily: 'Neuland Inline', hover: true });
	Cufon.replace('#main h1', {fontFamily: 'Neuland Inline'});
	Cufon.replace('#content h2', {fontFamily: 'Neuland Inline'});
	Cufon.replace('.twocolumns h2', {fontFamily: 'Neuland Inline'});
	Cufon.replace('#content-inner h2', {fontFamily: 'Neuland Inline'});
	Cufon.replace('.comments h3', {fontFamily: 'Neuland Inline'});
	Cufon.replace('.section-info h3', {fontFamily: 'Neuland Inline'});
}

// accordion function
function initAccordion() {
	var _slideDuration = 0.35;
	var _activeClass = 'open';
	var _accordions = $$('ul.accordeon');
	_accordions.each(function(obj, i){
		var _holder = obj;
		var _items = _holder.select('li');
		_items.each(function(_obj, _ind){
			var _curitem = _obj;
			var _opener = _curitem.getElementsBySelector('a.opener')[0];
			var _drop = _curitem.getElementsBySelector('div.sslide')[0];
			if(_drop) {
				var _dropHeight = _drop.getDimensions().height;
				if(!_curitem.hasClassName(_activeClass)) {
					_drop.setStyle({'height':'0'});
				}
				_opener.onclick = function () {
					if(_curitem.hasClassName(_activeClass)) {
						_curitem.removeClassName(_activeClass);
						new Effect.Morph(_drop, {
							style: {
								height: (0+'px')
							},
							duration: _slideDuration
						});
					} else {
						var _drops = _holder.getElementsBySelector('div.sslide');
						_drops.each(function(_dr, _ind){
							new Effect.Morph(_dr, {
								style: {
									height: (0+'px')
								},
								duration: _slideDuration
							});
							_dr.up().removeClassName(_activeClass);
						});
						_curitem.addClassName(_activeClass);
						new Effect.Morph(_drop, {
							style: {
								height: (_dropHeight+'px')
							},
							duration: _slideDuration
						});
					}
					return false;
				}
			}
		});
	});
}

// clear inputs
function initInputs(){
	
	var str = String;
	str = String(document.location);
	pos = str.indexOf('member-area.php');
	
	if (pos == -1) {
		
		$$('input[type="text"], input[type="password"], textarea').each(function(_el){
			if(!_el.val) _el.val = _el.value;
			_el.onfocus = function(){
				if(this.value == this.val) this.value = '';
			}
			_el.onblur = function(){
				if(this.value == '') this.value = this.val;
			}
		});
		
	}
}

// tabs function
function initTabs() {
	var _activeClass = 'active';

	$$("ul.tabset1, ul.tabset").each(function(_el, i){
		var _links = _el.select('a.tab');
		var _tabs = [];

		_links.each(function(lnk, i){
			var _opener = lnk;
			var _target = $(_opener.href.substring(_opener.href.indexOf('#')+1));
			_tabs.push(_target);

			// show/hide tabs
			if(_opener.hasClassName(_activeClass)) _target.setStyle({'display':'block'});
			else _target.setStyle({'display':'none'});

			// switch tab
			_opener.observe('click', function(event){
				event.preventDefault();
				_tabs.each(function(_tab, i){
					if(_tab == _target) _tab.setStyle({'display':'block'});
					else if(_tab) _tab.setStyle({'display':'none'});
				});
				_links.each(function(lnk){lnk.removeClassName(_activeClass)});
				_opener.addClassName(_activeClass);
			})
		})
	})
}
