https://www.mediawiki.org/wiki/Special:Code/MediaWiki/114416
Revision: 114416
Author: foxtrott
Date: 2012-03-21 22:11:56 +0000 (Wed, 21 Mar 2012)
Log Message:
-----------
filtered format: printout parameter 'distance filter initial value'; cleaning up
Modified Paths:
--------------
trunk/extensions/SemanticResultFormats/Filtered/filters/SRF_FF_Distance.php
trunk/extensions/SemanticResultFormats/Filtered/libs/ext.srf.filtered.distance-filter.js
Modified:
trunk/extensions/SemanticResultFormats/Filtered/filters/SRF_FF_Distance.php
===================================================================
--- trunk/extensions/SemanticResultFormats/Filtered/filters/SRF_FF_Distance.php
2012-03-21 22:01:14 UTC (rev 114415)
+++ trunk/extensions/SemanticResultFormats/Filtered/filters/SRF_FF_Distance.php
2012-03-21 22:11:56 UTC (rev 114416)
@@ -165,7 +165,12 @@
if ( array_key_exists( 'distance filter collapsible', $params )
) {
$ret['collapsible'] = trim($params['distance filter
collapsible']);
}
+
+ if ( array_key_exists( 'distance filter initial value', $params
) ) {
+ $ret['initial value'] = trim( $params['distance filter
initial value'] );
+ }
+
return $ret;
}
Modified:
trunk/extensions/SemanticResultFormats/Filtered/libs/ext.srf.filtered.distance-filter.js
===================================================================
---
trunk/extensions/SemanticResultFormats/Filtered/libs/ext.srf.filtered.distance-filter.js
2012-03-21 22:01:14 UTC (rev 114415)
+++
trunk/extensions/SemanticResultFormats/Filtered/libs/ext.srf.filtered.distance-filter.js
2012-03-21 22:11:56 UTC (rev 114416)
@@ -16,16 +16,12 @@
function update( filtered, filterDistance, target ) {
- var values =
filtered.data('ext.srf.filtered')['values'];
+ for ( i in
filtered.data('ext.srf.filtered')['values'] ) {
- for ( i in values ) {
-
- var distance =
values[i]['data']['distance-filter'];
-
filtered.filtered(
'voteItemVisibilityAndUpdate', {
'filter': 'value',
'printout' : target,
- 'visible': distance <=
filterDistance,
+ 'visible':
values[i]['data']['distance-filter'] <= filterDistance,
'item': i
});
@@ -36,22 +32,29 @@
var filtered = this;
-
-
var target = args.printout;
var values = this.data('ext.srf.filtered')['values'];
var data =
this.data('ext.srf.filtered')['data']['filterdata']['distance'][target];
+ var iniValue = data['initial value']?data['initial
value']:data['max'];
+
+ for ( var i in values ) {
+
+ filtered.filtered( 'voteItemVisibility', {
+ 'filter': 'value',
+ 'printout' : target,
+ 'visible':
values[i]['data']['distance-filter'] <= iniValue,
+ 'item': i
+ });
+
+ }
+
// build filter controls
var filtercontrols =
this.children('.filtered-filters').children('.filtered-distance');
- // insert the label of the printout this filter filters
on
-
- for ( var i in values ) break;
-
var readoutAndSlider = $('<tr>');
- var readout = $('<div
class="filtered-distance-readout">' + data['max'] + data['unit'] + '</div>' );
+ var readout = $('<div
class="filtered-distance-readout">' + iniValue + data['unit'] + '</div>' );
var slider = $('<div
class="filtered-distance-slider">');
var readoutTD = $('<td
class="filtered-distance-readout-cell">');
@@ -75,7 +78,7 @@
slider.slider({
animate: true,
max: data['max'],
- value: data['max'],
+ value: iniValue,
slide: function(event, ui) {
readout.empty().append( ui.value +
data['unit'] );
},
@@ -84,114 +87,6 @@
}
});
-// // 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} );
-//
-//
-// // insert switches
-// if ( switches != null && switches.length > 0 ) {
-//
-// var switchControls = $('<div
class="filtered-value-switches">');
-//
-// if ( $.inArray('and or', switches) >= 0 ) {
-//
-// var andorControl = $('<div
class="filtered-value-andor">');
-// var andControl = $('<input type="radio"
name="filtered-value-andor ' +
-// target + '"
class="filtered-value-andor ' + target + '" value="and">');
-//
-// var orControl = $('<input type="radio"
name="filtered-value-andor ' +
-// target + '"
class="filtered-value-andor ' + target + '" value="or" checked>');
-//
-// andControl
-// .add( orControl )
-// .change(function() {
-// filtered.filtered(
'setFilterData', {filter: 'value', printout: target, configvar: 'use or',
configvalue: orControl.is(':checked')} );
-// update( filtered,
filtercontrols, target );
-// });
-//
-// andorControl
-// .append( orControl )
-// .append(' OR ')
-// .append( andControl )
-// .append(' AND ')
-// .appendTo( switchControls );
-//
-// }
-//
-// filtercontrols.append( switchControls );
-// }
-//
-// if ( height != null ) {
-// filtercontrols = $( '<div
class="filtered-value-scrollable">' )
-// .appendTo( filtercontrols );
-//
-// filtercontrols.height( height );
-// }
-//
-//
-// var sortedDistinctValues = [];
-//
-// for ( var i in distinctValues ) {
-// sortedDistinctValues.push(i);
-// }
-//
-// sortedDistinctValues.sort();
-//
-// // insert options (checkboxes and labels) and attach
event handlers
-// // TODO: Do we need to wrap these in a form?
-// for ( var j in sortedDistinctValues ) {
-// var option = $('<div
class="filtered-value-option">');
-// var checkbox = $('<input type="checkbox"
class="filtered-value-value" value="' + sortedDistinctValues[j] + '" >');
-//
-// // attach event handler
-// checkbox.change(function( evt ){
-// update(filtered, filtercontrols,
target);
-// });
-//
-// option
-// .append(checkbox)
-// .append(sortedDistinctValues[j]);
-//
-// filtercontrols
-// .append(option);
-//
-// }
return this;
},
_______________________________________________
MediaWiki-CVS mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-cvs