var SelectStyler = new Class({
	initialize: function() {
    	inputs = $$('select');
    	var span = Array(), textnode, option, active;;
    	for (a = 0; a < inputs.length; a++) {
			inputs[a].className="styled";
    		option = inputs[a].getElementsByTagName("option");
			active = option[0].childNodes[0].nodeValue;
			textnode = document.createTextNode(active);
			for(b = 0; b < option.length; b++) {
				if(option[b].selected == true) {
					textnode = document.createTextNode(option[b].childNodes[0].nodeValue);
				}
			}
			span[a] = document.createElement("span");
			span[a].className = "select";
			span[a].id = "select" + inputs[a].name;
			span[a].appendChild(textnode);
			inputs[a].parentNode.insertBefore(span[a], inputs[a]);
			inputs[a].onchange = this.choose;
	    }
    },
	choose: function() {
		option = this.getElementsByTagName("option");
		for(d = 0; d < option.length; d++) {
			if(option[d].selected == true) {
				$("select" + this.name).childNodes[0].nodeValue = option[d].childNodes[0].nodeValue;
			}
		}
	}
});

var BoxStyler = new Class({
	initialize: function() {
    	inputs = $$('input[type=radio], input[type=checkbox]');
    	var span = Array();
    	for (a = 0; a < inputs.length; a++) {
    		span[a] = document.createElement("span");
			if (inputs[a].type=="radio") {
				span[a].className = "radio";
			}else{
				span[a].className = "check";
			}
			if (inputs[a].checked == true) {
				span[a].className = span[a].className + " checked";
			}
			span[a].id = "chkbox" + a;
			span[a].wraps(inputs[a]);
			inputs[a].onchange = this.clicky;
	    }
    },
    clicky: function() {
    	for (b = 0; b < inputs.length; b++) {
    		if (inputs[b].checked==true) {
    			if (inputs[b].type == "radio") {
    				$('chkbox'+b).className = "radio checked";
    			}else{
    				$('chkbox'+b).className = "check checked";
    			}
			}else{
    			if (inputs[b].type == "radio") {
    				$('chkbox'+b).className = "radio";
    			}else{
    				$('chkbox'+b).className = "check";
    			}
			}
	    }
    }
});

var OnSubmitDisabler = new Class({
	initialize: function() {
    	forms = $$('form');
    	for (a = 0; a < forms.length; a++) {
			button = forms[a].getElements('input[type="submit"]');
			button.set('id','button'+a);
			forms[a].addEvent('submit', function(e) {
				var loader = new Element('p', {'class': 'loader'});
				loader.appendText("Laddar...");
				button[0].parentNode.insertBefore(loader,button[0]);
				button[0].setStyle('display', 'none');
			});
	    }
    }
});

window.addEvent('domready', function() {
	var myImages = new Asset.images(['/img/ajax-box.gif', '/img/ajax-fieldset.gif', '/img/checkbox-on.png', '/img/checkbox-off.png']);
	var ReplaceSelects = new SelectStyler();
	var ReplaceBoxes = new BoxStyler();
	var onSubmitDisable = new OnSubmitDisabler();
});