From 769bd2e37f13ec572d9eea505c93d9d2f6e7932b Mon Sep 17 00:00:00 2001 From: Mike McKay <mfmckay@wustl.edu> Date: Mon, 19 Sep 2016 14:36:09 -0500 Subject: [PATCH] XNAT-4463 Added message in cases where no project owners have valid emails. Hacked the UI to show this as an error message using Will's string contains hack. Hopefully we can get a better way to handle message type soon. --- .../nrg/xnat/turbine/modules/actions/RequestAccess.java | 4 +++- src/main/webapp/xnat-templates/screens/Index.vm | 8 +++++++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/src/main/java/org/nrg/xnat/turbine/modules/actions/RequestAccess.java b/src/main/java/org/nrg/xnat/turbine/modules/actions/RequestAccess.java index 602fb4c0..5971519d 100644 --- a/src/main/java/org/nrg/xnat/turbine/modules/actions/RequestAccess.java +++ b/src/main/java/org/nrg/xnat/turbine/modules/actions/RequestAccess.java @@ -84,6 +84,8 @@ public class RequestAccess extends SecureAction { String from = XDAT.getSiteConfigPreferences().getAdminEmail(); String subject = TurbineUtils.GetSystemName() + " Access Request for " + project.getName(); + data.setMessage("Access request sent."); + try { XDAT.getMailService().sendHtmlMessage(from, to, null, bcc, subject, message); } catch (Exception exception) { @@ -99,10 +101,10 @@ public class RequestAccess extends SecureAction { } if (successfulSends == 0) { logger.error("Unable to send mail", exception); + data.setMessage("No project owners have emails which could receive the access request. Please contact the system administrator for additional assistance."); } } - data.setMessage("Access request sent."); data.setScreenTemplate("Index.vm"); } } diff --git a/src/main/webapp/xnat-templates/screens/Index.vm b/src/main/webapp/xnat-templates/screens/Index.vm index e2ed210c..92190d54 100644 --- a/src/main/webapp/xnat-templates/screens/Index.vm +++ b/src/main/webapp/xnat-templates/screens/Index.vm @@ -12,7 +12,13 @@ $!template.setLayoutTemplate($siteConfig.getProperty("siteHomeLayout","/Index.vm")) #end #if ($data.message) -<div class="note">$data.message</div><br> +<div class="note" id="messageToDisplay">$data.message</div><br> +<script> + var messageToDisplay = "$data.message".toLowerCase(); + if (messageToDisplay.indexOf('no project owners have emails which could receive the access request') > -1) { + $('#messageToDisplay').removeClass('note').addClass('error'); + } +</script> #end #if(0 < $par_count) -- GitLab