From 193fd0b528b5de3f7a9c690b9c7ec215d79c80ec Mon Sep 17 00:00:00 2001 From: Maik Vlcek Date: Wed, 13 May 2009 18:41:41 +0000 Subject: [PATCH] - disabled attribute now fully supported by input type=image and select multiple=multiple --- .../1.2/base/cfe.replace.autostart.js | 103 +++++++++++------- cfe/mootools/1.2/modules/cfe.module.image.js | 12 ++ .../1.2/modules/cfe.module.select_multiple.js | 15 ++- 3 files changed, 88 insertions(+), 42 deletions(-) diff --git a/cfe/mootools/1.2/base/cfe.replace.autostart.js b/cfe/mootools/1.2/base/cfe.replace.autostart.js index f3c3269..0184099 100644 --- a/cfe/mootools/1.2/base/cfe.replace.autostart.js +++ b/cfe/mootools/1.2/base/cfe.replace.autostart.js @@ -76,7 +76,27 @@ window.addEvent('domready', function() $("chb4").toggleDisabled(); }); - /* standalone elements + $("trigger2").addEvent("click", function(e){ + e.stop(); + $("sel-norm3").toggleDisabled(); + }); + + $("trigger3").addEvent("click", function(e){ + e.stop(); + $("sel-mult2").toggleDisabled(); + }); + + $("triggertxt").addEvent("click", function(e){ + e.stop(); + $("input4").toggleDisabled(); + }); + + $("triggerta").addEvent("click", function(e){ + e.stop(); + $("textarea2").toggleDisabled(); + }); + + /* standalone elements */ var uli = new Element("ul"); $('standalone').adopt(uli); @@ -138,45 +158,46 @@ window.addEvent('domready', function() li = new Element("li").adopt(file.getFull()); uli.adopt(li); - var sel = new cfe.module.select({ - instanceID: 106, - label: "Standalone Select", - name: "selectStandalone", - options: { - opt1: { - label:"Option A" - }, - opt2: { - label: "Option B", - selected: true - }, - opt3: { - label: "Option C" - } - } - }); - li = new Element("li").adopt(sel.getFull()); - uli.adopt(li); - - var selm = new cfe.module.select_multiple({ - instanceID: 107, - label: "Standalone Select Multipl", - name: "selectMultipleStandalone", - options: { - opt1: { - label:"Option A", - selected: true - }, - opt2: { - label: "Option B" - }, - opt3: { - label: "Option C" - } - } - }); - li = new Element("li").adopt(selm.getFull()); - uli.adopt(li); +// still a few bugs to fix +// var sel = new cfe.module.select({ +// instanceID: 106, +// label: "Standalone Select", +// name: "selectStandalone", +// options: { +// opt1: { +// label:"Option A" +// }, +// opt2: { +// label: "Option B", +// selected: true +// }, +// opt3: { +// label: "Option C" +// } +// } +// }); +// li = new Element("li").adopt(sel.getFull()); +// uli.adopt(li); +// +// var selm = new cfe.module.select_multiple({ +// instanceID: 107, +// label: "Standalone Select Multipl", +// name: "selectMultipleStandalone", +// options: { +// opt1: { +// label:"Option A", +// selected: true +// }, +// opt2: { +// label: "Option B" +// }, +// opt3: { +// label: "Option C" +// } +// } +// }); +// li = new Element("li").adopt(selm.getFull()); +// uli.adopt(li); var submit = new cfe.module.submit({ instanceID: 108, @@ -185,6 +206,6 @@ window.addEvent('domready', function() }); li = new Element("li").adopt(submit.getFull()); uli.adopt(li); - */ + }); \ No newline at end of file diff --git a/cfe/mootools/1.2/modules/cfe.module.image.js b/cfe/mootools/1.2/modules/cfe.module.image.js index 9e7c6b3..f701c15 100644 --- a/cfe/mootools/1.2/modules/cfe.module.image.js +++ b/cfe/mootools/1.2/modules/cfe.module.image.js @@ -76,5 +76,17 @@ cfe.module.image = new Class({ this.parent(); this.clearState(); if(this.a.hasClass("F")) this.setState("F"); + }, + + enable: function() + { + this.parent(); + this.clearState(); + }, + + disable: function() + { + this.parent(); + this.setState("D"); } }); \ No newline at end of file diff --git a/cfe/mootools/1.2/modules/cfe.module.select_multiple.js b/cfe/mootools/1.2/modules/cfe.module.select_multiple.js index 1ff7df7..6c5ac7c 100644 --- a/cfe/mootools/1.2/modules/cfe.module.select_multiple.js +++ b/cfe/mootools/1.2/modules/cfe.module.select_multiple.js @@ -15,13 +15,26 @@ cfe.module.select_multiple = new Class({ scrolling: true, scrollSteps: 5 }, - + build: function() { this.a.addClass("jsSelectorMultiple jsSelectorMultiple"+this.options.instanceID); this.a.removeClass("jsSelector"); this.buildContainer(); + + this.o.addEvents({ + onDisable: function(){ + this.aliasOptions.getChildren().each(function(el){ + el.getChildren("input")[0].disable(); + }); + }.bind(this), + onEnable: function(){ + this.aliasOptions.getChildren().each(function(el){ + el.getChildren("input")[0].enable(); + }); + }.bind(this) + }); }, buildOption: function(el, index)