From eaeb990d961b72d5febe8f1188fa023e4435feb7 Mon Sep 17 00:00:00 2001 From: Stephen Kraffmiller Date: Thu, 14 Nov 2019 16:32:03 -0500 Subject: [PATCH 1/6] #6267 Add token tools to UI --- .../harvard/iq/dataverse/ApiTokenPage.java | 28 +++++++++++++++++-- src/main/java/propertyFiles/Bundle.properties | 2 ++ src/main/webapp/dataverseuser.xhtml | 11 ++++++++ 3 files changed, 39 insertions(+), 2 deletions(-) diff --git a/src/main/java/edu/harvard/iq/dataverse/ApiTokenPage.java b/src/main/java/edu/harvard/iq/dataverse/ApiTokenPage.java index 05923b9e13a..c93ac855c2d 100644 --- a/src/main/java/edu/harvard/iq/dataverse/ApiTokenPage.java +++ b/src/main/java/edu/harvard/iq/dataverse/ApiTokenPage.java @@ -4,9 +4,8 @@ import edu.harvard.iq.dataverse.authorization.users.ApiToken; import edu.harvard.iq.dataverse.authorization.users.AuthenticatedUser; import edu.harvard.iq.dataverse.util.BundleUtil; -import java.sql.Timestamp; +import edu.harvard.iq.dataverse.api.Util; import java.util.ArrayList; -import java.util.Calendar; import java.util.List; import java.util.logging.Logger; import javax.ejb.EJB; @@ -75,4 +74,29 @@ public void generate() { } } + + public String getApiTokenExpiration() { + if (session.getUser().isAuthenticated()) { + AuthenticatedUser au = (AuthenticatedUser) session.getUser(); + apiToken = authSvc.findApiTokenByUser(au); + if (apiToken != null) { + return Util.getDateFormat().format(apiToken.getExpireTime()); + } else { + return ""; + } + } else { + // It should be impossible to get here from the UI. + return ""; + } + } + + public void revoke() { + if (session.getUser().isAuthenticated()) { + AuthenticatedUser au = (AuthenticatedUser) session.getUser(); + apiToken = authSvc.findApiTokenByUser(au); + if (apiToken != null) { + authSvc.removeApiToken(au); + } + } + } } \ No newline at end of file diff --git a/src/main/java/propertyFiles/Bundle.properties b/src/main/java/propertyFiles/Bundle.properties index 38e03b719e6..eb6b65beec6 100755 --- a/src/main/java/propertyFiles/Bundle.properties +++ b/src/main/java/propertyFiles/Bundle.properties @@ -401,6 +401,8 @@ apitoken.message=Your API Token is displayed below after it has been created. Ch apitoken.notFound=API Token for {0} has not been created. apitoken.generateBtn=Create Token apitoken.regenerateBtn=Recreate Token +apitoken.revoke=Revoke +apitoken.expirationDate.label=Expiration Date #dashboard.xhtml dashboard.title=Dashboard diff --git a/src/main/webapp/dataverseuser.xhtml b/src/main/webapp/dataverseuser.xhtml index d3e2b884a37..b7e733997f1 100644 --- a/src/main/webapp/dataverseuser.xhtml +++ b/src/main/webapp/dataverseuser.xhtml @@ -510,6 +510,17 @@ + + + + + +
+ + +
From c0aca0b5575a312ad1749f35097ff0f3c02445a2 Mon Sep 17 00:00:00 2001 From: Michael Heppler Date: Fri, 15 Nov 2019 15:16:01 -0500 Subject: [PATCH 2/6] Cleaned up api token experation date layout, as well as metadata table css [ref #6267] --- src/main/java/propertyFiles/Bundle.properties | 2 +- src/main/webapp/dataset.xhtml | 2 +- src/main/webapp/dataverseuser.xhtml | 43 +++++++++---------- src/main/webapp/resources/css/structure.css | 2 +- 4 files changed, 23 insertions(+), 26 deletions(-) diff --git a/src/main/java/propertyFiles/Bundle.properties b/src/main/java/propertyFiles/Bundle.properties index eb6b65beec6..a600ad2c19a 100755 --- a/src/main/java/propertyFiles/Bundle.properties +++ b/src/main/java/propertyFiles/Bundle.properties @@ -401,7 +401,7 @@ apitoken.message=Your API Token is displayed below after it has been created. Ch apitoken.notFound=API Token for {0} has not been created. apitoken.generateBtn=Create Token apitoken.regenerateBtn=Recreate Token -apitoken.revoke=Revoke +apitoken.revokeBtn=Revoke Token apitoken.expirationDate.label=Expiration Date #dashboard.xhtml diff --git a/src/main/webapp/dataset.xhtml b/src/main/webapp/dataset.xhtml index 70d7a71dc4e..a94f6141b31 100644 --- a/src/main/webapp/dataset.xhtml +++ b/src/main/webapp/dataset.xhtml @@ -443,7 +443,7 @@ or !empty DatasetPage.datasetVersionUI.subject.value or !empty DatasetPage.datasetVersionUI.relPublicationCitation or !empty DatasetPage.datasetVersionUI.notes.value) and !empty DatasetPage.datasetSummaryFields}"> -