diff --git a/gms/src/main/java/it/inaf/ia2/gms/manager/InvitedRegistrationManager.java b/gms/src/main/java/it/inaf/ia2/gms/manager/InvitedRegistrationManager.java index a8547e302e897c5a460ecbab124cbbafd9ee2484..b16bec4fe5583de0877d64a4b2317768e903cbbd 100644 --- a/gms/src/main/java/it/inaf/ia2/gms/manager/InvitedRegistrationManager.java +++ b/gms/src/main/java/it/inaf/ia2/gms/manager/InvitedRegistrationManager.java @@ -109,6 +109,7 @@ public class InvitedRegistrationManager extends UserAwareComponent { permissionsService.addPermission(groupEntity, userId, entry.getValue()); } + invitedRegistration.setUserId(getCurrentUserId()); invitedRegistrationDAO.setRegistrationDone(invitedRegistration); httpSession.removeAttribute(INVITED_REGISTRATION); diff --git a/gms/src/main/java/it/inaf/ia2/gms/persistence/InvitedRegistrationDAO.java b/gms/src/main/java/it/inaf/ia2/gms/persistence/InvitedRegistrationDAO.java index 382401584554a9b6ff756947e3cdafeb07862d14..f05086f3fa7c007da3ad5bdb99f5cd36c73bd2c8 100644 --- a/gms/src/main/java/it/inaf/ia2/gms/persistence/InvitedRegistrationDAO.java +++ b/gms/src/main/java/it/inaf/ia2/gms/persistence/InvitedRegistrationDAO.java @@ -94,11 +94,12 @@ public class InvitedRegistrationDAO { public void setRegistrationDone(InvitedRegistration invitedRegistration) { - String sql = "UPDATE invited_registration_request SET done = true WHERE id = ?"; + String sql = "UPDATE invited_registration_request SET \"user\" = ?, done = true WHERE id = ?"; jdbcTemplate.update(conn -> { PreparedStatement ps = conn.prepareStatement(sql); - ps.setString(1, invitedRegistration.getId()); + ps.setString(1, invitedRegistration.getUserId()); + ps.setString(2, invitedRegistration.getId()); return ps; }); } diff --git a/gms/src/main/java/it/inaf/ia2/gms/persistence/model/InvitedRegistration.java b/gms/src/main/java/it/inaf/ia2/gms/persistence/model/InvitedRegistration.java index f0e476941479e95272e50090c3a11632c61f9dd6..e7a922be8d7c773046469dc3dc81c8cf0530514d 100644 --- a/gms/src/main/java/it/inaf/ia2/gms/persistence/model/InvitedRegistration.java +++ b/gms/src/main/java/it/inaf/ia2/gms/persistence/model/InvitedRegistration.java @@ -9,6 +9,7 @@ public class InvitedRegistration { private String tokenHash; private String email; private boolean done; + private String userId; private Map<String, Permission> groupsPermissions; public String getId() { @@ -47,6 +48,14 @@ public class InvitedRegistration { return this; } + public String getUserId() { + return userId; + } + + public void setUserId(String userId) { + this.userId = userId; + } + public Map<String, Permission> getGroupsPermissions() { return groupsPermissions; } diff --git a/gms/src/main/resources/sql/init.sql b/gms/src/main/resources/sql/init.sql index 2849c2fae0c470df1863c1e6180e55269d52b003..6f4693efa54d57449bc7fc47e8a6df3237885656 100644 --- a/gms/src/main/resources/sql/init.sql +++ b/gms/src/main/resources/sql/init.sql @@ -49,6 +49,7 @@ CREATE TABLE invited_registration_request ( token_hash varchar NOT NULL, email varchar NOT NULL, creation_time timestamp DEFAULT NOW(), + "user" varchar NULL, -- for audit purposes done boolean, PRIMARY KEY(id) );