Object.extend(Element, {
	getWidth: function(element) {
	   	element = $(element);
	   	return element.offsetWidth; 
	},
	setWidth: function(element,w) {
	   	element = $(element);
    	element.style.width = w +"px";
	},
	setHeight: function(element,h) {
   		element = $(element);
    	element.style.height = h +"px";
	},
	setTop: function(element,t) {
	   	element = $(element);
    	element.style.top = t +"px";
	},
	setLeft: function(element,l) {
	   	element = $(element);
    	element.style.left = l +"px";
	},
	setSrc: function(element,src) {
    	element = $(element);
    	element.src = src; 
	},
	setHref: function(element,href) {
    	element = $(element);
    	element.href = href; 
	},
	setInnerHTML: function(element,content) {
		element = $(element);
		element.innerHTML = content;
	}
});

Array.prototype.removeDuplicates = function () {
    for(i = 0; i < this.length; i++){
        for(j = this.length-1; j>i; j--){        
            if(this[i][0] == this[j][0]){
                this.splice(j,1);
            }
        }
    }
};

Array.prototype.empty = function () {
	for(i = 0; i <= this.length; i++){
		this.shift();
	}
};

  
Ajax.Queue = Class.create({

	initialize: function() {
		this.requests = new Array();
		this.currentRequest = 0;
	},

	add: function(name, url, parameters) {
		this.requests.push({name: name, url: url, parameters:parameters});
	},
  
	start: function() {
		if(this.currentRequest<this.requests.length) {
			var request = this.requests[this.currentRequest];
			var options = {
				method: "post",
				parameters: request.parameters,
				onSuccess: function(transport) {
					this.currentRequest++;
					this.start();
				}.bind(this)
			}
			new Ajax.Request(request.url, options);
			Progress.setText(request.name);
			Progress.setStatus(Math.floor(100*(this.currentRequest/this.requests.length)));
		} else {
			Progress.setStatus(100);
			this.onComplete();
		}
	},
	
	onComplete: function() {
	}
	
});

function $RF(el, radioGroup) {
    if($(el).type && $(el).type.toLowerCase() == 'radio') {
        var radioGroup = $(el).name;
        var el = $(el).form;
    } else if ($(el).tagName.toLowerCase() != 'form') {
        return false;
    }
 
    var checked = $(el).getInputs('radio', radioGroup).find(
        function(re) {return re.checked;}
    );
    return (checked) ? $F(checked) : null;
}