
function hoverOn(idIn)
{
	document.getElementById(idIn).src = "http://www.ztorm.com/_images/buttons/en/" + idIn + "2.gif";
}

function hoverOff(idIn)
{
	document.getElementById(idIn).src = "http://www.ztorm.com/_images/buttons/en/" + idIn + ".gif";
}

function toggleDiv(idIn)
{
	var currentState = $(idIn).style.visibility;
	
	if(currentState == ""){
		$(idIn).style.visibility = "visible";
	}else if(currentState == "hidden"){
		$(idIn).style.visibility = "visible";
	}else{
		$(idIn).style.visibility = "hidden";
	}
}

function toggleMenu(idIn)
{
	var currentState = $(idIn).style.display;
	
	if(currentState == ""){
		$(idIn).style.display = "block";
	}else if(currentState == "none"){
		$(idIn).style.display = "block";
	}else{
		$(idIn).style.display = "none";
	}
	
	//Make sure two menus can't be open at the same time
	if(idIn == "lvl2_menu_software"){
		$("lvl2_menu_faq").style.display = "none";
	}
	if(idIn == "lvl2_menu_faq"){
		$("lvl2_menu_software").style.display = "none";
	}
}

function toggleContactCheckbox(obj)
{
	if(document.getElementById("moreinfo").value == "0") {
		document.getElementById("moreinfo").value = "1";
		obj.src = "http://www.ztorm.com/_images/buttons/contact_checkbox_x.gif";
	}else{
		document.getElementById("moreinfo").value = "0";
		obj.src = "http://www.ztorm.com/_images/buttons/contact_checkbox_o.gif";
	}
}

var CssSelect = new Object;
CssSelect = {
	// A hash that will save all CssSelect-objects ids. So multiple CssInfo thingies
   	// can be used on the same page.
   	selectors: $H({ }),
    
    // When clicking on the parent
  	click: function(selectId, obj) {
     	// First call on page load to a specific CssSelect thingy
       	if (typeof this.selectors[selectId] == "undefined") {
        	this.selectors[selectId] = $H({ });
       	}
       	
       	// Saves container and inner id
       	this.selectors[selectId]['containerId'] = obj.id;
       	this.selectors[selectId]['innerId'] = obj.id+'_inner';
       	
       	// Click is to hide
       	if ($(this.selectors[selectId]['innerId']).visible()) {
        	this.hide(selectId);
       	}
       	
       	// Click is to view
       	else {
        	this.show(selectId);
      	}
   	},

   // Mouse over a child
   over: function(selectId, obj) {
   		// Loops through all options (<li> child elements) to sett/remove css class
   		var temp_siblings = $(this.selectors[selectId]['innerId']).childElements();
    
   		for (i=0; i<temp_siblings.length; i++) {
    		if (temp_siblings[i].id == obj.id) {
       		 	$(temp_siblings[i].id).addClassName('CssSelectInner_std_over');
      	 	}
      		else {
      			$(temp_siblings[i].id).removeClassName('CssSelectInner_std_over');
      		}
   		}
   },

   // Mouse out from a child
   out: function(selectId) {
   		// Loops through all options (<li> child elements) to removes css class
       	var temp_siblings = $(this.selectors[selectId]['innerId']).childElements();
       	
       	for (i=0; i<temp_siblings.length; i++) {
        	$(temp_siblings[i].id).removeClassName('CssSelectInner_std_over');
       	}
   	},

   // Clicks a child
   clickChild: function(selectId, obj, setValue) {
   		// Gets "visible" value
       	var get_visible_value = $(obj.id).innerHTML;
       	
       	// De-mark previously clicked
       	if (typeof this.selectors[selectId]['clickedChild'] == "string") {
        	$(this.selectors[selectId]['clickedChild']).removeClassName('CssSelectInner_std_clicked');
       	}
       
       	// Mark clicked
       	$(obj.id).addClassName('CssSelectInner_std_clicked');
       
       	// Saves selected id
       	this.selectors[selectId]['clickedChild'] = obj.id;
       
       	// Sets visible value
       	$(this.selectors[selectId]['containerId']).innerHTML = get_visible_value;
       
       	// Add selected class to parent <li>
       	$(this.selectors[selectId]['containerId']).addClassName('CssSelect_std_selected');
       	
       	// Saves value to hidden form field
       	$(this.selectors[selectId]['containerId'] +'_input').value = setValue;
       
       	// Hides all siblings
       	this.hide(selectId);
	},

   	// Internal, called only by other functions
   	// ----------------------------------------
   	// Shows all childs (the inner)
   	show: function(selectId) {
  		$(this.selectors[selectId]['innerId']).style.width = ($(this.selectors[selectId]['containerId']).getWidth() - 6) +'px';
       	
       	//Super-fulhack
       	if(navigator.appName == "Microsoft Internet Explorer"){
       		$(this.selectors[selectId]['innerId']).style.margin = '22px -155px';
       	}
       	
       	//$(this.selectors[selectId]['innerId']).show();
       	new Effect.BlindDown($(this.selectors[selectId]['innerId']), { 'duration': 0.3 });
   	},
    
    // Hides all childs (the inner)
   	hide: function(selectId) {
    	//$(this.selectors[selectId]['innerId']).hide();
       	new Effect.BlindUp($(this.selectors[selectId]['innerId']), { 'duration': 0.2 });
   	}
}

function emptyOnFocus(object, standardValue)
{
	if (object.value == standardValue){ 
    	object.value = ""; 
   	}
}

function emptyOnBlur(object, standardValue)
{
	if(object.value == ""){
    	object.value = standardValue;
    }
}