diff options
author | Andreas Gohr <andi@splitbrain.org> | 2011-08-18 12:24:43 +0200 |
---|---|---|
committer | Andreas Gohr <andi@splitbrain.org> | 2011-08-18 12:24:43 +0200 |
commit | 02782d1287173f3981a008755958543c178de296 (patch) | |
tree | 040e5902d4f74dcfde5cfa35d0f43fc71d13a60e /lib/scripts/behaviour.js | |
parent | 20e3e8ebefec296327d39fb572b06d60c151c867 (diff) | |
download | dokuwiki-02782d1287173f3981a008755958543c178de296.tar.gz dokuwiki-02782d1287173f3981a008755958543c178de296.zip |
moved subscription javascript into behaviour
Diffstat (limited to 'lib/scripts/behaviour.js')
-rw-r--r-- | lib/scripts/behaviour.js | 36 |
1 files changed, 35 insertions, 1 deletions
diff --git a/lib/scripts/behaviour.js b/lib/scripts/behaviour.js index 6012e5d1d..0f69d5721 100644 --- a/lib/scripts/behaviour.js +++ b/lib/scripts/behaviour.js @@ -17,6 +17,7 @@ var dw_behaviour = { dw_behaviour.quickSelect(); dw_behaviour.checkWindowsShares(); dw_behaviour.initTocToggle(); + dw_behaviour.subscription(); }, /** @@ -108,8 +109,41 @@ var dw_behaviour = { }; setClicky(); - } + }, + /** + * Hide list subscription style if target is a page + * + * @author Adrian Lang <lang@cosmocode.de> + * @author Pierre Spring <pierre.spring@caillou.ch> + */ + subscription: function(){ + var $form, $list, $digest; + + $form = jQuery('#subscribe__form'); + if (0 === $form.length) return; + + $list = $form.find("input[name='sub_style'][value='list']"); + $digest = $form.find("input[name='sub_style'][value='digest']"); + + $form.find("input[name='sub_target']") + .click( + function () { + var $this = jQuery(this), show_list; + if (!$this.prop('checked')) { + return; + } + + show_list = $this.val().match(/:$/); + $list.parent().dw_toggle(show_list); + if (!show_list && $list.prop('checked')) { + $digest.prop('checked', 'checked'); + } + } + ) + .filter(':checked') + .click(); + } }; /** |