<!--
	var d = document;
	
	var blnMac = (navigator.userAgent.toLowerCase().indexOf("mac") != -1) ? true : false;
	var blnNs4 = (document.layers) ? true : false;
	var blnIe4 = (document.all && !document.getElementById) ? true : false;
	var blnIe5 = (document.all && document.getElementById) ? true : false;
	var blnNs6 = (!document.all && document.getElementById) ? true : false;


	function ftnGetObjectString(strObjectId) {
		if(blnNs4) return "document." + strObjectId;
		if(blnIe4) return "document.all." + strObjectId;
		if(blnIe5 || blnNs6){
			if (blnMac && blnIe5)
				return "document.all['" + strObjectId + "']";
			else
				return "document.getElementById('" + strObjectId + "')";
		}
	}
	
	function ftnGetObject(strObjectId) {
		var strEval = ftnGetObjectString(strObjectId);
		return eval(strEval);
	}

	function ftnShowHide(obj) {
		if (ftnGetObject(obj).style.display == 'none') {
			ftnGetObject(obj).style.display = 'block';
			ftnGetObject(obj).blur;
		} else {
			ftnGetObject(obj).style.display = 'none';
			ftnGetObject(obj).blur;
		}
	}
	
	function ftnCheckMandatory(strValue) {
		strValue = strValue.replace(/^\s*(\b.*\b|)\s*$/, "$1");
	
		if (strValue == '' || strValue == '.') {
			return false;
		}
		return true;
	}

	// add text adjacent to input field
	if(typeof HTMLElement!="undefined" && !HTMLElement.prototype.insertAdjacentElement){
		HTMLElement.prototype.insertAdjacentElement = function (where,parsedNode)
		{
			switch (where){
			case 'beforeBegin':
				this.parentNode.insertBefore(parsedNode,this)
				break;
			case 'afterBegin':
				this.insertBefore(parsedNode,this.firstChild);
				break;
			case 'beforeEnd':
				this.appendChild(parsedNode);
				break;
			case 'afterEnd':
				if (this.nextSibling) 
					this.parentNode.insertBefore(parsedNode,this.nextSibling);
				else this.parentNode.appendChild(parsedNode);
				break;
			}
		}
	
		HTMLElement.prototype.insertAdjacentHTML = function (where,htmlStr)
		{
			var r = this.ownerDocument.createRange();
			r.setStartBefore(this);
			var parsedHTML = r.createContextualFragment(htmlStr);
			this.insertAdjacentElement(where,parsedHTML)
		}
	
	
		HTMLElement.prototype.insertAdjacentText = function (where,txtStr)
		{
			var parsedText = document.createTextNode(txtStr)
			this.insertAdjacentElement(where,parsedText)
		}
	}
	
	function ftnAddField (form, fieldType, fieldName, fieldValue, fieldText, fieldSelect, ftnCall) {
		if (document.getElementById) {
			var span = document.createElement("SPAN");
			var input;
			
			input = "<input type='" + fieldType + "' id='" + fieldName + "' name='" + fieldName + "' value='" + fieldValue + "'";
			if (fieldSelect > 0) {
				input += " checked='on'";
			}
			if (ftnCall.length > 0) {
				input += " onclick='" + ftnCall + "' ";
			}
			input += ">";
			if (fieldText.length > 0)
			{
				input += fieldText;
			}
			input += "</input>";
			
			span.innerHTML = input;
			
			//var input = document.createElement("INPUT");
			if (document.all) { // what follows should work 
								  // with NN6 but doesn't in M14
				span.id = fieldName + "_txt";
			}
			else if (document.getElementById) { // so here is the
											  // NN6 workaround
				span.setAttribute('id', fieldName + "_txt");
			}
			
			form.appendChild(span);
		}
	}
	
	function ftnGetField (form, fieldName) {
	  if (!document.all)
		return form[fieldName];
	  else  // IE has a bug not adding dynamically created field 
			// as named properties so we loop through the elements array 
		for (var e = 0; e < form.elements.length; e++)
		  if (form.elements[e].name == fieldName)
			return form.elements[e];
	  return null;
	}        
	function ftnRemoveField (form, fieldName) {
	  var field = ftnGetField (form, fieldName);
	  if (field && !field.length)
	  alert(field.id);
		field.parentNode.removeChild(field);
	}	
-->
