var browser=navigator.appName;
var b_version=navigator.appVersion;
var version=parseFloat(b_version);
if (browser == "Microsoft Internet Explorer") {
	version = b_version.substr(b_version.indexOf("MSIE")+5, 3);
	version=parseFloat(version);
}




/* tabs for the web hosting area */
function launchTabs(){
//alert(version);
	if (!(browser == "Microsoft Internet Explorer" && version < 8)) {
		var tabs = getElementsByClassName(document.getElementById('content'), 'tab');
		for (var i = 0; i < tabs.length; i++) {
			// 		tabs[i].style.position='absolute';
			tabs[i].getElementsByTagName('thead')[0].style.display = 'none';
		}
		
		var navNode = document.createElement('div');
		navNode.className = 'nav';
		for (var i = 0; i < tabs.length; i++) {
			var navItem = document.createElement('strong');
			var tid = tabs[i].id;
			navItem.setAttribute('onclick', 'showTab("' + tabs[i].id + '")');
			var itemTxt = document.createTextNode(tabs[i].getElementsByTagName('strong')[0].childNodes[0].nodeValue);
			navItem.appendChild(itemTxt);
			navNode.appendChild(navItem);
		}
		// 	getElementsByClassName(document.getElementById('content'), 'tabs')[0].appendChild(navNode);
		getElementsByClassName(document.getElementById('content'), 'tabs')[0].insertBefore(navNode, getElementsByClassName(document.getElementById('content'), 'tabs')[0].firstChild);
		
		showTab('tab-overview');
	/*	initTabs();
	 tabs[0].style.display = 'block';
	 */
	}
}
function showTab (id) {
	initTabs();
	document.getElementById(id).style.display='block';

	var navs = getElementsByClassName(document.getElementById('content'), 'nav')[0].childNodes;
	for (var i = 0; i < navs.length; i++) {
		var url = navs[i].onclick+"";
		if (url.indexOf(id)>=0) navs[i].className = 'on';
	}
}
function initTabs(){
	var tabs = getElementsByClassName(document.getElementById('content'), 'tab');
	for (var i = 0; i < tabs.length; i++) {
		tabs[i].style.display = 'none';
	}
	
	var navs = getElementsByClassName(document.getElementById('content'), 'nav')[0].childNodes;
	for (var i = 0; i < navs.length; i++) {
		navs[i].className = '';
	}
	
}







// helps
//
// 		thanks to 
//		- http://simon.incutio.com/archive/2004/05/26/addLoadEvent

function addLoadEvent(func) {
  var oldonload = window.onload;
  if (typeof window.onload != 'function') {
    window.onload = func;
  } else {
    window.onload = function() {
      if (oldonload) {
        oldonload();
      }
      func();
    }
  }
}
/*
AddEvent Manager (c) 2005-2006 Angus Turnbull http://www.twinhelix.com
Free usage permitted as long as this credit notice remains intact.
*/

if (typeof addEvent != 'function')
{
 var addEvent = function(o, t, f, l)
 {
  var d = 'addEventListener', n = 'on' + t, rO = o, rT = t, rF = f, rL = l;
  if (o[d] && !l) return o[d](t, f, false);
  if (!o._evts) o._evts = {};
  if (!o._evts[t])
  {
   o._evts[t] = o[n] ? { b: o[n] } : {};
   o[n] = new Function('e',
    'var r = true, o = this, a = o._evts["' + t + '"], i; for (i in a) {' +
     'o._f = a[i]; r = o._f(e||window.event) != false && r; o._f = null;' +
     '} return r');
   if (t != 'unload') addEvent(window, 'unload', function() {
    removeEvent(rO, rT, rF, rL);
   });
  }
  if (!f._i) f._i = addEvent._i++;
  o._evts[t][f._i] = f;
 };
 addEvent._i = 1;
 var removeEvent = function(o, t, f, l)
 {
  var d = 'removeEventListener';
  if (o[d] && !l) return o[d](t, f, false);
  if (o._evts && o._evts[t] && f._i) delete o._evts[t][f._i];
 };
}

function cancelEvent(e, c)
{
 e.returnValue = false;
 if (e.preventDefault) e.preventDefault();
 if (c)
 {
  e.cancelBubble = true;
  if (e.stopPropagation) e.stopPropagation();
 }
};


addLoadEvent(activate_help);
addLoadEvent(activate_regdata);

is_help_active = false;
regitems = false;
input_display_style = 'block'; 

function activate_help() {
	var zebody = document.getElementById('content');
	var helps = getElementsByClassName(zebody, 'help'); //fieldsets
    for(var i=0; i<helps.length; i++) { 
		// hides help text
		helps[i].style.display='none';
		helps[i].style.position='absolute';
		helps[i].style.marginTop='-78px';		

		var hb = document.createElement('span');
		hb.setAttribute('class', 'help_button');
		var hbt = document.createTextNode('?');
		hb.appendChild(hbt);
		helps[i].parentNode.insertBefore(hb, helps[i]);

		// adds rollover button
		addEvent(helps[i].previousSibling, 'mouseover', toggle_help);
		addEvent(helps[i], 'mouseout', hide_help);		
		addEvent(helps[i], 'mouseover', show_help);		

		//button on input:
		//inputelement = helps[i].parentNode;
		//inputelement = inputelement.getElementsByTagName("input");
		//inputelement = inputelement.firstChild;
		//addEvent(inputelement, 'onfocus', toggle_help);  //=>toggle which help?
		//addEvent(inputelement, 'onblur', hide_help);
		//addEvent(inputelement, 'onfocus', show_help);
	}
}
function toggle_help(e) {
	this.nextSibling.style.display = 'inline';
 	cancelEvent(e, false);
}
function hide_help(e) {
//	alert('hide');
	is_help_active = false;
	ht = window.setTimeout("clear_help()",1200);
//	cancelEvent(e, false);
}
function show_help(e) {
//	alert('show');
	window.clearTimeout(ht);
	is_help_active = true;
//	cancelEvent(e, false);
}
function clear_help() {
//	alert('clear');
	if (is_help_active == false) {
		var zebody = document.getElementById('content');
		var helps = getElementsByClassName(zebody, 'help');
  		for(var i=0; i<helps.length; i++) { 
			helps[i].style.display='none';
		}
	}
}

// showing / hiding registration data

function set_reg_visibility(newvalue) {
	if (newvalue) {
		newstyle = document.getElementById('org').style.display;
	} else {
		newstyle = 'none';
	}
	for (var i=0; i<regitems.length; i++) {
		regitems[i].style.display=newstyle;
	}
}

function activate_regdata() {
	var zebody = document.getElementById('content'); //ihih ;)
	regitems = getElementsByClassName(zebody, 'regdata');
	if (regitems.length>0) {
		input_display_style = regitems[0].style.display;
		for (var i = 0; i < regitems.length; i++) {
			regitems[i].style.display = 'none';
		//	regitems[i].style.position='absolute';
		}
	}
}

// other functions


function check_and_submit_comment(id) {
	var myform = document.getElementById(id);
	var send_form = true;
	var message = getElementsByClassName(myform.parentNode, 'formErrors')[0];
	initialize_messages (message);
	initialize_labels (myform);
	if (myform.name.value == '') {
		send_form = false;
		myform.name.parentNode.getElementsByTagName('label')[0].className = 'formlabelerror ';
		message.style.display = 'block';		
		message.getElementsByTagName('li')[0].style.display = 'block';
	} 
	if (myform.txt1.value == "" || myform.txt1.value == "…") {
		send_form = false;	
		myform.txt1.parentNode.getElementsByTagName('label')[0].className = 'formlabelerror ';
		message.style.display = 'block';		
		message.getElementsByTagName('li')[1].style.display = 'block';
	}
	return send_form;
}

function initialize_messages (message) {
	message.style.display = 'none';
	var messages = message.getElementsByTagName('li');
    for(var i=0; i<messages.length; i++) { 
		messages[i].style.display = 'none';
	}
}

function initialize_labels (theform) {
	var labels = theform.getElementsByTagName('label');
    for(var i=0; i<labels.length; i++) {
		labels[i].className = '';
	}
}

function getElementsByClassName(node, classname){
    var a = [];
    var re = new RegExp('\\b' + classname + '\\b');
    var els = node.getElementsByTagName("*");
    for(var i=0,j=els.length; i<j; i++)
        if(re.test(els[i].className))a.push(els[i]);
    return a;
}


////////////////////////////////////////////////////////////////////
// submenu fold effect 
////////////////////////////////////////////////////////////////////

var submenu_node;
var thisUrlStr; // current page
var previousUrlStr; // previous page
var newUrlStr; // next page

function init_submenu(thisUrlStrf, previousUrlStrf) {
	
	activate_help();
	
	thisUrlStr = thisUrlStrf;
	previousUrlStr = previousUrlStrf;
	
	var thisUrl = thisUrlStr.split('/');
	var previousUrl = previousUrlStr.split('/');	
	submenu_node = getSelectedSubmenu();

	if (submenu_node!= null && thisUrlStr!=previousUrlStr && !(thisUrl.length!=previousUrl.length && thisUrl[thisUrl.length-2] == previousUrl[previousUrl.length-4]) && !(thisUrl.length>=7 && thisUrl.length!=previousUrl.length && thisUrl[thisUrl.length-3] == previousUrl[previousUrl.length-2]) && !(thisUrl.length>7 && thisUrl.length==previousUrl.length && thisUrl[thisUrl.length-3] == previousUrl[previousUrl.length-3])) {
		Effect.BlindDown(submenu_node,{duration:1.5});
	}
	var anodes = document.getElementById('submenu').getElementsByTagName('a');
	for (var i = 0; i<anodes.length; i++) {
		if (anodes[i].parentNode.parentNode.className != 'selected') anodes[i].setAttribute('onclick', 'menu_clear(this.href); return false;');
	}
}

function menu_clear(newUrlStrf) {
	newUrlStr = newUrlStrf;
	var thisUrl = thisUrlStr.split('/');
	var previousUrl = previousUrlStr.split('/');	
	var newUrl = newUrlStr.split('/');
	if (submenu_node!=null && newUrlStr!=thisUrlStr && !(thisUrl[thisUrl.length-4] == newUrl[newUrl.length-3] && thisUrl[thisUrl.length-3] == newUrl[newUrl.length-2])) { 
		if (thisUrl[thisUrl.length-4] != newUrl[newUrl.length-3] && thisUrl[thisUrl.length-4] != newUrl[newUrl.length-2] && thisUrl[thisUrl.length-3] != newUrl[newUrl.length-3]) { 
			Effect.BlindUp(submenu_node.parentNode.parentNode,{duration:1.5});
		} else {
			Effect.BlindUp(submenu_node,{duration:1.5});
		}
		window.setTimeout("get_url('"+newUrlStr+"');", 1500);
	} else {
		get_url(newUrlStr);
	}
}
function get_url(url) {
	window.location = url;
	return true;
}

function getSelectedSubmenu() {
	var node = null;
	var nodes = getElementsByClassName(document.getElementById('submenu'), 'selected');	
	for (var i = 0; i<nodes.length; i++) {
		if (nodes[i].nodeName == 'UL') {
			node = nodes[i];
		}
	}
	return node;
}
