function replace(fullString,text,by) {
	// Replaces text with by in string
	var strLength = fullString.length, txtLength = text.length;
	if ((strLength == 0) || (txtLength == 0)) return fullString;

	var i = fullString.indexOf(text);
	if ((!i) && (text != fullString.substring(0,txtLength))) return fullString;
	if (i == -1) return fullString;

	var newstr = fullString.substring(0,i) + by;

	if (i+txtLength < strLength)
		newstr += replace(fullString.substring(i+txtLength,strLength),text,by);

	return newstr;
	
}

function getposOffset(overlay, offsettype){
	var totaloffset=(offsettype=="left")? overlay.offsetLeft : overlay.offsetTop;
	var parentEl=overlay.offsetParent;
	while (parentEl!=null){
		totaloffset=(offsettype=="left")? totaloffset+parentEl.offsetLeft : totaloffset+parentEl.offsetTop;
		parentEl=parentEl.offsetParent;
	}
	return totaloffset;
}

function overlay(curobj, subobjstr, opt_position){
	if (document.getElementById){
		var subobj=document.getElementById(subobjstr)
		subobj.style.display=(subobj.style.display!="block")? "block" : "none"
		var xpos=getposOffset(curobj, "left")+((typeof opt_position!="undefined" && opt_position.indexOf("right")!=-1)? -(subobj.offsetWidth-curobj.offsetWidth) : 0) 
		var ypos=getposOffset(curobj, "top")+((typeof opt_position!="undefined" && opt_position.indexOf("bottom")!=-1)? curobj.offsetHeight : 0)
		subobj.style.left=xpos+"px"
		subobj.style.top=ypos+"px"
		return false
	}
	else
		return true
}

function overlayclose(subobj){
	document.getElementById(subobj).style.display="none"
}
function hiderow(x) {
	if ( document.all ) {
		document.getElementById(x).style.display="none";
		//document.getElementById(x).style.visibility="hidden";
	} else {
		document.getElementById(x).style.display="none";
		document.getElementById(x).style.visibility="hidden";
	}
	return false;
}
function showrow(x) {
	if ( document.all ) {
		document.getElementById(x).style.visibility="visible";
		document.getElementById(x).style.display="block";
	} else {
		document.getElementById(x).style.visibility="visible";
		document.getElementById(x).style.display="table-row";
	}
	return false;
}
function hidetable(x) {
	if ( document.all ) {
		document.getElementById(x).style.display="none";
		document.getElementById(x).style.visibility="hidden";
	} else {
		document.getElementById(x).style.display="none";
		document.getElementById(x).style.visibility="hidden";
	}
	return false;
}
function showtable(x) {
	if ( document.all ) {
		document.getElementById(x).style.visibility="visible";
		document.getElementById(x).style.display="table";
	} else {
		document.getElementById(x).style.visibility="visible";
		document.getElementById(x).style.display="table";
	}
	return false;
}
function showcontrols() {
	document.getElementById('controls').style.display= "block";
}
function submitonce(theform){
	//if IE 4+ or NS 6+
	if (document.all||document.getElementById){
		//screen thru every element in the form, and hunt down "submit" and "reset"
		for (i=0;i<theform.length;i++){
		var tempobj=theform.elements[i]
		if(tempobj.type.toLowerCase()=="submit"||tempobj.type.toLowerCase()=="reset")
			//disable em
			tempobj.disabled=true
		}
	}
}

function hidediv(x) {
	if ( document.all ) {
		document.getElementById(x).style.display="none";
		//document.getElementById(x).style.visibility="hidden";
	} else {
		document.getElementById(x).style.display="none";
		document.getElementById(x).style.visibility="hidden";
	}
	return false;
}
function showdiv(x) {
	if ( document.all ) {
		document.getElementById(x).style.visibility="visible";
		document.getElementById(x).style.display="block";
	} else {
		document.getElementById(x).style.visibility="visible";
		document.getElementById(x).style.display="block";
	}
	return false;
}
function hidespan(x) {
	if ( document.all ) {
		document.getElementById(x).style.display="none";
		//document.getElementById(x).style.visibility="hidden";
	} else {
		document.getElementById(x).style.display="none";
		document.getElementById(x).style.visibility="hidden";
	}
	return false;
}
function showspan(x) {
	if ( document.all ) {
		document.getElementById(x).style.visibility="visible";
		document.getElementById(x).style.display="inline";
	} else {
		document.getElementById(x).style.visibility="visible";
		document.getElementById(x).style.display="inline";
	}
	return false;
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
function hidetable(x) {
	if ( document.all ) {
		document.getElementById(x).style.display="none";
		document.getElementById(x).style.visibility="hidden";
	} else {
		document.getElementById(x).style.display="none";
		document.getElementById(x).style.visibility="hidden";
	}
	return false;
}
function showtable(x) {
	if ( document.all ) {
		document.getElementById(x).style.visibility="visible";
		document.getElementById(x).style.display="table";
	} else {
		document.getElementById(x).style.visibility="visible";
		document.getElementById(x).style.display="table";
	}
	return false;
}
function ajaxFunction(id)
  {
  var xmlHttp;
  try
    {
    // Firefox, Opera 8.0+, Safari
    xmlHttp=new XMLHttpRequest();
    }
  catch (e)
    {
    // Internet Explorer
    try
      {
      xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
      }
    catch (e)
      {
      try
        {
        xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
        }
      catch (e)
        {
        alert("Your browser does not support AJAX!");
        return false;
        }
      }
    }
    xmlHttp.onreadystatechange=function()
      {
      if(xmlHttp.readyState==4)
        {
        document.myForm.time.value=xmlHttp.responseText;
        }
      }
    xmlHttp.open("GET","/updatestatus/prod/id/1",true);
    xmlHttp.send(null);
  }
