function getObjectSave(id) {
	var object = null;
	
	if (document.layers) {   
		object = document.layers[id];
	} 
	else if( document.all ) {
		object = document.all[id];
	} 
	else if( document.getElementById ) {
		object = document.getElementById(id);
	}
	return object;
}

function getObject(id) {
	if (typeof id != 'string') {
		return id;
	}
	
	if (typeof document.getElementById != 'undefined') {
		return document.getElementById(id);
	} 
	else if (typeof document.all != 'undefined') {
		return document.all[id];
	} 
	else if (typeof document.layers != 'undefined') {
		return document.layers[id];
	} 
	else {
		return null;
	}
}


//   id     id of the div to hide or show
//   state   1 visible, 0 hidden
function toggleLayer(id, state) {
  if (document.layers) { //NN4+
    document.layers[id].visibility = state ? "show" : "hide";
    document.layers[id].display = state ? "block" : "none";
  }
  else if (document.getElementById) { //gecko(NN6) + IE 5+
    var obj = document.getElementById(id);
    obj.style.visibility = state ? "visible" : "hidden";
    obj.style.display = state ? "block" : "none";
//    obj.style.display = state ? "block" : "";		
  }
  else if (document.all) {	// IE 4
    document.all[id].style.visibility = state ? "visible" : "hidden";
    document.layers[id].display = state ? "block" : "none";
  }
}


//   szDivId     id of the div to hide or show
//   state      1 visible, 0 hidden
function toggleTableRow(tableId, rowIndex, state) {
	var table = getObject(tableId);
	
	table.rows[rowIndex].style.display = state ? "" : "none";
}

function toggleTableRowById(tableId, rowId, state) {
//alert("toggleTableRowById - begin: tableId = " + tableId + " rowId = " + rowId + " state = " + state);
	var table = getObject(tableId);
//alert("toggleTableRowById: table.rows.length = " + table.rows.length);	
	var rowIndex;
	
	for (rowIndex = 0; rowIndex < table.rows.length; rowIndex++)	{
//alert("rowIndex " + table.rows[rowIndex].id );
		if (table.rows[rowIndex].id == rowId) {
			table.rows[rowIndex].style.display = state ? "" : "none";
			break;
		}		
	}
}

function getSelection(elemId,type) {
	var returnType = (type == 'text') ? 'text' : 'value';
	var index = getObject(elemId).selectedIndex;
	
	return (returnType == 'value') ? getObject(elemId)[index].value : getObject(elemId)[index].text;
}

function getSelectionValue(elemId) {
	var index = getObject(elemId).selectedIndex;
	return getObject(elemId)[index].value;		
}

function getSelectionText(elemId) {
	var index = getObject(elemId).selectedIndex;
	return getObject(elemId)[index].text;		
}

function getRadioSelectionSave(elemId) {
//alert("getRadioSelection - begin: formId = " + formId + " elemId = " + elemId);	
	var len = getObject(elemId).length;	
  var val;
	var i;
	
	for (i = len - 1; i > -1; i--) {	
		if ( getObject(elemId)[i].checked ) {
			val = getObject(elemId)[i].value;			
			break;		
		}
	}
//alert("getRadioSelection - end: val = "+val);
 	
	return val;
}

function getRadioSelection(formId, elemId) {
//alert("getRadioSelection - begin: formId = " + formId + " elemId = " + elemId);	
	var len = document.forms[formId][elemId].length;	
  var val;
	var i;
	
	for (i = len - 1; i > -1; i--) {	
		if ( document.forms[formId][elemId][i].checked ) {
			val = document.forms[formId][elemId][i].value;			
			break;		
		}
	}
//alert("getRadioSelection - end: val = "+val);
 	
	return val;
}

function setRadioSelection(formId, elemId, elemValue) {
//alert("setRadioSelection - begin: formId = " + formId + " elemId = " + elemId);	
	var len = document.forms[formId][elemId].length;
	var i;
	
	for (i = len - 1; i > -1; i--) {	
		if ( document.forms[formId][elemId][i].value == elemValue ) {
			document.forms[formId][elemId][i].checked = "checked";			
			break;		
		}
	}
//alert("setRadioSelection - end:"); 	
}
