This is an automated email from the ASF dual-hosted git repository.

smolnar pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/knox.git


The following commit(s) were added to refs/heads/master by this push:
     new 50892c4  KNOX-2699 - Hide Enable/Disable button for expired tokens 
(#527)
50892c4 is described below

commit 50892c4bc6a1ffef13c46c9bf0af6384097c7835
Author: Sandor Molnar <[email protected]>
AuthorDate: Thu Jan 6 08:56:17 2022 +0100

    KNOX-2699 - Hide Enable/Disable button for expired tokens (#527)
    
    Improved visualization too: token expiration data is shown in red for 
expired tokens and in green for the valid ones
---
 .../token-management/app/token.management.component.html           | 7 ++++---
 .../token-management/app/token.management.component.ts             | 5 +++++
 2 files changed, 9 insertions(+), 3 deletions(-)

diff --git 
a/knox-token-management-ui/token-management/app/token.management.component.html 
b/knox-token-management-ui/token-management/app/token.management.component.html
index 8143109..d08cdf4 100644
--- 
a/knox-token-management-ui/token-management/app/token.management.component.html
+++ 
b/knox-token-management-ui/token-management/app/token.management.component.html
@@ -35,11 +35,12 @@
             <tr *ngFor="let knoxToken of mf.data">
                 <td>{{knoxToken.tokenId}}</td>
                 <td>{{formatDateTime(knoxToken.issueTimeLong)}}</td>
-                <td>{{formatDateTime(knoxToken.expirationLong)}}</td>
+                <td *ngIf="!isTokenExpired(knoxToken.expirationLong)" 
style="color: green">{{formatDateTime(knoxToken.expirationLong)}}</td>
+                <td *ngIf="isTokenExpired(knoxToken.expirationLong)" 
style="color: red">{{formatDateTime(knoxToken.expirationLong)}}</td>
                 <td>{{knoxToken.metadata.comment}}</td>
                 <td>
-                    <button *ngIf="knoxToken.metadata.enabled" 
(click)="disableToken(knoxToken.tokenId);">Disable</button>
-                    <button *ngIf="!knoxToken.metadata.enabled" 
(click)="enableToken(knoxToken.tokenId);">Enable</button>
+                    <button *ngIf="knoxToken.metadata.enabled && 
!isTokenExpired(knoxToken.expirationLong)" 
(click)="disableToken(knoxToken.tokenId);">Disable</button>
+                    <button *ngIf="!knoxToken.metadata.enabled && 
!isTokenExpired(knoxToken.expirationLong)" 
(click)="enableToken(knoxToken.tokenId);">Enable</button>
                     <button 
(click)="revokeToken(knoxToken.tokenId);">Revoke</button>
                 </td>
             </tr>
diff --git 
a/knox-token-management-ui/token-management/app/token.management.component.ts 
b/knox-token-management-ui/token-management/app/token.management.component.ts
index 8cbe761..fb926fc 100644
--- 
a/knox-token-management-ui/token-management/app/token.management.component.ts
+++ 
b/knox-token-management-ui/token-management/app/token.management.component.ts
@@ -75,4 +75,9 @@ export class TokenManagementComponent implements OnInit {
     formatDateTime(dateTime: number) {
         return new Date(dateTime).toLocaleString();
     }
+
+    isTokenExpired(expiration: number): boolean {
+        return Date.now() > expiration;
+    }
+
 }

Reply via email to