diff options
author | Phil Hughes <me@iamphill.com> | 2017-03-15 13:52:49 +0300 |
---|---|---|
committer | Phil Hughes <me@iamphill.com> | 2017-03-16 11:42:41 +0300 |
commit | fbf1cc6aab74cff9a425e8b2118f19141bb516a5 (patch) | |
tree | 63e173c7c75b2c7193134eeb3e30328acf6a3822 /app/assets/javascripts/boards/components | |
parent | 4e5bf7d6ddc4cbeda2a09c2cc77b1ddabff6756e (diff) |
Moved reduce function to a util
Fixed issue with modal window including main search bars tokens
Diffstat (limited to 'app/assets/javascripts/boards/components')
3 files changed, 7 insertions, 24 deletions
diff --git a/app/assets/javascripts/boards/components/modal/filters.js b/app/assets/javascripts/boards/components/modal/filters.js index d305899732f..bd394a2318c 100644 --- a/app/assets/javascripts/boards/components/modal/filters.js +++ b/app/assets/javascripts/boards/components/modal/filters.js @@ -13,6 +13,7 @@ export default { FilteredSearchContainer.container = this.$el; this.filteredSearch = new FilteredSearchBoards(this.store); + this.filteredSearch.removeTokens(); }, beforeDestroy() { this.filteredSearch.cleanup(); diff --git a/app/assets/javascripts/boards/components/modal/header.js b/app/assets/javascripts/boards/components/modal/header.js index 23f305ece9c..116e29cd177 100644 --- a/app/assets/javascripts/boards/components/modal/header.js +++ b/app/assets/javascripts/boards/components/modal/header.js @@ -1,4 +1,4 @@ -/* global Vue */ +import Vue from 'vue'; import modalFilters from './filters'; require('./tabs'); diff --git a/app/assets/javascripts/boards/components/modal/index.js b/app/assets/javascripts/boards/components/modal/index.js index 3580294b04a..1b66c8b922d 100644 --- a/app/assets/javascripts/boards/components/modal/index.js +++ b/app/assets/javascripts/boards/components/modal/index.js @@ -1,5 +1,6 @@ /* global Vue */ /* global ListIssue */ +import queryData from '../../utils/query_data'; require('./header'); require('./list'); @@ -72,29 +73,10 @@ require('./empty_state'); loadIssues(clearIssues = false) { if (!this.showAddIssuesModal) return false; - const queryData = this.filter.path.split('&').reduce((dataParam, filterParam) => { - if (filterParam === '') return dataParam; - - const data = dataParam; - const paramSplit = filterParam.split('='); - const paramKeyNormalized = paramSplit[0].replace('[]', ''); - const isArray = paramSplit[0].indexOf('[]'); - const value = decodeURIComponent(paramSplit[1]).replace(/\+/g, ' '); - - if (isArray !== -1) { - if (!data[paramKeyNormalized]) { - data[paramKeyNormalized] = []; - } - - data[paramKeyNormalized].push(value); - } else { - data[paramKeyNormalized] = value; - } - - return data; - }, { page: this.page, per: this.perPage }); - - return gl.boardService.getBacklog(queryData).then((res) => { + return gl.boardService.getBacklog(queryData(this.filter.path, { + page: this.page, + per: this.perPage, + })).then((res) => { const data = res.json(); if (clearIssues) { |