/**
 * @copyright 2004. blog.underconstruction.hu
 * @author Adam Brunner <adambrunner[at]underconstruction.hu></a>
 */

var RADIOBUTTON_STATE_ON = 'rbon.gif';
var RADIOBUTTON_STATE_OFF = 'rboff.gif';

var RADIOBUTTON_IMAGE_ON = new Image(); RADIOBUTTON_IMAGE_ON.src = RADIOBUTTON_STATE_ON;
var RADIOBUTTON_IMAGE_OFF = new Image(); RADIOBUTTON_IMAGE_OFF.src = RADIOBUTTON_STATE_OFF;

var RADIOBUTTON_COLLECTOR = new Object();
var RADIOBUTTON_IMAGE_COLLECTOR = new Array();

function GenerateRadiobutton() {
	var _rbs = document.getElementsByTagName('INPUT');

	for(var _rbid = 0; _rbid < _rbs.length; _rbid++) {
		var _rb = _rbs[_rbid];

		if(_rb.type != 'radio') { continue; }
		var _span = document.createElement('SPAN');
		
		var _new_rb = _rb.cloneNode(false);
		_new_rb.checked = _rb.checked;
		if(document.location.href.indexOf('?none') == -1) {
			_new_rb.style.display = 'none';
		}

		var _tname = _new_rb.name;

		var _img = document.createElement('IMG');
		_img.src = _new_rb.checked?RADIOBUTTON_IMAGE_ON.src:RADIOBUTTON_IMAGE_OFF.src;
		_img.rb = _new_rb;
		_img.name = _tname;
		_img.onclick = function() {
			if(!this.rb.checked) {
				for(_tcounter in RADIOBUTTON_COLLECTOR[this.name]) {
					var _timg = RADIOBUTTON_COLLECTOR[this.name][_tcounter];
					if(_timg == this) {
						_timg.rb.checked = true;
						_timg.src = RADIOBUTTON_IMAGE_ON.src;
					} else {
						_timg.rb.checked = false;
						_timg.src = RADIOBUTTON_IMAGE_OFF.src;
					}
				}
			}
		};

		if(RADIOBUTTON_COLLECTOR[_tname] == undefined) { RADIOBUTTON_COLLECTOR[_tname] = new Array(); }

		RADIOBUTTON_COLLECTOR[_tname][RADIOBUTTON_COLLECTOR[_tname].length] = _img;
		RADIOBUTTON_IMAGE_COLLECTOR[RADIOBUTTON_IMAGE_COLLECTOR.length] = _img;
		_span.appendChild(_new_rb);
		_span.appendChild(_img);
		
		_rb.parentNode.replaceChild(_span,_rb);
	}

	setInterval(function() {
		for(var i = 0; i < RADIOBUTTON_IMAGE_COLLECTOR.length; i++) {
			var cImg = RADIOBUTTON_IMAGE_COLLECTOR[i];
			if(cImg.src == RADIOBUTTON_IMAGE_ON.src && !cImg.rb.checked || cImg.src == RADIOBUTTON_IMAGE_OFF.src && cImg.rb.checked) {
				cImg.src = cImg.rb.checked?RADIOBUTTON_IMAGE_ON.src:RADIOBUTTON_IMAGE_OFF.src;
			}
		}
	},250);
}
