//(c) 2005 Sam Stephenson <sam@conio.net>
//note: this is a stripped down version of prototype, to be used with moo.fx by mad4milk (http://moofx.mad4milk.net).

var Class = {
    create: function() {
	    return function() {
	        this.initialize.apply(this, arguments);
        }
    }
}
Object.extend = function(destination, source) {
    for (property in source) {
    	destination[property] = source[property];
    }
    return destination;
}
Function.prototype.bind = function(object) {
    var __method = this;
    return function() {
	    return __method.apply(object, arguments);
    }
}
function get(id) {
    return document.getElementById(id);
}
if (!window.Element) {
    var Element = new Object();
}
Object.extend(Element, {
    hasClass: function(element, className) {
	    element = get(element);
	    if (!element) return;
	    var a = element.className.split(' ');
	    for (var i = 0; i < a.length; i++) {
	        if (a[i] == className) return true;
	    }
        return false;
    },
    addClass: function(element, className) {
	    element = get(element);
	    Element.removeClassName(element, className);
        element.className += ' ' + className;
    },
    removeClass: function(element, className) {
	    element = get(element);
        if (!element) return;
	    var newClassName = '';
        var a = element.className.split(' ');
	    for (var i = 0; i < a.length; i++) {
	        if (a[i] != className) {
		        if (i > 0) newClassName += ' ';
		        newClassName += a[i];
	        }
        }
        element.className = newClassName;
    }
});
