From 79e9b89069cbde9c76b8876a2e5296cf4356830e Mon Sep 17 00:00:00 2001 From: Filipa Lacerda Date: Mon, 24 Oct 2016 11:18:34 +0100 Subject: Sort environments by name --- .../environments/stores/environmnets_store.js.es6 | 21 ++++++++++++++++++--- 1 file changed, 18 insertions(+), 3 deletions(-) (limited to 'app/assets/javascripts/environments/stores') diff --git a/app/assets/javascripts/environments/stores/environmnets_store.js.es6 b/app/assets/javascripts/environments/stores/environmnets_store.js.es6 index 7f0065bca8e..8b5cb67ed37 100644 --- a/app/assets/javascripts/environments/stores/environmnets_store.js.es6 +++ b/app/assets/javascripts/environments/stores/environmnets_store.js.es6 @@ -60,14 +60,14 @@ if (environment.environment_type !== null) { const occurs = acc.find((element, index, array) => { - return element.name === environment.environment_type; + return element.environment_type === environment.environment_type; }); data["vue-isChildren"] = true; if (occurs !== undefined) { acc[acc.indexOf(occurs)].children.push(data); - acc[acc.indexOf(occurs)].children.sort(); + acc[acc.indexOf(occurs)].children.push(data).sort(this.sortByName) } else { acc.push({ name: environment.environment_type, @@ -81,11 +81,26 @@ } return acc; - }, []).sort(); + }, []).sort(this.sortByName); this.state.environments = environmentsTree; return environmentsTree; + }, + + sortByName (a,b) { + const nameA = a.name.toUpperCase(); + const nameB = b.name.toUpperCase(); + + if (nameA < nameB) { + return -1; + } + + if (nameA > nameB) { + return 1; + } + + return 0; } } })(); -- cgit v1.2.1