22{ include file= ' include/datepicker.inc.tpl' }
33{ include file= ' include/colorbox.inc.tpl' }
44{ include file= ' include/add_album.inc.tpl' }
5+ { combine_script id= ' jquery.ui.slider' require= ' jquery.ui' load= ' footer' path= ' themes/default/js/ui/minified/jquery.ui.slider.min.js' }
6+ { combine_css path= " themes/default/js/ui/theme/jquery.ui.slider.css" }
57
68{ footer_script} {literal }
79 pwg_initialization_datepicker("#date_creation_day", "#date_creation_month", "#date_creation_year", "#date_creation_linked_date", "#date_creation_action_set");
@@ -387,16 +389,6 @@ $(document).ready(function() {
387389 filter_enable(filter);
388390 $(this).attr(" value" , -1);
389391 } );
390-
391- $("select[name='filter_dimension']").change(function () {
392- $(" span[id^='filter_dimension_']" ).hide();
393- $(" span#filter_dimension_" + $(this).attr(" value" )).show();
394- } );
395-
396- $("a.ratio-choice").click(function() {
397- $(" input[name='filter_ratio_min']" ).val($(this).data(" min" ));
398- $(" input[name='filter_ratio_max']" ).val($(this).data(" max" ));
399- } );
400392
401393 function filter_disable(filter) {
402394 /* hide the filter line */
@@ -493,11 +485,67 @@ $(document).ready(function() {
493485 } );
494486 }
495487
496- checkPermitAction()
488+ checkPermitAction();
489+ {/literal }
490+
491+ /* dimensions sliders */
492+ $("#filter_dimension_width_slider").slider({ ldelim }
493+ range: true,
494+ min: { $dimensions .bounds.min_width} ,
495+ max: { $dimensions .bounds.max_width} ,
496+ values: [{ $dimensions .selected.min_width} , { $dimensions .selected.max_width} ],
497+ slide: function(event, ui) { ldelim }
498+ $("input[name='filter_dimension_min_width']").val(ui.values[0]);
499+ $("input[name='filter_dimension_max_width']").val(ui.values[1]);
500+ $("#filter_dimension_width_info").html(sprintf("{ ' between %d and %d pixels' |@translate} ", ui.values[0], ui.values[1]));
501+ },
502+ change: function(event, ui) { ldelim }
503+ $("input[name='filter_dimension_min_width']").val(ui.values[0]);
504+ $("input[name='filter_dimension_max_width']").val(ui.values[1]);
505+ $("#filter_dimension_width_info").html(sprintf("{ ' between %d and %d pixels' |@translate} ", ui.values[0], ui.values[1]));
506+ }
507+ });
508+ $("#filter_dimension_height_slider").slider({ ldelim }
509+ range: true,
510+ min: { $dimensions .bounds.min_height} ,
511+ max: { $dimensions .bounds.max_height} ,
512+ values: [{ $dimensions .selected.min_height} , { $dimensions .selected.max_height} ],
513+ slide: function(event, ui) { ldelim }
514+ $("input[name='filter_dimension_min_height']").val(ui.values[0]);
515+ $("input[name='filter_dimension_max_height']").val(ui.values[1]);
516+ $("#filter_dimension_height_info").html(sprintf("{ ' between %d and %d pixels' |@translate} ", ui.values[0], ui.values[1]));
517+ },
518+ change: function(event, ui) { ldelim }
519+ $("input[name='filter_dimension_min_height']").val(ui.values[0]);
520+ $("input[name='filter_dimension_max_height']").val(ui.values[1]);
521+ $("#filter_dimension_height_info").html(sprintf("{ ' between %d and %d pixels' |@translate} ", ui.values[0], ui.values[1]));
522+ }
523+ });
524+ $("#filter_dimension_ratio_slider").slider({ ldelim }
525+ range: true,
526+ step: 0.01,
527+ min: { $dimensions .bounds.min_ratio} ,
528+ max: { $dimensions .bounds.max_ratio} ,
529+ values: [{ $dimensions .selected.min_ratio} , { $dimensions .selected.max_ratio} ],
530+ slide: function(event, ui) { ldelim }
531+ $("input[name='filter_dimension_min_ratio']").val(ui.values[0]);
532+ $("input[name='filter_dimension_max_ratio']").val(ui.values[1]);
533+ $("#filter_dimension_ratio_info").html(sprintf("{ ' between %.2f and %.2f' |@translate} ", ui.values[0], ui.values[1]));
534+ },
535+ change: function(event, ui) { ldelim }
536+ $("input[name='filter_dimension_min_ratio']").val(ui.values[0]);
537+ $("input[name='filter_dimension_max_ratio']").val(ui.values[1]);
538+ $("#filter_dimension_ratio_info").html(sprintf("{ ' between %.2f and %.2f' |@translate} ", ui.values[0], ui.values[1]));
539+ }
540+ });
541+
542+ $("a.dimensions-choice").click(function() { ldelim }
543+ $("#filter_dimension_"+ $(this).data("type") +"_slider").slider("values", 0, $(this).data("min"));
544+ $("#filter_dimension_"+ $(this).data("type") +"_slider").slider("values", 1, $(this).data("max"));
545+ });
497546});
498547
499-
500- {/literal } { /footer_script}
548+ { /footer_script}
501549
502550<div id =" batchManagerGlobal" >
503551
@@ -558,22 +606,31 @@ $(document).ready(function() {
558606 <a href =" #" class =" removeFilter" title =" remove this filter" ><span >[x]</span ></a >
559607 <input type =" checkbox" name =" filter_dimension_use" class =" useFilterCheckbox" { if isset($filter .dimension)} checked =" checked" { /if } >
560608 { ' Dimensions' |@translate} :
561- <label >{ ' Minimum width' |@translate} <input type =" text" name =" filter_dimension_min_width" value =" { $filter .dimension.min_width} " size =" 4" ></label > —
562- <label >{ ' Maximum width' |@translate} <input type =" text" name =" filter_dimension_max_width" value =" { $filter .dimension.max_width} " size =" 4" ></label > —
563- <label >{ ' Minimum height' |@translate} <input type =" text" name =" filter_dimension_min_height" value =" { $filter .dimension.min_height} " size =" 4" ></label > —
564- <label >{ ' Maximum height' |@translate} <input type =" text" name =" filter_dimension_max_height" value =" { $filter .dimension.max_height} " size =" 4" ></label >
565- </li >
566-
567- <li id =" filter_ratio" { if ! isset($filter .ratio)} style =" display :none " { /if } >
568- <a href =" #" class =" removeFilter" title =" remove this filter" ><span >[x]</span ></a >
569- <input type =" checkbox" name =" filter_ratio_use" class =" useFilterCheckbox" { if isset($filter .ratio)} checked =" checked" { /if } >
570- { ' Ratio' |@translate} :
571- <label >{ ' Minimum' |@translate} <input type =" text" name =" filter_ratio_min" value =" { $filter .ratio.min} " size =" 4" ></label > —
572- <label >{ ' Maximum' |@translate} <input type =" text" name =" filter_ratio_max" value =" { $filter .ratio.max} " size =" 4" ></label > —
573- <a class =" ratio-choice" data-min =" " data-max =" 0.95" >{ ' Portrait' |@translate} </a > |
574- <a class =" ratio-choice" data-min =" 0.95" data-max =" 1.05" >{ ' square' |@translate} </a > |
575- <a class =" ratio-choice" data-min =" 1.05" data-max =" 2.5" >{ ' Landscape' |@translate} </a > |
576- <a class =" ratio-choice" data-min =" 2.5" data-max =" " >{ ' Panorama' |@translate} </a >
609+
610+ <blockquote >
611+ { ' Width' |@translate} : <span id =" filter_dimension_width_info" >{ ' between %d and %d pixels' |@translate|sprintf:$dimensions .selected.min_width:$dimensions .selected.max_width} </span >
612+ | <a class =" dimensions-choice" data-type =" width" data-min =" { $dimensions .bounds.min_width} " data-max =" { $dimensions .bounds.max_width} " >{ ' Reset' |@translate} </a >
613+ <div id =" filter_dimension_width_slider" ></div >
614+
615+ { ' Height' |@translate} : <span id =" filter_dimension_height_info" >{ ' between %d and %d pixels' |@translate|sprintf:$dimensions .selected.min_height:$dimensions .selected.max_height} </span >
616+ | <a class =" dimensions-choice" data-type =" height" data-min =" { $dimensions .bounds.min_height} " data-max =" { $dimensions .bounds.max_height} " >{ ' Reset' |@translate} </a >
617+ <div id =" filter_dimension_height_slider" ></div >
618+
619+ { ' Ratio' |@translate} : <span id =" filter_dimension_ratio_info" >{ ' between %.2f and %.2f' |@translate|sprintf:$dimensions .selected.min_ratio:$dimensions .selected.max_ratio} </span >
620+ | <a class =" dimensions-choice" data-type =" ratio" data-min =" { $dimensions .bounds.min_ratio} " data-max =" 0.95" >{ ' Portrait' |@translate} </a >
621+ | <a class =" dimensions-choice" data-type =" ratio" data-min =" 0.95" data-max =" 1.05" >{ ' square' |@translate} </a >
622+ | <a class =" dimensions-choice" data-type =" ratio" data-min =" 1.05" data-max =" 2.5" >{ ' Landscape' |@translate} </a >
623+ | <a class =" dimensions-choice" data-type =" ratio" data-min =" 2.5" data-max =" { $dimensions .bounds.max_ratio} " >{ ' Panorama' |@translate} </a >
624+ | <a class =" dimensions-choice" data-type =" ratio" data-min =" { $dimensions .bounds.min_ratio} " data-max =" { $dimensions .bounds.max_ratio} " >{ ' Reset' |@translate} </a >
625+ <div id =" filter_dimension_ratio_slider" ></div >
626+ </blockquote >
627+
628+ <input type =" hidden" name =" filter_dimension_min_width" value =" { $dimensions .selected.min_width} " >
629+ <input type =" hidden" name =" filter_dimension_max_width" value =" { $dimensions .selected.max_width} " >
630+ <input type =" hidden" name =" filter_dimension_min_height" value =" { $dimensions .selected.min_height} " >
631+ <input type =" hidden" name =" filter_dimension_max_height" value =" { $dimensions .selected.max_height} " >
632+ <input type =" hidden" name =" filter_dimension_min_ratio" value =" { $dimensions .selected.min_ratio} " >
633+ <input type =" hidden" name =" filter_dimension_max_ratio" value =" { $dimensions .selected.max_ratio} " >
577634 </li >
578635 </ul >
579636
@@ -586,7 +643,6 @@ $(document).ready(function() {
586643 <option value =" filter_tags" { if isset($filter .tags)} disabled =" disabled" { /if } >{ ' Tags' |@translate} </option >
587644 <option value =" filter_level" { if isset($filter .level)} disabled =" disabled" { /if } >{ ' Privacy level' |@translate} </option >
588645 <option value =" filter_dimension" { if isset($filter .dimension)} disabled =" disabled" { /if } >{ ' Dimensions' |@translate} </option >
589- <option value =" filter_ratio" { if isset($filter .ratio)} disabled =" disabled" { /if } >{ ' Ratio' |@translate} </option >
590646 </select >
591647 <a id =" removeFilters" href =" " >{ ' Remove all filters' |@translate} </a >
592648 </p >
0 commit comments