aboutsummaryrefslogtreecommitdiffstats
path: root/admin/themes/default/js
diff options
context:
space:
mode:
Diffstat (limited to 'admin/themes/default/js')
-rw-r--r--admin/themes/default/js/batchManagerGlobal.js4
-rw-r--r--admin/themes/default/js/doubleSlider.js43
2 files changed, 47 insertions, 0 deletions
diff --git a/admin/themes/default/js/batchManagerGlobal.js b/admin/themes/default/js/batchManagerGlobal.js
index 12d5987ac..8ebf7295d 100644
--- a/admin/themes/default/js/batchManagerGlobal.js
+++ b/admin/themes/default/js/batchManagerGlobal.js
@@ -43,6 +43,10 @@ $("#removeFilters").click(function() {
return false;
});
+$('[data-slider=widths]').pwgDoubleSlider(sliders.widths);
+$('[data-slider=heights]').pwgDoubleSlider(sliders.heights);
+$('[data-slider=ratios]').pwgDoubleSlider(sliders.ratios);
+$('[data-slider=filesizes]').pwgDoubleSlider(sliders.filesizes);
/* ********** Thumbs */
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