

function roundedCorners() {
  var divs = document.getElementsByTagName('div');
  var rounded_divs = [];
  for (var i = 0; i < divs.length; i++) {
    if (/\brounded\b/.exec(divs[i].className)) {
      rounded_divs[rounded_divs.length] = divs[i];
    }
  }
  for (var i = 0; i < rounded_divs.length; i++) {
    var original = rounded_divs[i];
    /* Make it the inner div of the four */
    original.className = original.className.replace('rounded', 'rounded4');
    /* Now create the outer-most div */
    var tr = document.createElement('div');
    tr.className = 'rounded1';
    /* Swap out the original (we'll put it back later) */
    original.parentNode.replaceChild(tr, original);
    /* Create the two other inner nodes */
    var tl = document.createElement('div');
    tl.className = 'rounded2';
    var br = document.createElement('div');
    br.className = 'rounded3';
    /* Now glue the nodes back in to the document */
    tr.appendChild(tl);
    tl.appendChild(br);
    br.appendChild(original);
  }
}
window.onload = roundedCorners;

/* The following function creates an XMLHttpRequest object... */
function createRequestObject(){
	var request_o; //declare the variable to hold the object.
	var browser = navigator.appName; //find the browser name
	if(browser == "Microsoft Internet Explorer"){
		/* Create the object using MSIE's method */
		request_o = new ActiveXObject("Microsoft.XMLHTTP");
	}else{
		/* Create the object using other browser's method */
		request_o = new XMLHttpRequest();
	}
	return request_o; //return the object
}

/* You can get more specific with version information by using 
	parseInt(navigator.appVersion)
	Which will extract an integer value containing the version 
	of the browser being used.
*/
	
/* The variable http will hold our new XMLHttpRequest object. */
var http = new createRequestObject(); 

/*functions:
		"GetMap",
		"handleUpdatePSShipTo"

*/
var map=null;
function GetMap(div,latitude,longitude)         
{           
	map = new VEMap('myMap');            
	map.LoadMap(new VELatLong(latitude, longitude), 10 ,'h' ,false);         
} 

function updateTableInfo(KeyID,ColName,TableName,KeyField){

	document.getElementById('NewItem['+KeyID+']['+ColName+']').disabled=true;
	if (document.getElementById('NewItem['+KeyID+']['+ColName+']').type=="text"){
		NewItem=document.getElementById('NewItem['+KeyID+']['+ColName+']').value;
	}
	else if ((document.getElementById('NewItem['+KeyID+']['+ColName+']').type=="checkbox")){
		if((document.getElementById('NewItem['+KeyID+']['+ColName+']').checked)==true) {
			NewItem='T';
		}
		else{
			NewItem='F';
		}
	}
	else{
		NewItem=document.getElementById('NewItem['+KeyID+']['+ColName+']').value;
	}
	var getStr='action=UpdateTableInfo&NewItem='+NewItem+'&ColName='+ColName+'&TableName='+TableName+'&KeyField='+KeyField+'&KeyID='+KeyID;
	//alert('PregoAJAX.php?'+getStr);
	http.open('get', 'PregoAJAX.php?' + getStr,true);
	http.onreadystatechange = function (){ handleUpdateTableInfo(KeyID, ColName)}; 
	http.send(null);
}


/* Function called to handle the list that was returned from the internal_request.php file.. */
function handleUpdateTableInfo(KeyID,ColName){
	if(http.readyState == 4){ //Finished loading the response
		var response = http.responseText;
		//alert(response);
		document.getElementById('NewItem['+KeyID+']['+ColName+']').disabled=false;
		if ((document.getElementById('NewItem['+KeyID+']['+ColName+']').type=="text")
				|| (document.getElementById('NewItem['+KeyID+']['+ColName+']').type=="password") 
				|| (document.getElementById('NewItem['+KeyID+']['+ColName+']').type=="textarea")){
					document.getElementById('NewItem['+KeyID+']['+ColName+']').value=response;
//			 alert("TextData");
		}
		else if ((document.getElementById('NewItem['+KeyID+']['+ColName+']').type=="checkbox")){
			if (response=='T'){
				document.getElementById('NewItem['+KeyID+']['+ColName+']').checked=true;
			}
			else{
				document.getElementById('NewItem['+KeyID+']['+ColName+']').checked=false;
			}
//			 alert("checkboxData");
		}
		else if ((document.getElementById('NewItem['+KeyID+']['+ColName+']').type=="select-one")){
				document.getElementById('NewItem['+KeyID+']['+ColName+']').value=response;
			 //alert("SelectData");
		}
/*		else if(document.forms[i].elements[j].type.indexOf("select") != -1){
					      document.forms[i].elements[j].selectedIndex = -1;
		      while (((pos = val.indexOf(" ")) != -1) && (val.length> 1)) {
		       	sel = parseInt(val.substring(0,pos));
		       	val = val.substring(pos+1,val.length);
		       	if (sel < document.forms[i].elements[j].length)
		        	document.forms[i].elements[j].options[sel].selected= true;
		 	 }
		}*/
	}
	else{

	}
}

function highlightRow(MPID){
	

  var divs = document.getElementsByTagName('tr');
  for (var i = 0; i < divs.length; i++) {
    var original = divs[i];
    /* Make it the inner div of the four */
    original.className = original.className.replace('highlightRow', '');
  }

	document.getElementById('Row'+MPID).className='highlightRow';
}

function getTableValue(KeyID,ColName,TableName,KeyField,DivID){

	var getStr='action=getTableValue&ColName='+ColName+'&TableName='+TableName+'&KeyField='+KeyField+'&KeyID='+KeyID;
	//alert('PregoAJAX.php?'+getStr);
	http.open('get', 'PregoAJAX.php?' + getStr,true);
	http.onreadystatechange = function (){ handleGetTableValue(DivID)}; 
	http.send(null);
}


/* Function called to handle the list that was returned from the internal_request.php file.. */
function handleGetTableValue(DivID){
	if(http.readyState == 4){ //Finished loading the response
		var response = http.responseText;
		//alert(response);
		document.getElementById(DivID).innerHTML=response;
	}
	else{

	}
}




/*
// +----------------------------------------------------------------------+
// | Copyright (c) 2004 Bitflux GmbH                                      |
// +----------------------------------------------------------------------+
// | Licensed under the Apache License, Version 2.0 (the "License");      |
// | you may not use this file except in compliance with the License.     |
// | You may obtain a copy of the License at                              |
// | http://www.apache.org/licenses/LICENSE-2.0                           |
// | Unless required by applicable law or agreed to in writing, software  |
// | distributed under the License is distributed on an "AS IS" BASIS,    |
// | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or      |
// | implied. See the License for the specific language governing         |
// | permissions and limitations under the License.                       |
// +----------------------------------------------------------------------+
// | Author: Bitflux GmbH <devel@bitflux.ch>                              |
// +----------------------------------------------------------------------+

*/
var acReq;
var t = null;
//var acLast = "";
var s_req = "";
var s_name = "";
var ac = new Array();
var isIE = false;

function getXMLHTTP()
{
  try
  {
    request_o = new ActiveXObject("Microsoft.XMLHTTP");
  }
  catch(ex)
  {
    //either this is not IE, or it is a version of IE which does not support XMLHTTP
    try
    {
      request_o = new XMLHttpRequest();
    }
    catch(ex)
    {
      //we can't use AJAX because this browser is not compatible.
      request_o = false;
    }
  }
  return request_o;
}

function AutoComplete(r, id) {
  this.s_req = r;
  this.s_name = id;

	if (navigator.userAgent.indexOf("Safari") > 0) {
		document.getElementById(this.s_name).addEventListener("keydown", acKeyPress, false);
		document.getElementById(this.s_name).addEventListener("blur", acHide, false);
	} else if (navigator.product == "Gecko") {
		document.getElementById(this.s_name).addEventListener("keypress", acKeyPress, false);
		document.getElementById(this.s_name).addEventListener("blur", acHideDelayed, false);
	} else {
		document.getElementById(this.s_name).attachEvent("onkeydown", acKeyPress);
		document.getElementById(this.s_name).attachEvent("onblur", acHideDelayed);
//    document.body.attachEvent('onclick', acHide);
		isIE = true;
	}
//	document.getElementById(o).setAttribute("autocomplete","off");
  ac.push(this);
}

function acHideDelayed() {
//  document.getElementById("ac_debug").innerHTML = "HideDelayed";
	window.setTimeout("acHide()", 250);
}

function acHideThis(id)
{
	document.getElementById("LSResult_" + id).style.display = "none";
	var highlight = document.getElementById("LSHighlight");
	if (highlight) {
		highlight.removeAttribute("id");
	}
//  o = document.getElementById(id);
//  if(o)
//  {
//    o.focus();
//  }
}

function acHide() {
  id = acGetID();
//  o = document.getElementById(id);
//  if(o)
//  {
//    o.focus();
//  }
  for (var i = 0; i < ac.length; i++)
  {
//    document.getElementById("ac_debug").innerHTML = ac[i].s_name;
  	if(document.getElementById("LSResult_" + ac[i].s_name))
  	{
    	document.getElementById("LSResult_" + ac[i].s_name).innerHTML = "<div class=\"dropshadow\"><div class=\"innerbox\"><div id=\"LSShadow_" + ac[i].s_name + "\"><div id='LSRes'><DT>&#xA0;</DT></div></div></div></div>";
    	document.getElementById("LSResult_" + ac[i].s_name).style.display = "none";
    	document.getElementById("LSIFrame_" + ac[i].s_name).style.display = "none";
//  	var highlight = document.getElementById("LSHighlight");
//  	if (highlight) {
//  		highlight.removeAttribute("id");
//  	}
  	}
  }
}

function acGetID()
{
  for (var i = 0; i < ac.length; i++)
  {
//document.getElementById("ac_debug").innerHTML += "acGetID (" + (ac[i].s_name) + ")<br>";
  	if(document.getElementById("LSResult_" + ac[i].s_name))
  	{
    	if(document.getElementById("LSResult_" + ac[i].s_name).style.display == "block")
    	{
    	  return ac[i].s_name;
    	}
  	}
  }
}

function acKeyPress(event) {
//  document.getElementById("ac_debug").innerHTML = "KeyPress (" + event.keyCode + ")";
  if(isIE)
  {
    id = acGetID();
	  o = document.getElementById(id);
  }
  else
  {
    id = this.id;
	  o = this;
  }
  var key = (event.which ? event.which : event.keyCode);
  switch(key)
  {
    case 40:
    	//KEY DOWN
  		highlight = document.getElementById("LSHighlight");
  		if (!highlight) {
  			highlight = document.getElementById("LSShadow_" + id).firstChild.firstChild;
  		} else {
  			highlight.removeAttribute("id");
  			highlight = highlight.nextSibling;
  		}
  		if (highlight && highlight.tagName == 'DT') {
  			highlight.setAttribute("id","LSHighlight");
    		selectItem(highlight.title, o);
  		}
  		if (!isIE) { event.preventDefault(); }
//document.getElementById("ac_debug").innerHTML = highlight.tagName;
      break;
    case 38:
    	//KEY UP
  		highlight = document.getElementById("LSHighlight");
  		if (!highlight) {
  			highlight = document.getElementById("LSShadow_" + id).firstChild.lastChild;
  			if(highlight.tagName != 'DT')
  			{
  			  highlight = highlight.previousSibling;
  			}
  		} 
  		else {
  			highlight.removeAttribute("id");
  			highlight = highlight.previousSibling;
  		}
  		if (highlight && highlight.tagName == 'DT') {
        highlight.setAttribute("id","LSHighlight");
    		selectItem(highlight.title, o);
  		}
  		if (!isIE) { event.preventDefault(); }
//document.getElementById("ac_debug").innerHTML = highlight.tagName;
      break;
    case 27:
    	//ESC
  		highlight = document.getElementById("LSHighlight");
  		if (highlight) {
  			highlight.removeAttribute("id");
  		}
  		if(document.getElementById("LSResult_" + id))
  		{
    		document.getElementById("LSResult_" + id).style.display = "none";
    		document.getElementById("LSIFrame_" + id).style.display = "none";
  		}
      break;
    case 13:
    	//RETURN
  		highlight = document.getElementById("LSHighlight");
  		selectItem(highlight.title, o);
      break;
    case 9:
    	//TAB
  		acReq.abort();
  		acHide(id);
  		highlight = document.getElementById("LSHighlight");
//  		if (!highlight)
//  		{
//  		  if(id) highlight = document.getElementById("LSShadow_" + id).firstChild.firstChild;
//  		}
  		if(highlight)
  		{
  		  if(isIE)
  		  {
//document.getElementById("ac_debug").innerHTML = highlight.title;
      		selectItem(highlight.title, o);
  		  }
  		  else
  		  {
      		if(typeof highlight.title != "undefined")
      		{
        		selectItem(highlight.title, o);
      		}
  		  }
  		}
      break;
  }
}

function acStart(e, o) {
  var key = (e.keyCode ? e.keyCode : e.which);
  var div_o = document.getElementById("LSResult_" + o.id);
  var ifrm_o = document.getElementById("LSIFrame_" + o.id);
  var pos_o = findPos(o);
  if(key < 9 || key > 40)
  {
//    document.getElementById("ac_debug").innerHTML = "acStart (" + key + ")";
    if (acReq)
    {
      acReq = null;
    }
  	if (t) {
  		window.clearTimeout(t);
  	}
    acReq = getXMLHTTP();
    posIt(div_o, pos_o[1], pos_o[0]);
    posIt(ifrm_o, pos_o[1], pos_o[0]);
  	t = window.setTimeout("acDoSearch('" + o.id + "', '" + this.s_req + "')", 50);
  }
}

function acDoSearch(s_obj, r) {
  q = (document.getElementById(s_obj) ? document.getElementById(s_obj) : opener.document.getElementById(s_obj));
  q.className = "Spinner_" + q.id + " UserDefined_" + q.id;
//  r = eval('ac_' + s_obj + '.s_req');
//	document.getElementById("ac_debug").innerHTML = this.id;
//	if (typeof acRoot == "undefined") {
//		acRoot = "";
//	}
//	if (typeof acRootSubDir == "undefined") {
//		acRootSubDir = "";
//	}
	if (typeof acParams == "undefined") {
		acParams2 = "&id=" + s_obj;
	} else {
		acParams2 = "&" + acParams;
	}
//	if (acLast != q.value) {
	if (acReq && acReq.readyState < 4) {
		acReq.abort();
	}
	if ( q.value == "") {
    q.className = "UserDefined_" + q.id;
		acHide(q.id);
//		acLast = "";
		return false;
	}
//	acReq.open("GET", acRoot + r + q.value + acParams2, true);
	acReq.open("GET", r + q.value + acParams2, true);
//	acLast = q.value;
	acReq.send(null);
	acReq.onreadystatechange = acProcessReqChange;
//	}
}

function acProcessReqChange() {
//	document.getElementById("ac_debug").innerHTML += acReq.readyState;
	if (acReq.readyState == 4) {
		var res = document.getElementById("LSResult_" + q.id);
		var ifrm = document.getElementById("LSIFrame_" + q.id);
		var sh = document.getElementById("LSShadow_" + q.id);
		res.style.display = "block";
		sh.innerHTML = "<div id='LSRes'>" + acReq.responseText + "</div>";
		ifrm.style.height = (document.getElementById("LSResult_" + q.id).offsetHeight) + "px";
		ifrm.style.width = (document.getElementById("LSResult_" + q.id).offsetWidth) + "px";
		ifrm.style.display = "block";
		
		if(acReq.responseText.toLowerCase().indexOf("<input ") >= 0)
		{
    	if (navigator.userAgent.indexOf("Safari") > 0) {
	      document.getElementById(q.id).removeEventListener("keydown", acKeyPress, false);
    		document.getElementById(q.id).removeEventListener("blur", acHide, false);
    	} else if (navigator.product == "Gecko") {
	      document.getElementById(q.id).removeEventListener("keypress", acKeyPress, false);
    		document.getElementById(q.id).removeEventListener("blur", acHideDelayed, false);
    	} else {
    		document.getElementById(q.id).detachEvent("onkeydown", acKeyPress);
    		document.getElementById(q.id).detachEvent("onblur", acHideDelayed);
    	}
		}
		else
		{
    	if (navigator.userAgent.indexOf("Safari") > 0) {
    		document.getElementById(q.id).addEventListener("keydown", acKeyPress, false);
    		document.getElementById(q.id).addEventListener("blur", acHide, false);
    	} else if (navigator.product == "Gecko") {
    		document.getElementById(q.id).addEventListener("keypress", acKeyPress, false);
    		document.getElementById(q.id).addEventListener("blur", acHideDelayed, false);
    	} else {
    		document.getElementById(q.id).detachEvent("onkeydown", acKeyPress);
    		document.getElementById(q.id).detachEvent("onblur", acHideDelayed);
    		document.getElementById(q.id).attachEvent("onkeydown", acKeyPress);
    		document.getElementById(q.id).attachEvent("onblur", acHideDelayed);
//    		document.getElementById(q.id).onkeydown = "acKeyPress(window.event);";
//    		document.getElementById(q.id).onblur = "acHideDelayed();";
    	}
		}
//document.getElementById("ac_debug_rcs").innerHTML = '<pre>' + acReq.responseText.replace(/^/g, '').replace(/</g, '&lt;').replace(/>/g, '&gt;') + '</pre>';
//document.getElementById("ac_debug").innerHTML = document.getElementById(q.id).onkeydown;
//    alert(document.getElementById("LSResult_" + q.id).offsetHeight); // = document.getElementById("Ron").offsetHeight + 3;
    q.className = "UserDefined_" + q.id;
	}
}

function acSubmit() {
	var highlight = document.getElementById("LSHighlight");
	if (highlight && highlight.firstChild) {
//		window.location = highlight.firstChild.nextSibling.getAttribute("href");
		return false;
	} 
	else {
		return true;
	}
}

function selectItem(val, o, focus)
{
  if(!o)
  {
    id = acGetID();
	  o = document.getElementById(id);
  }
  o.value = val;
  if(focus) o.focus();
}

function findPos(obj)
{
  var tmp = obj.id;
  var curleft = curtop = 0;
	var offsetX = 0;
	var offsetY = 0;
	var strict = false;

			//IE
	if(typeof window.pageYOffset == "undefined")
	{
		//strict mode
		if((document.documentElement.clientHeight != 0))
		{
//		  alert("strict");
			offsetX = -3;
			offsetY = 189;
			strict = true;
		}
		//quirks mode
		else
		{
//		  alert("quirks");
			offsetX = 0;
			offsetY = 0;
		}
	}
	//w3c
	else
	{
//	  alert("w3c");
//	  alert(obj.offsetLeft);
		offsetX = 0;
		offsetY = 0;
	}
  if (obj.offsetParent)
  {
    curleft = obj.offsetLeft + offsetY;
    curtop = obj.offsetTop + offsetX;
    while (obj = obj.offsetParent)
    {
      curleft += (strict ? 0 : obj.offsetLeft);
      curtop += obj.offsetTop;
    }
  }
//  alert(tmp + ":" + curleft);
  return [curleft, curtop];
}

function posIt(obj, posTop, posLeft)
{	
	obj.style.position = "absolute";
	obj.style.top = (posTop + 25) + 'px';
	obj.style.left = (posLeft) + 'px';
}

AutoComplete.prototype.acStart = acStart;


function hideCol(strCol){
	var ths = document.getElementsByTagName('th');
	var tds = document.getElementsByTagName('td');
	for (idx in ths){
		if (String(ths[idx].className).indexOf(strCol)!=-1)
			ths[idx].className=String(ths[idx].className).replace(/shown/,'hidden');
	}
	for (idx in tds){
		if (String(tds[idx].className).indexOf(strCol)!=-1)
			tds[idx].className=String(tds[idx].className).replace(/shown/,'hidden');
	}
}
function showCol(strCol){
	var ths = document.getElementsByTagName('th');
	var tds = document.getElementsByTagName('td');
	for (idx in ths){
		if (String(ths[idx].className).indexOf(strCol)!=-1)
			ths[idx].className=String(ths[idx].className).replace(/hidden/,'shown');
	}
	for (idx in tds){
		if (String(tds[idx].className).indexOf(strCol)!=-1)
			tds[idx].className=String(tds[idx].className).replace(/hidden/,'shown');

	}
}
function popUpWindow(URL) {
	day = new Date();
	//id = day.getTime();
	//id = "ProdWin";
	eval("page" + 1 + " = window.open(URL, '" + 1 + "', 'toolbar=0,scrollbars=1,location=0,statusbar=1,menubar=0,resizable=1,width=700,height=600');");
}

// return the value of the radio button that is checked
// return an empty string if none are checked, or
// there are no radio buttons
function getCheckedValue(radioObj) {
	//alert('ingetCheckedValue'+radioObj+ ' length'+radioObj.length+ ' name'+radioObj.name+' sourceIndex'+radioObj.sourceIndex);
	if(!radioObj)
		return "";
	var radioLength = radioObj.length;
	//alert(radioLength);
	if(radioLength == undefined)
		if(radioObj.checked)
			return radioObj.value;
		else
			return "";
	
	for(var i = 0; i < radioLength; i++) {
		//alert(radioObj[i].name+' '+ radioObj[i].value);
//		if(radioObj[i].checked) {
		if(radioObj.item(i).checked) {
			//alert('checked');
			return radioObj[i].value;
		}
	}
	return "";
}

// set the radio button with the given value as being checked
// do nothing if there are no radio buttons
// if the given value does not exist, all the radio buttons
// are reset to unchecked
function setCheckedValue(radioObj, newValue) {
	if(!radioObj)
		return;
	var radioLength = radioObj.length;
	if(radioLength == undefined) {
		radioObj.checked = (radioObj.value == newValue.toString());
		return;
	}
	for(var i = 0; i < radioLength; i++) {
		radioObj[i].checked = false;
		if(radioObj[i].value == newValue.toString()) {
			radioObj[i].checked = true;
		}
	}
}

function disableCheckBoxes(checkboxObj) { 
	// Checking if at least one period button is selected. Or not. 
	if(!checkboxObj)
		return "";
	
	for(var i=0; i < checkboxObj.length; i++){
		checkboxObj[i].disabled=true;
	}
} 
function enableCheckBoxes(checkboxObj) { 
	// Checking if at least one period button is selected. Or not. 
	if(!checkboxObj)
		return "";
	
	for(var i=0; i < checkboxObj.length; i++){
		checkboxObj[i].disabled=false;
	}
} 