From 181a2e1c9af0d9eab0ac7a3e84551935bbfd7995 Mon Sep 17 00:00:00 2001 From: Piotr Gawron <piotr.gawron@uni.lu> Date: Fri, 25 May 2018 15:37:26 +0200 Subject: [PATCH] user has info about terms of use consent --- .../model/user/ConfigurationElementType.java | 5 +++++ .../src/main/java/lcsb/mapviewer/model/user/User.java | 11 +++++++++++ persist/src/db/11.1.0/fix_db_20180525.sql | 1 + .../java/lcsb/mapviewer/api/users/UserRestImpl.java | 7 +++++-- 4 files changed, 22 insertions(+), 2 deletions(-) create mode 100644 persist/src/db/11.1.0/fix_db_20180525.sql diff --git a/model/src/main/java/lcsb/mapviewer/model/user/ConfigurationElementType.java b/model/src/main/java/lcsb/mapviewer/model/user/ConfigurationElementType.java index e38e7d1c1d..7937c6f9a5 100644 --- a/model/src/main/java/lcsb/mapviewer/model/user/ConfigurationElementType.java +++ b/model/src/main/java/lcsb/mapviewer/model/user/ConfigurationElementType.java @@ -165,6 +165,11 @@ public enum ConfigurationElementType { + "(\"General overlays\") on this MINERVA server contain Protected Health Information (as defined in and subject to HIPAA).", "", ConfigurationElementEditType.STRING, false), + /** + * File where legend 4/4 is stored. + */ + TERMS_OF_USE("Terms of use file", "resources/other/terms_of_use.pdf", ConfigurationElementEditType.URL, false), + ; /** diff --git a/model/src/main/java/lcsb/mapviewer/model/user/User.java b/model/src/main/java/lcsb/mapviewer/model/user/User.java index 216c7837db..65d41b9972 100644 --- a/model/src/main/java/lcsb/mapviewer/model/user/User.java +++ b/model/src/main/java/lcsb/mapviewer/model/user/User.java @@ -92,6 +92,9 @@ public class User implements Serializable { */ private boolean removed = false; + @Column(name="terms_of_use_consent") + private boolean termsOfUseConsent = false; + /** * Set of user privileges. */ @@ -333,4 +336,12 @@ public class User implements Serializable { this.simpleColor = simpleColor; } + public boolean isTermsOfUseConsent() { + return termsOfUseConsent; + } + + public void setTermsOfUseConsent(boolean termsOfUseConsent) { + this.termsOfUseConsent = termsOfUseConsent; + } + } diff --git a/persist/src/db/11.1.0/fix_db_20180525.sql b/persist/src/db/11.1.0/fix_db_20180525.sql new file mode 100644 index 0000000000..70350604e3 --- /dev/null +++ b/persist/src/db/11.1.0/fix_db_20180525.sql @@ -0,0 +1 @@ +alter table user_table add column terms_of_use_consent boolean default false; diff --git a/rest-api/src/main/java/lcsb/mapviewer/api/users/UserRestImpl.java b/rest-api/src/main/java/lcsb/mapviewer/api/users/UserRestImpl.java index bcd07b094b..d5194da508 100644 --- a/rest-api/src/main/java/lcsb/mapviewer/api/users/UserRestImpl.java +++ b/rest-api/src/main/java/lcsb/mapviewer/api/users/UserRestImpl.java @@ -79,6 +79,7 @@ public class UserRestImpl { columnsSet.add("simpleColor"); columnsSet.add("removed"); columnsSet.add("privileges"); + columnsSet.add("termsOfUseConsent"); } else { for (String str : columns.split(",")) { columnsSet.add(str); @@ -108,8 +109,10 @@ public class UserRestImpl { value = user.getMaxColor(); } else if (column.equals("simplecolor")) { value = user.getSimpleColor(); - } else if (column.equals("removed")) { - value = user.isRemoved(); + } else if (column.equals("removed")) { + value = user.isRemoved(); + } else if (column.equals("termsOfUseConsent")) { + value = user.isTermsOfUseConsent(); } else if (column.equals("privileges") && admin) { value = preparePrivileges(user); } else { -- GitLab