https://www.mediawiki.org/wiki/Special:Code/MediaWiki/114033

Revision: 114033
Author:   foxtrott
Date:     2012-03-16 21:51:51 +0000 (Fri, 16 Mar 2012)
Log Message:
-----------
value filter height; some refactoring

Modified Paths:
--------------
    trunk/extensions/SemanticResultFormats/Filtered/filters/SRF_FF_Value.php
    
trunk/extensions/SemanticResultFormats/Filtered/libs/ext.srf.filtered.value-filter.js
    
trunk/extensions/SemanticResultFormats/Filtered/skins/ext.srf.filtered.value-filter.css

Modified: 
trunk/extensions/SemanticResultFormats/Filtered/filters/SRF_FF_Value.php
===================================================================
--- trunk/extensions/SemanticResultFormats/Filtered/filters/SRF_FF_Value.php    
2012-03-16 20:39:04 UTC (rev 114032)
+++ trunk/extensions/SemanticResultFormats/Filtered/filters/SRF_FF_Value.php    
2012-03-16 21:51:51 UTC (rev 114033)
@@ -60,6 +60,10 @@
                        $ret['collapsible'] = trim($params['value filter 
collapsible']);
                }
 
+               if (  array_key_exists( 'value filter height', $params ) ) {
+                       $ret['height'] = trim($params['value filter height']);
+               }
+
                return $ret;
        }
 

Modified: 
trunk/extensions/SemanticResultFormats/Filtered/libs/ext.srf.filtered.value-filter.js
===================================================================
--- 
trunk/extensions/SemanticResultFormats/Filtered/libs/ext.srf.filtered.value-filter.js
       2012-03-16 20:39:04 UTC (rev 114032)
+++ 
trunk/extensions/SemanticResultFormats/Filtered/libs/ext.srf.filtered.value-filter.js
       2012-03-16 21:51:51 UTC (rev 114033)
@@ -83,6 +83,7 @@
                        var target = args.printout;
                        var switches = filtered.filtered( 'getFilterData', 
{filter: 'value', printout: target, configvar: 'switches'} );
                        var collapsible = filtered.filtered( 'getFilterData', 
{filter: 'value', printout: target, configvar: 'collapsible'} );
+                       var height = filtered.filtered( 'getFilterData', 
{filter: 'value', printout: target, configvar: 'height'} );
                        
                        // find distinct values and set visibility for all 
items that have
                        // some value for this printout
@@ -110,6 +111,39 @@
                        // insert the label of the printout this filter filters 
on
                        filtercontrols.append('<div 
class="filtered-value-label"><span>' + values[i]['printouts'][target]['label'] 
+ '</span></div>');
 
+                       if ( collapsible != null && ( collapsible == 
'collapsed' || collapsible == 'uncollapsed') ) {
+                               var showControl = $('<span 
class="filtered-value-show">[+]</span>');
+                               var hideControl = $('<span 
class="filtered-value-hide">[-]</span>');
+                               
+                               
+                               filtercontrols
+                               .prepend(showControl)
+                               .prepend(hideControl);
+                               
+                               filtercontrols = $('<div 
class="filtered-value-collapsible">')
+                               .appendTo(filtercontrols);
+                               
+                               showControl.click(function(){
+                                       filtercontrols.slideDown();
+                                       showControl.hide();
+                                       hideControl.show();
+                               });
+                               
+                               hideControl.click(function(){
+                                       filtercontrols.slideUp();
+                                       showControl.show();
+                                       hideControl.hide();
+                               });
+                               
+                               if ( collapsible == 'collapsed' ) {
+                                       hideControl.hide();
+                                       filtercontrols.slideUp(0);
+                               } else {
+                                       showControl.hide();
+                               }
+                               
+                       }
+
                        // set default config values
                        filtered.filtered( 'setFilterData', {filter: 'value', 
printout: target, configvar: 'use or', configvalue: true} );
                        
@@ -146,6 +180,15 @@
                                
                                filtercontrols.append( switchControls );
                        }
+                       
+                       if ( height != null ) {
+                               filtercontrols = $( '<div 
class="filtered-value-scrollable">' )
+                               .appendTo( filtercontrols );
+                               
+                               filtercontrols.height( height );
+                       }
+                       
+                       
                        var sortedDistinctValues = [];
                        
                        for ( var i in distinctValues ) {
@@ -174,39 +217,6 @@
                                
                        }
                        
-                       if ( collapsible != null && ( collapsible == 
'collapsed' || collapsible == 'uncollapsed') ) {
-                               var showControl = $('<span 
class="filtered-value-show">[+]</span>');
-                               var hideControl = $('<span 
class="filtered-value-hide">[-]</span>');
-                               
-                               showControl.click(function(){
-                                       
filtercontrols.children('.filtered-value-collapsible').slideDown();
-                                       showControl.hide();
-                                       hideControl.show();
-                               });
-                               
-                               hideControl.click(function(){
-                                       
filtercontrols.children('.filtered-value-collapsible').slideUp();
-                                       showControl.show();
-                                       hideControl.hide();
-                               });
-                               
-                               filtercontrols
-                               .prepend(showControl)
-                               .prepend(hideControl)
-                               
-                               
.children('.filtered-value-switches,.filtered-value-option')
-                               .wrapAll( '<div 
class="filtered-value-collapsible">' );
-                               
-                               if ( collapsible == 'collapsed' ) {
-                                       hideControl.hide();
-                                       
filtercontrols.children('.filtered-value-collapsible').slideUp(0);
-                               } else {
-                                       showControl.hide();
-                               }
-                               
-                               
-                       }
-
                        return this;
                },
                

Modified: 
trunk/extensions/SemanticResultFormats/Filtered/skins/ext.srf.filtered.value-filter.css
===================================================================
--- 
trunk/extensions/SemanticResultFormats/Filtered/skins/ext.srf.filtered.value-filter.css
     2012-03-16 20:39:04 UTC (rev 114032)
+++ 
trunk/extensions/SemanticResultFormats/Filtered/skins/ext.srf.filtered.value-filter.css
     2012-03-16 21:51:51 UTC (rev 114033)
@@ -50,4 +50,8 @@
        right: 0pt;
        text-align: center;
        cursor: pointer;
-}
\ No newline at end of file
+}
+
+.filtered-filters .filtered-value .filtered-value-scrollable { 
+       overflow: auto;
+}


_______________________________________________
MediaWiki-CVS mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-cvs

Reply via email to