X-Git-Url: https://git.heureux-cyclage.org/?p=lhc%2Fweb%2Fwiklou.git;a=blobdiff_plain;f=resources%2Fsrc%2Fmediawiki.rcfilters%2Fui%2Fmw.rcfilters.ui.FilterWrapperWidget.js;h=a748063461e53e3469c8cc1b39a717ebad4238c1;hp=b7ebf3423ab6287c8af51838de1b0c09f5435a23;hb=ebc36b75b87b9752a12c25d41a3619faa7d2715e;hpb=2dd58ade75d15a5895c0c010e17b6f729a0f72fe diff --git a/resources/src/mediawiki.rcfilters/ui/mw.rcfilters.ui.FilterWrapperWidget.js b/resources/src/mediawiki.rcfilters/ui/mw.rcfilters.ui.FilterWrapperWidget.js index b7ebf3423a..a748063461 100644 --- a/resources/src/mediawiki.rcfilters/ui/mw.rcfilters.ui.FilterWrapperWidget.js +++ b/resources/src/mediawiki.rcfilters/ui/mw.rcfilters.ui.FilterWrapperWidget.js @@ -8,11 +8,13 @@ * @constructor * @param {mw.rcfilters.Controller} controller Controller * @param {mw.rcfilters.dm.FiltersViewModel} model View model + * @param {mw.rcfilters.dm.SavedQueriesModel} savedQueriesModel Saved queries model * @param {Object} [config] Configuration object * @cfg {Object} [filters] A definition of the filter groups in this list * @cfg {jQuery} [$overlay] A jQuery object serving as overlay for popups */ - mw.rcfilters.ui.FilterWrapperWidget = function MwRcfiltersUiFilterWrapperWidget( controller, model, config ) { + mw.rcfilters.ui.FilterWrapperWidget = function MwRcfiltersUiFilterWrapperWidget( controller, model, savedQueriesModel, config ) { + var $bottom; config = config || {}; // Parent @@ -22,18 +24,48 @@ this.controller = controller; this.model = model; + this.queriesModel = savedQueriesModel; this.$overlay = config.$overlay || this.$element; this.filterTagWidget = new mw.rcfilters.ui.FilterTagMultiselectWidget( this.controller, this.model, + this.queriesModel, { $overlay: this.$overlay } ); + this.liveUpdateButton = new mw.rcfilters.ui.LiveUpdateButtonWidget( + this.controller + ); + // Initialize this.$element - .addClass( 'mw-rcfilters-ui-filterWrapperWidget' ) - .append( this.filterTagWidget.$element ); + .addClass( 'mw-rcfilters-ui-filterWrapperWidget' ); + + if ( mw.config.get( 'wgStructuredChangeFiltersEnableSaving' ) ) { + this.savedLinksListWidget = new mw.rcfilters.ui.SavedLinksListWidget( + this.controller, + this.queriesModel, + { $overlay: this.$overlay } + ); + + this.$element.append( + this.savedLinksListWidget.$element + ); + + } + + $bottom = $( '
' ) + .addClass( 'mw-rcfilters-ui-filterWrapperWidget-bottom' ); + + if ( mw.config.get( 'wgStructuredChangeFiltersEnableLiveUpdate' ) ) { + $bottom.append( this.liveUpdateButton.$element ); + } + + this.$element.append( + this.filterTagWidget.$element, + $bottom + ); }; /* Initialization */