3 * Widget defining the popup to choose date for the results
5 * @extends OO.ui.Widget
8 * @param {mw.rcfilters.dm.FilterGroup} model Group model for 'days'
9 * @param {Object} [config] Configuration object
11 mw
.rcfilters
.ui
.DatePopupWidget
= function MwRcfiltersUiDatePopupWidget( model
, config
) {
12 config
= config
|| {};
15 mw
.rcfilters
.ui
.ChangesLimitPopupWidget
.parent
.call( this, config
);
17 OO
.ui
.mixin
.LabelElement
.call( this, config
);
21 this.hoursValuePicker
= new mw
.rcfilters
.ui
.ValuePickerWidget(
24 classes
: [ 'mw-rcfilters-ui-datePopupWidget-hours' ],
25 label
: mw
.msg( 'rcfilters-hours-title' ),
26 itemFilter: function ( itemModel
) { return Number( itemModel
.getParamName() ) < 1; }
29 this.daysValuePicker
= new mw
.rcfilters
.ui
.ValuePickerWidget(
32 classes
: [ 'mw-rcfilters-ui-datePopupWidget-days' ],
33 label
: mw
.msg( 'rcfilters-days-title' ),
34 itemFilter: function ( itemModel
) { return Number( itemModel
.getParamName() ) >= 1; }
39 this.hoursValuePicker
.connect( this, { choose
: [ 'emit', 'days' ] } );
40 this.daysValuePicker
.connect( this, { choose
: [ 'emit', 'days' ] } );
44 .addClass( 'mw-rcfilters-ui-datePopupWidget' )
47 .addClass( 'mw-rcfilters-ui-datePopupWidget-title' ),
48 this.hoursValuePicker
.$element
,
49 this.daysValuePicker
.$element
55 OO
.inheritClass( mw
.rcfilters
.ui
.DatePopupWidget
, OO
.ui
.Widget
);
56 OO
.mixinClass( mw
.rcfilters
.ui
.DatePopupWidget
, OO
.ui
.mixin
.LabelElement
);
62 * @param {string} name Item name
64 * A days item was chosen