var d = document
var sh_idprops = new Object();
var sh_onetime_objs = new Object();

function show_hide() {
  var last_elem = show_hide.arguments[show_hide.arguments.length-1];
  var iterations = show_hide.arguments.length;
	var b_once = false;
	if (last_elem == "show" || last_elem == "hide" || last_elem == "disabled" || last_elem == "enabled" || last_elem == "waithide" || last_elem == "body_click_hide") {
    iterations = iterations-1;
  }
	if (last_elem == "disabled") {
		for (i=0; i<iterations; i++) {
			sh_idprops[show_hide.arguments[i]] = {disabled:true};
		}
	} else if (last_elem == "enabled") {
		for (i=0; i<iterations; i++) {
			sh_idprops[show_hide.arguments[i]] = {disabled:false};
		}
	}
	
  for (i=0; i<iterations; i++) {
		if (d.getElementById(show_hide.arguments[i])) {
			var p = d.getElementById(show_hide.arguments[i]).style;
			var obj = d.getElementById(show_hide.arguments[i]);
		} else {
			var p = show_hide.arguments[i].style;
			var obj = show_hide.arguments[i];
		}
		
		if (sh_idprops[show_hide.arguments[i]] == null || !sh_idprops[show_hide.arguments[i]].disabled) {
			if (last_elem == "hide") {
				p.display = "none"; 
				sh_idprops[show_hide.arguments[i]] = {hidden:true};
			} else if (last_elem == "show") {
				p.display = "block";  
				sh_idprops[show_hide.arguments[i]] = {hidden:false};
			} else if (p.display=="block" || p.display=="") {
				p.display = "none"; 
				sh_idprops[show_hide.arguments[i]] = {hidden:true};
			} else {
				p.display = "block";
				sh_idprops[show_hide.arguments[i]] = {hidden:false};
			}
		}
	}
}