-
-
Token:
-
<%= token.token %>
-
-
-
Note:
-
<%= token.note %>
-
-
-
Created:
-
<%= new Date(token.creationTime).toLocaleDateString() %>
-
+
+
+
Token:
+
Note:
+
Created:
+
Expires:
+
+
+
<%= token.token %>
+
<%= token.note %>
+
<%= ctx.makeRelativeTime(token.creationTime) %>
<% if (token.expirationTime) { %>
-
-
Expires:
-
<%= new Date(token.expirationTime).toLocaleDateString() %>
-
+
<%= ctx.makeRelativeTime(token.expirationTime) %>
<% } else { %>
-
-
Expires:
-
No Expiration
-
+
No expiration
<% } %>
-
<% } else { %>
No Registered Tokens
<% } %>
-
+
diff --git a/client/js/api.js b/client/js/api.js
index efb4c4b0..3d4787be 100644
--- a/client/js/api.js
+++ b/client/js/api.js
@@ -122,7 +122,7 @@ class Api extends events.EventTarget {
createToken(userName, options) {
let userTokenRequest = {
enabled: true,
- note: 'Client Login Token'
+ note: 'Web Login Token'
};
if (typeof options.expires !== 'undefined') {
userTokenRequest.expirationTime = new Date().addDays(options.expires).toISOString()
@@ -212,6 +212,10 @@ class Api extends events.EventTarget {
}
}
+ isCurrentAuthToken(userToken) {
+ return userToken.token === this.token;
+ }
+
_getFullUrl(url) {
const fullUrl =
(config.apiUrl + '/' + url).replace(/([^:])\/+/g, '$1/');
diff --git a/client/js/controllers/user_controller.js b/client/js/controllers/user_controller.js
index 786fb729..55987641 100644
--- a/client/js/controllers/user_controller.js
+++ b/client/js/controllers/user_controller.js
@@ -29,7 +29,10 @@ class UserController {
if (section === 'list-tokens') {
userTokenPromise = UserToken.get(userName)
.then(userTokens => {
- return userTokens;
+ return userTokens.map(token => {
+ token.isCurrentAuthToken = api.isCurrentAuthToken(token);
+ return token;
+ });
}, error => {
return [];
});
@@ -216,7 +219,7 @@ class UserController {
_evtDeleteToken(e) {
this._view.clearMessages();
this._view.disableForm();
- if (e.detail.userToken.token === api.token) {
+ if (api.isCurrentAuthToken(e.detail.userToken)) {
router.show(uri.formatClientLink('logout'));
} else {
e.detail.userToken.delete(e.detail.user.name)
diff --git a/client/js/views/user_tokens_view.js b/client/js/views/user_tokens_view.js
index 7e19ca1e..bb81acc2 100644
--- a/client/js/views/user_tokens_view.js
+++ b/client/js/views/user_tokens_view.js
@@ -2,6 +2,7 @@
const events = require('../events.js');
const views = require('../util/views.js');
+const api = require('../api.js');
const template = views.getTemplate('user-tokens');