var IE4 = false;
var NS4 = false;
var DOM = false;

if (document.getElementById) {
	DOM = true;
} else if (document.layers) {
	NS4 = true;
} else {
	IE4 = true;
}

function MyGetElementById(elementId) {
	if (DOM) {
		return document.getElementById(elementId);
	} else if (NS4) {
		return document.layers[elementId];
	} else if (IE4) {
		return document.all[elementId];
	}
	return void(0);
}
function MyGetElementStyleById(elementId) {
	if (NS4) {
		return document.layers[elementId];
	} else {
		return MyGetElementById(elementId).style;
	}
}

function alertNode(node) {
	var text = "nodeName:\t"+node.nodeName+
			"\n nodeType:\t"+node.nodeType+
			"\n nodeValue:\t"+node.nodeValue+
			"\n parent: "+
			"\n\t nodeName:\t"+node.parentNode.nodeName+
			"\n\t nodeType:\t"+node.parentNode.nodeType;
	if (node.hasChildNodes()) {
		text+= "\n hasChildren: "+node.childNodes.length;
	} else {
		text+= "\n hasChildren: NO";
	}
	if (node.nodeName == "INPUT") {
		text+= "\n INPUT-values:"+
			"\n\t id:\t "+node.id+
			"\n\t name:\t "+node.name+
			"\n\t value:\t "+node.value;
	}
	text+= "\n\n Attribute:";
	for (var i=0; i<node.attributes.length; i++) {
		text+= "\n\t"+node.attributes[i].nodeName+"\t"+node.attributes[i].nodeValue;
	}
	alert(text);
}