// global variables that can be used by ALL the function son this page.

var baseaddr = ".";

if( document.getElementsByTagName ) 
{
	var elements = document.getElementsByTagName( 'base' );

	if( elements.length ) 
	{
		baseaddr = elements[0].href;
	}
}

var inputs;
var imgFalse = baseaddr + "/images/checkbox.png";
var imgTrue = baseaddr + "/images/checkbox-checked.png";
var imgRefresh = baseaddr + "/images/spinner.gif";
var ajaxImage;
var oldAjaxImage;

// this function runs when the page is loaded, put all your other onload stuff in here too.

function initChecks() {
	replaceChecks();
}

function replaceChecks() {
    
    //get all the input fields on the page
    inputs = document.getElementsByTagName( 'input' );

    //cycle trough the input fields
    for(var i=0; i < inputs.length; i++) {

        //check if the input is a checkbox
        if(inputs[i].getAttribute('type') == 'checkbox' 
					|| inputs[i].getAttribute('type') == 'radio' ) 
				{
            
            //create a new image
            var img = document.createElement('img');
            
            //check if the checkbox is checked
            if(inputs[i].checked) {
                img.src = imgTrue;
            } else {
                img.src = imgFalse;
            }

            //set image ID and onclick action
            img.id = 'checkImage'+i;
            //set image
            img.onclick = new Function('checkChange('+i+')');
            //place image in front of the checkbox
            inputs[i].parentNode.insertBefore(img, inputs[i]);
            
            //hide the checkbox
            inputs[i].style.display='none';
        }
    }
}

//change the checkbox status and the replacement image
function checkChange(i) {

		var myname = inputs[i].name;

    for( var si = 0; si < inputs.length; si++) 
		{
			if ( myname == inputs[si].name
				&& inputs[si].getAttribute('type') == 'radio' )
			{
				inputs[si].checked = false;
        document.getElementById( 'checkImage' + si ).src = imgFalse;
			}
		}

    if ( inputs[i].checked ) 
		{
        inputs[i].checked = false;
        document.getElementById( 'checkImage' + i ).src=imgFalse;
    } 
		else 
		{
        inputs[i].checked = true;
        document.getElementById('checkImage'+i).src=imgTrue;
    }

		if ( inputs[i].onclick != null )
		{
			ajaxImage = 'checkImage' + i;
			inputs[i].onclick();
		}

}

$(window).ready( function() { initChecks(); } );

/*if( window.addEventListener )
{
	window.addEventListener( "load", initChecks, false );
}
else
{
	window.onload = initChecks;
}*/