diff options
author | mistic100 <mistic@piwigo.org> | 2014-08-23 10:24:55 +0000 |
---|---|---|
committer | mistic100 <mistic@piwigo.org> | 2014-08-23 10:24:55 +0000 |
commit | 78d95a8a144f24e420933820e55004d44ecff81e (patch) | |
tree | d4f171ad5a620c30753dec01899b2c6405bc7343 /admin/themes/default/js/doubleSlider.js | |
parent | 9c9f8548fc68038a206f3cf5ca551ec930019405 (diff) |
create a mini jquery plugin for sliders on batch manager + async load
git-svn-id: http://piwigo.org/svn/trunk@29249 68402e56-0260-453c-a942-63ccdbb3a9ee
Diffstat (limited to 'admin/themes/default/js/doubleSlider.js')
-rw-r--r-- | admin/themes/default/js/doubleSlider.js | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/admin/themes/default/js/doubleSlider.js b/admin/themes/default/js/doubleSlider.js new file mode 100644 index 000000000..490331feb --- /dev/null +++ b/admin/themes/default/js/doubleSlider.js @@ -0,0 +1,43 @@ +(function($){ + +/** + * OPTIONS: + * values {mixed[]} + * selected {object} min and max + * text {string} + */ +$.fn.pwgDoubleSlider = function(options) { + var that = this; + + function onChange(e, ui) { + that.find('[data-input=min]').val(options.values[ui.values[0]]); + that.find('[data-input=max]').val(options.values[ui.values[1]]); + + that.find('.slider-info').html(sprintf( + options.text, + options.values[ui.values[0]], + options.values[ui.values[1]] + )); + } + + var slider = this.find('.slider-slider').slider({ + range: true, + min: 0, + max: options.values.length - 1, + values: [ + options.values.indexOf(options.selected.min), + options.values.indexOf(options.selected.max) + ], + slide: onChange, + change: onChange + }); + + this.find('.slider-choice').on('click', function(){ + slider.slider('values', 0, options.values.indexOf($(this).data('min'))); + slider.slider('values', 1, options.values.indexOf($(this).data('max'))); + }); + + return this; +}; + +}(jQuery));
\ No newline at end of file |