var CtSimpleStyler_Checkbox=Class.create({element:null,visual:null,checkedClass:'ctSimpleStyler-checkbox-checked',overClass:'ctSimpleStyler-checkbox-over',overCheckedClass:'ctSimpleStyler-checkbox-checked-over',pushClass:'ctSimpleStyler-checkbox-push',pushCheckedClass:'ctSimpleStyler-checkbox-checked-push',isPushed:false,initialize:function(htmlElement){this.element=$(htmlElement);this.visual=new Element('span',{'class':'ctSimpleStyler-checkbox'});if(this.element.checked){this.visual.addClassName(this.checkedClass);}
Element.insert(this.visual,{before:this.element});this.element.observe('change',this.update.bindAsEventListener(this));this.visual.observe('mousedown',this.down.bindAsEventListener(this));this.visual.observe('mouseup',this.up.bindAsEventListener(this));this.visual.observe('mouseover',this.over.bindAsEventListener(this));this.visual.observe('mouseout',this.out.bindAsEventListener(this));Event.observe(document,'mouseup',this.out.bindAsEventListener(this));},change:function(){this.reset();if(this.element.checked){this.visual.addClassName(this.checkedClass);}},down:function(){this.isPushed=true;this.reset();if(this.element.checked){this.visual.addClassName(this.pushCheckedClass);}else{this.visual.addClassName(this.pushClass);}},up:function(){this.isPushed=false;this.reset();if(this.element.checked){this.element.checked=false;this.visual.addClassName(this.overClass);}else{this.visual.addClassName(this.overCheckedClass);}},over:function(){this.reset();if(this.element.checked){if(this.isPushed){this.visual.addClassName(this.pushCheckedClass);}else{this.visual.addClassName(this.overCheckedClass);}}else{if(this.isPushed){this.visual.addClassName(this.pushClass);}else{this.visual.addClassName(this.overClass);}}},out:function(){this.reset();if(this.element.checked){this.visual.addClassName(this.checkedClass);}},reset:function(){this.visual.removeClassName(this.checkedClass);this.visual.removeClassName(this.overClass);this.visual.removeClassName(this.overCheckedClass);this.visual.removeClassName(this.pushClass);this.visual.removeClassName(this.pushCheckedClass);}});var CtSimpleStyler_Select=Class.create({element:null,visual:null,visualContent:null,initialize:function(htmlElement){this.element=$(htmlElement);this.element.addClassName(this.element.readAttribute('rel'));var elementClasses=this.element.className;this.element.addClassName('ctSimpleStyler-element-select');this.visualContent=new Element('span',{'class':'ctSimpleStyler-select-content'}).update(this.element.options[this.element.selectedIndex].innerHTML);this.visual=new Element('span',{'class':'ctSimpleStyler-select '+elementClasses}).update(this.visualContent);Element.insert(this.element,{before:this.visual});this.element.observe('change',this.update.bindAsEventListener(this));},update:function(){this.visualContent.update(this.element.options[this.element.selectedIndex].innerHTML);}});var CtSimpleStyler_Factory=new(Class.create({refresh:function(htmlElement){var elements=[];if(htmlElement){elements=$(htmlElement).select('input[type=checkbox].ctSimpleStyler');}else{elements=$$('input[type=checkbox].ctSimpleStyler');}
var i;for(i=0;i<elements.length;i++){elements[i].removeClassName('ctSimpleStyler');new CtSimpleStyler_Checkbox(elements[i]);}
if(htmlElement){elements=$(htmlElement).select('select.ctSimpleStyler');}else{elements=$$('select.ctSimpleStyler');}
for(i=0;i<elements.length;i++){elements[i].removeClassName('ctSimpleStyler');new CtSimpleStyler_Select(elements[i]);}}}));CtPage.registerScript('CtSimpleStyler');
