var isie = false;
if (window.ActiveXObject){
	isie = true;
} else {
	isie = false;
}

function getStyle(node, styleprop)
{
	if (node.currentStyle)
		return node.currentStyle[styleprop];
	else if (window.getComputedStyle)
		return document.defaultView.getComputedStyle(node,null).getPropertyValue(styleprop);
	else
		return false;
}

function getElementsByClass(classname, startnode)
{
	if (!startnode) {
		startnode = document;
	}
	var allnodes = startnode.getElementsByTagName("*");
	var inc=0;
	var customcollection = new Array;
	for (i=0; i<allnodes.length; i++) {
		if (allnodes[i].className == classname){
			customcollection[inc++] = allnodes[i];
		}
	}
	return customcollection;
}

function setDisplayNode(node, display)
{
	if (isie && display == "table-row")
		display = "block";
	if (node.style)
		node.style.display = display;
}

function setDisplayId(id, display)
{
	node = document.getElementById(id);
	if (node)
		setDisplayNode(node, display);
}


function toggleDisplayNode(node, vdisplay)
{
	if (node.style.display)
		curdisplay = node.style.display;
	else
		curdisplay = getStyle(node, 'display');
	if (curdisplay == vdisplay)
		setDisplayNode(node, 'none');
	else
		setDisplayNode(node, vdisplay);
}
	
function toggleDisplayId(id, vdisplay)
{
	toggleDisplayNode(document.getElementById(id), vdisplay);
}

function toggleDisplayClass(classname, vdisplay)
{
	var nodescollection = getElementsByClass(classname);
	for (i=0; i<nodescollection.length; i++) {
		toggleDisplayNode(nodescollection[i], vdisplay);
	}
}

function hideId(id)
{
	setDisplayNode(document.getElementById(id), 'none');
}

function showId(id)
{
        setDisplayNode(document.getElementById(id), 'block');
}

function hideClass(classname, nothisid)
{
	var nodescollection = getElementsByClass(classname);
	for (i=0; i<nodescollection.length; i++) {
		if (!nothisid || nodescollection[i].id != nothisid)
			setDisplayNode(nodescollection[i], 'none');
	}
}

function hideChildsId(id)
{
	var node = document.getElementById(id);
	var nodescollection = node.childNodes;
	for (i=0; i<nodescollection.length; i++) {
		if (nodescollection[i].nodeType == 1)
			setDisplayNode(nodescollection[i], 'none');
	}
}

function setValueId(id, value)
{
	var node = document.getElementById(id);
	if (node.nodeName){
		if (node.nodeName == 'input' || node.nodeName == 'INPUT') {
			node.value = value;
		} else {
			alert('setinputvalue: node with id '+id+' is not an input!!!'+node.nodeName);
		}
	} else
		alert('setinputvalue: id '+id+' not fount!!!');
}

function getValueId(id)
{
	var node = document.getElementById(id);
	if (node.value)
		return node.value;
	else
		return false;
}

function setValueClass(classname, value){
	var nodescollection = getElementsByClass(classname);
	for (i=0; i<nodescollection.length; i++) {
		nodescollection[i].value = value;
	}
}

function submitId(id)
{
	var node = document.getElementById(id);
	if (node.nodeName){
		if (node.nodeName == 'form' || node.nodeName == 'FORM') {
			node.submit();
		} else {
			alert('submitform: node with id '+id+' is not a form!!!');
		}
	} else
		alert('submitform: id '+id+' not fount!!!');
}

function appendHtmlId(id, html)
{
	var node = document.getElementById(id);
	if (node){
		node.innerHTML = node.innerHTML+html;
	}
}

function clearId(id)
{
	var node = document.getElementById(id);
	if (node){
		node.innerHTML = '';
	}
}

function replaceHtmlId(id, html){
	var node = document.getElementById(id);
	clearId(id);
	appendHtmlId(id, html);
}

function toggleAppendHtmlId(id, html){
	var node = document.getElementById(id);
	if (node)
		if (!node.hasChildNodes()){
			replaceHtmlId(id, html);
		} else {
			clearId(id);
		}
}

function putImg(id, src1)
{
	element = document.getElementById(id);
	if (!element) {
		alert(id + ' doesn\' exist!');
		return false;
	}
	element.innerHTML = '';
	imgelement = document.createElement('img');
	imgelement.src = src1;
	element.appendChild(imgelement);
}

function appendLink(id, url, text)
{
	element = document.getElementById(id);
	if (!element) {
		alert(id + ' doesn\' exist!');
		return false;
	}
	aelement = document.createElement('a');
	aelement.href = url;
	textelement = document.createTextNode(text);
	aelement.appendChild(textelement);
	element.appendChild(aelement);

}

function putLinkedImg(id, imgsrc, url)
{
	element = document.getElementById(id);
	if (!element) {
		alert(id + ' doesn\' exist!');
		return false;
	}
	element.innerHTML = '';
	aelement = document.createElement('a');
	aelement.href = url;
//	aelement.onclick = function() { eval(onclicky); };
	imgelement = document.createElement('img');
	imgelement.src = imgsrc;
	aelement.appendChild(imgelement);
	element.appendChild(aelement);
}

function toggleImgSrc(id, src1, src2)
{
	element = document.getElementById(id);
	if (!element)
		return;
	if (element.src.indexOf(src1) != -1)
		element.src = src2;
	else
		element.src = src1;
}

function toggleClassName(node, name1, name2)
{
	if (node.className == name1)
		node.className = name2;
	else
		node.className = name1;
}

function toggleClassNameByClass(aclass, name1, name2, startid)
{
	if (startid)
		startnode = document.getElementById(startid);
	else
		startnode = document;
	var nodescollection = getElementsByClass(aclass, startnode);
	for (i=0; i<nodescollection.length; i++) {
		node = nodescollection[i];
		if (node.className == name1)
			node.className = name2;
		else
			node.className = name1;
	}		
}

function setClassNameById(id, name)
{
	document.getElementById(id).className = name;
}

function markAllRows( container_id )
{
    var rows = document.getElementById(container_id).getElementsByTagName('tr');
    var unique_id;
    var checkbox;

	for ( var i = 0; i < rows.length; i++ ) {

        checkbox = rows[i].getElementsByTagName( 'input' )[0];

        if ( checkbox && checkbox.type == 'checkbox' ) {
            unique_id = checkbox.name + checkbox.value;
            if ( checkbox.disabled == false ) {
                checkbox.checked = true;
            }
	}
	}
}

function UnmarkAllRows( container_id ) {
    var rows = document.getElementById(container_id).getElementsByTagName('tr');
    var unique_id;
    var checkbox;

	for ( var i = 0; i < rows.length; i++ ) {

        checkbox = rows[i].getElementsByTagName( 'input' )[0];

        if ( checkbox && checkbox.type == 'checkbox' ) {
            unique_id = checkbox.name + checkbox.value;
            if ( checkbox.disabled == false ) {
                checkbox.checked = false;
            }
	}
	}
}

/***********************************************
* Disable "Enter" key in Form script- By Nurul Fadilah(nurul@REMOVETHISvolmedia.com)
* This notice must stay intact for use
* Visit http://www.dynamicdrive.com/ for full source code
***********************************************/

function handleEnter (field, event) {
                var keyCode = event.keyCode ? event.keyCode : event.which ? event.which : event.charCode;
                if (keyCode == 13) {
                        var i;
                        for (i = 0; i < field.form.elements.length; i++)
                                if (field == field.form.elements[i])
                                        break;
                                i = (i + 1) % field.form.elements.length;
                                field.form.elements[i].focus();
                                return false;
                        }
                else
                        return true;
}
