diff options
author | Stas Vilchik <vilchiks@gmail.com> | 2017-01-24 13:46:40 +0100 |
---|---|---|
committer | Simon Brandhof <simon.brandhof@sonarsource.com> | 2017-01-25 11:41:57 +0100 |
commit | e6ddf2b6d32368e414b2ad32239041a88080f7a7 (patch) | |
tree | 3ac266194a3a215d30be5539d9ba6750f4c7906c | |
parent | 3469a119ac9d3f585b0f4858dead8c10d6b2d3eb (diff) | |
download | sonarqube-e6ddf2b6d32368e414b2ad32239041a88080f7a7.tar.gz sonarqube-e6ddf2b6d32368e414b2ad32239041a88080f7a7.zip |
use WS /api/components/search for projects facet
-rw-r--r-- | server/sonar-web/src/main/js/apps/issues/facets/project-facet.js | 61 |
1 files changed, 21 insertions, 40 deletions
diff --git a/server/sonar-web/src/main/js/apps/issues/facets/project-facet.js b/server/sonar-web/src/main/js/apps/issues/facets/project-facet.js index 5f58f3caaca..da323213530 100644 --- a/server/sonar-web/src/main/js/apps/issues/facets/project-facet.js +++ b/server/sonar-web/src/main/js/apps/issues/facets/project-facet.js @@ -23,20 +23,25 @@ import { translate, translateWithParameters } from '../../../helpers/l10n'; export default CustomValuesFacet.extend({ getUrl () { - const q = this.options.app.state.get('contextComponentQualifier'); - if (q === 'VW' || q === 'SVW') { - return window.baseUrl + '/api/components/search_view_components'; - } else { - return window.baseUrl + '/api/components/search?qualifiers=TRK'; - } + return window.baseUrl + '/api/components/search'; }, - prepareAjaxSearch () { + prepareSearchForViews () { + const contextId = this.options.app.state.get('contextComponentUuid'); return { + url: window.baseUrl + '/api/components/tree', + data (term, page) { + return { q: term, p: page, qualifiers: 'TRK', baseComponentId: contextId }; + } + }; + }, + + prepareAjaxSearch () { + const options = { quietMillis: 300, url: this.getUrl(), data (term, page) { - return { q: term, p: page }; + return { q: term, p: page, qualifiers: 'TRK' }; }, results: r => ({ more: r.paging.total > r.paging.pageIndex * r.paging.pageSize, @@ -46,22 +51,17 @@ export default CustomValuesFacet.extend({ })) }) }; - }, - - prepareSearch () { - const q = this.options.app.state.get('contextComponentQualifier'); - if (q === 'VW' || q === 'SVW') { - return this.prepareSearchForViews(); - } else { - return CustomValuesFacet.prototype.prepareSearch.apply(this, arguments); + const contextQualifier = this.options.app.state.get('contextComponentQualifier'); + if (contextQualifier === 'VW' || contextQualifier === 'SVW') { + Object.assign(options, this.prepareSearchForViews()); } + return options; }, - prepareSearchForViews () { - const componentId = this.options.app.state.get('contextComponentUuid'); + prepareSearch () { return this.$('.js-custom-value').select2({ placeholder: translate('search_verb'), - minimumInputLength: 2, + minimumInputLength: 3, allowClear: false, formatNoMatches () { return translate('select2.noMatches'); @@ -70,29 +70,10 @@ export default CustomValuesFacet.extend({ return translate('select2.searching'); }, formatInputTooShort () { - return translateWithParameters('select2.tooShort', 2); + return translateWithParameters('select2.tooShort', 3); }, width: '100%', - ajax: { - quietMillis: 300, - url: this.getUrl(), - data (term, page) { - return { - componentId, - q: term, - p: page, - ps: 25 - }; - }, - results (data) { - return { - more: data.p * data.ps < data.total, - results: data.components.map(c => { - return { id: c.uuid, text: c.name }; - }) - }; - } - } + ajax: this.prepareAjaxSearch() }); }, |