
/* *********************************************************************************** */
// label maker
function findInputLabel(field_name){
	var label = 'Unknown Field'; 
	var objid = null
	if(document.getElementsByTagName){
		var inputs = document.getElementsByTagName('input')
		for(var i=0;i<inputs.length;i++){
			if (inputs[i].name==field_name){
				var id = inputs[i].getAttribute('id')
				var label_temp = getLabelFor(id)
				if( label_temp ){ label = label_temp
				} else {
					label_temp = getLabelSurrounding(inputs[i])
					if( label_temp ){ label = label_temp
					}
				}
			}
		}
	}
	return label
}

function getLabelFor(id){
	var label = null
	if(document.getElementsByTagName){
		var labels = document.getElementsByTagName('label')
		var f = null
		for(var i=0;i<labels.length;i++){
			f = labels[i].htmlFor
			if(f==id){
				label = __getLabelValue(labels[i])
				break;	
			}
		}
	}
	return label
}

function getLabelSurrounding(obj){
	var label = null
	var node = obj
	for(var i=0;i<9999;i++){
		parent = node.parentNode
		if(parent.tagName=='LABEL'){
			label = __getLabelValue(parent)
			break;	
		}
		if(parent.tagName=='FORM'){ 
			break; // we dare not continue
		}
		node = parent
	}
	return label
}

function __getLabelValue(labelnode){
	label = ''
	for(var j=0;j<labelnode.childNodes.length;j++){
		var node = labelnode.childNodes[j]
		if(node.nodeType==3){ label += node.data
		}
	}
	return label;
}
// end label maker
/* *********************************************************************************** */
