From 11002c288179e5d36bcd3585af1a11bb062a545b Mon Sep 17 00:00:00 2001 From: Kyle Spearrin Date: Thu, 30 Mar 2017 22:06:01 -0400 Subject: [PATCH] enum filters and org accept state --- src/app/accounts/accountsLoginController.js | 1 + src/app/accounts/views/accountsLoginInfo.html | 12 ++++- src/app/accounts/views/accountsRegister.html | 2 +- src/app/app.js | 1 + src/app/filters/enumLabelClassFilter.js | 32 +++++++++++++ src/app/filters/enumNameFilter.js | 46 +++++++++++++++++++ src/app/filters/filtersModule.js | 2 + .../organizationPeopleController.js | 29 ------------ .../views/organizationPeople.html | 8 ++-- src/index.html | 4 ++ 10 files changed, 102 insertions(+), 35 deletions(-) create mode 100644 src/app/filters/enumLabelClassFilter.js create mode 100644 src/app/filters/enumNameFilter.js create mode 100644 src/app/filters/filtersModule.js diff --git a/src/app/accounts/accountsLoginController.js b/src/app/accounts/accountsLoginController.js index 02402f9ff9..c0f6ec313d 100644 --- a/src/app/accounts/accountsLoginController.js +++ b/src/app/accounts/accountsLoginController.js @@ -3,6 +3,7 @@ angular .controller('accountsLoginController', function ($scope, $rootScope, $cookies, apiService, cryptoService, authService, $state, appSettings, $analytics) { + $scope.state = $state; var returnState = $state.params.returnState; var rememberedEmail = $cookies.get(appSettings.rememberedEmailCookieName); if (rememberedEmail || $state.params.email) { diff --git a/src/app/accounts/views/accountsLoginInfo.html b/src/app/accounts/views/accountsLoginInfo.html index f0abe6d295..cef70febb3 100644 --- a/src/app/accounts/views/accountsLoginInfo.html +++ b/src/app/accounts/views/accountsLoginInfo.html @@ -35,7 +35,15 @@
\ No newline at end of file diff --git a/src/app/accounts/views/accountsRegister.html b/src/app/accounts/views/accountsRegister.html index f53133fc40..92d224adc6 100644 --- a/src/app/accounts/views/accountsRegister.html +++ b/src/app/accounts/views/accountsRegister.html @@ -9,7 +9,7 @@

Account Created!

You may now log in to your new account.

- Ready to log in? + Ready to log in?
diff --git a/src/app/app.js b/src/app/app.js index 4f5366e094..859a82c85c 100644 --- a/src/app/app.js +++ b/src/app/app.js @@ -10,6 +10,7 @@ 'angulartics.google.analytics', 'bit.directives', + 'bit.filters', 'bit.services', 'bit.global', diff --git a/src/app/filters/enumLabelClassFilter.js b/src/app/filters/enumLabelClassFilter.js new file mode 100644 index 0000000000..84a5d57bf9 --- /dev/null +++ b/src/app/filters/enumLabelClassFilter.js @@ -0,0 +1,32 @@ +angular + .module('bit.filters') + + .filter('enumLabelClass', function () { + return function (input, name) { + if (typeof input !== 'number') { + return input.toString(); + } + + var output; + switch (name) { + case 'OrgUserStatus': + switch (input) { + case 0: + output = 'label-default'; + break; + case 1: + output = 'label-warning'; + break; + case 2: + /* falls through */ + default: + output = 'label-success'; + } + break; + default: + output = 'label-default'; + } + + return output; + }; + }); diff --git a/src/app/filters/enumNameFilter.js b/src/app/filters/enumNameFilter.js new file mode 100644 index 0000000000..5678c49766 --- /dev/null +++ b/src/app/filters/enumNameFilter.js @@ -0,0 +1,46 @@ +angular + .module('bit.filters') + + .filter('enumName', function () { + return function (input, name) { + if (typeof input !== 'number') { + return input.toString(); + } + + var output; + switch (name) { + case 'OrgUserStatus': + switch (input) { + case 0: + output = 'Invited'; + break; + case 1: + output = 'Accepted'; + break; + case 2: + /* falls through */ + default: + output = 'Confirmed'; + } + break; + case 'OrgUserType': + switch (input) { + case 0: + output = 'Owner'; + break; + case 1: + output = 'Admin'; + break; + case 2: + /* falls through */ + default: + output = 'User'; + } + break; + default: + output = input.toString(); + } + + return output; + }; + }); diff --git a/src/app/filters/filtersModule.js b/src/app/filters/filtersModule.js new file mode 100644 index 0000000000..02c0dc595f --- /dev/null +++ b/src/app/filters/filtersModule.js @@ -0,0 +1,2 @@ +angular + .module('bit.filters', []); diff --git a/src/app/organization/organizationPeopleController.js b/src/app/organization/organizationPeopleController.js index f57bc58ac5..cff83555e4 100644 --- a/src/app/organization/organizationPeopleController.js +++ b/src/app/organization/organizationPeopleController.js @@ -92,35 +92,6 @@ type: list.Data[i].Type }; - switch (user.type) { - case 0: - user.typeName = 'Owner'; - break; - case 1: - user.typeName = 'Admin'; - break; - case 2: - /* falls through */ - default: - user.typeName = 'User'; - } - - switch (user.status) { - case 0: - user.statusName = 'Invited'; - user.statusClass = { 'label-default': true }; - break; - case 1: - user.statusName = 'Accepted'; - user.statusClass = { 'label-warning': true }; - break; - case 2: - /* falls through */ - default: - user.statusName = 'Confirmed'; - user.statusClass = { 'label-success': true }; - } - users.push(user); } diff --git a/src/app/organization/views/organizationPeople.html b/src/app/organization/views/organizationPeople.html index 032834447e..b249e3c0aa 100644 --- a/src/app/organization/views/organizationPeople.html +++ b/src/app/organization/views/organizationPeople.html @@ -32,7 +32,7 @@ + orderBy: ['type', 'name', 'email'])"> diff --git a/src/index.html b/src/index.html index dfd7548043..8eb114824a 100644 --- a/src/index.html +++ b/src/index.html @@ -87,6 +87,10 @@ + + + +
- {{user.typeName}} + {{user.type | enumName: 'OrgUserType'}} - {{user.statusName}} + + {{user.status | enumName: 'OrgUserStatus'}} +