X-Git-Url: https://git.heureux-cyclage.org/?a=blobdiff_plain;f=resources%2Fsrc%2Fmediawiki.rcfilters%2Fmw.rcfilters.UriProcessor.js;h=5344af4a03c8088e9ecca72c6202b1bf22361deb;hb=1c7c9bdf1fc5d57434aadeffff749807f042df24;hp=7bb0a222c41ca887dbfc21aed3a926a59e1bf433;hpb=3b7f4539639b3899e246e245df481882f81f9340;p=lhc%2Fweb%2Fwiklou.git diff --git a/resources/src/mediawiki.rcfilters/mw.rcfilters.UriProcessor.js b/resources/src/mediawiki.rcfilters/mw.rcfilters.UriProcessor.js index 7bb0a222c4..5344af4a03 100644 --- a/resources/src/mediawiki.rcfilters/mw.rcfilters.UriProcessor.js +++ b/resources/src/mediawiki.rcfilters/mw.rcfilters.UriProcessor.js @@ -1,12 +1,22 @@ -( function ( mw, $ ) { +( function () { /* eslint no-underscore-dangle: "off" */ /** * URI Processor for RCFilters * + * @class + * + * @constructor * @param {mw.rcfilters.dm.FiltersViewModel} filtersModel Filters view model + * @param {Object} [config] Configuration object + * @cfg {boolean} [normalizeTarget] Dictates whether or not to go through the + * title normalization to separate title subpage/parts into the target= url + * parameter */ - mw.rcfilters.UriProcessor = function MwRcfiltersController( filtersModel ) { + mw.rcfilters.UriProcessor = function MwRcfiltersController( filtersModel, config ) { + config = config || {}; this.filtersModel = filtersModel; + + this.normalizeTarget = !!config.normalizeTarget; }; /* Initialization */ @@ -103,6 +113,10 @@ // matches [/wiki/]SpecialNS:RCL/[Namespace:]Title/Subpage/Subsubpage/etc re = /^((?:\/.+?\/)?.*?:.*?)\/(.*)$/; + if ( !this.normalizeTarget ) { + return uri; + } + // target in title param if ( uri.query.title ) { parts = uri.query.title.match( re ); @@ -277,4 +291,4 @@ { urlversion: '2' } ); }; -}( mediaWiki, jQuery ) ); +}() );