summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWinnie Hellmann <winnie@gitlab.com>2017-10-26 14:53:57 +0200
committerWinnie Hellmann <winnie@gitlab.com>2017-11-02 11:11:20 +0100
commit3a023c5ede3a8acbdb03c53ffa3580e5f0da46aa (patch)
treeaf022c49683571a859191261b3a13f4637191757
parent34d53d2b5a150d10de3c84cb73f8a67f7fe297a7 (diff)
downloadgitlab-ce-winh-admin-projects-namespace-filter.tar.gz
Make NamespaceSelect change URL when filteringwinh-admin-projects-namespace-filter
-rw-r--r--app/assets/javascripts/namespace_select.js23
-rw-r--r--changelogs/unreleased/winh-admin-projects-namespace-filter.yml5
2 files changed, 17 insertions, 11 deletions
diff --git a/app/assets/javascripts/namespace_select.js b/app/assets/javascripts/namespace_select.js
index 69e83d784bf..1d496c64e53 100644
--- a/app/assets/javascripts/namespace_select.js
+++ b/app/assets/javascripts/namespace_select.js
@@ -1,16 +1,13 @@
/* eslint-disable func-names, space-before-function-paren, no-var, comma-dangle, object-shorthand, no-else-return, prefer-template, quotes, prefer-arrow-callback, max-len */
import Api from './api';
+import './lib/utils/url_utility';
export default class NamespaceSelect {
constructor(opts) {
const isFilter = opts.dropdown.dataset.isFilter === 'true';
- var fieldName;
- this.dropdown = $(opts.dropdown);
- fieldName = 'namespace_id';
- if (this.dropdown.attr('data-field-name')) {
- fieldName = this.dropdown.data('fieldName');
- }
- this.dropdown.glDropdown({
+ const fieldName = opts.dropdown.dataset.fieldName || 'namespace_id';
+
+ $(opts.dropdown).glDropdown({
filterable: true,
selectable: true,
filterRemote: true,
@@ -27,9 +24,8 @@ export default class NamespaceSelect {
},
data: function(term, dataCallback) {
return Api.namespaces(term, function(namespaces) {
- var anyNamespace;
if (isFilter) {
- anyNamespace = {
+ const anyNamespace = {
text: 'Any namespace',
id: null
};
@@ -48,8 +44,13 @@ export default class NamespaceSelect {
},
renderRow: this.renderRow,
clicked(options) {
- const { e } = options;
- return e.preventDefault();
+ if (!isFilter) {
+ const { e } = options;
+ e.preventDefault();
+ }
+ },
+ url(namespace) {
+ return gl.utils.mergeUrlParams({ [fieldName]: namespace.id }, window.location.href);
},
});
}
diff --git a/changelogs/unreleased/winh-admin-projects-namespace-filter.yml b/changelogs/unreleased/winh-admin-projects-namespace-filter.yml
new file mode 100644
index 00000000000..7e906f446b0
--- /dev/null
+++ b/changelogs/unreleased/winh-admin-projects-namespace-filter.yml
@@ -0,0 +1,5 @@
+---
+title: Make NamespaceSelect change URL when filtering
+merge_request: 14888
+author:
+type: fixed