diff --git a/openid-connect-common/src/main/java/org/mitre/openid/connect/config/ConfigurationPropertiesBean.java b/openid-connect-common/src/main/java/org/mitre/openid/connect/config/ConfigurationPropertiesBean.java index 0b5e1ebfd..3f8c1a98e 100644 --- a/openid-connect-common/src/main/java/org/mitre/openid/connect/config/ConfigurationPropertiesBean.java +++ b/openid-connect-common/src/main/java/org/mitre/openid/connect/config/ConfigurationPropertiesBean.java @@ -29,20 +29,16 @@ public class ConfigurationPropertiesBean { private String issuer; - private String adminConsoleTopbarTitle; + private String topbarTitle; private String logoImageUrl; - private String adminConsoleCopyrightFooter; - - private String adminConsoleLandingPageText; - - public ConfigurationPropertiesBean() { + } /** - * @return the baseUrl + * @return the issuer baseUrl */ public String getIssuer() { return issuer; @@ -55,36 +51,32 @@ public class ConfigurationPropertiesBean { issuer = iss; } - public String getAdminConsoleTopbarTitle() { - return adminConsoleTopbarTitle; + /** + * @return the topbarTitle + */ + public String getTopbarTitle() { + return topbarTitle; } - public void setAdminConsoleTopbarTitle(String adminConsoleTopbarTitle) { - this.adminConsoleTopbarTitle = adminConsoleTopbarTitle; + /** + * @param topbarTitle the topbarTitle to set + */ + public void setTopbarTitle(String topbarTitle) { + this.topbarTitle = topbarTitle; } + /** + * @return the logoImageUrl + */ public String getLogoImageUrl() { return logoImageUrl; } + /** + * @param logoImageUrl the logoImageUrl to set + */ public void setLogoImageUrl(String logoImageUrl) { this.logoImageUrl = logoImageUrl; } - public String getAdminConsoleCopyrightFooter() { - return adminConsoleCopyrightFooter; - } - - public void setAdminConsoleCopyrightFooter(String adminConsoleCopyrightFooter) { - this.adminConsoleCopyrightFooter = adminConsoleCopyrightFooter; - } - - public String getAdminConsoleLandingPageText() { - return adminConsoleLandingPageText; - } - - public void setAdminConsoleLandingPageText(String adminConsoleLandingPageText) { - this.adminConsoleLandingPageText = adminConsoleLandingPageText; - } - -} +} \ No newline at end of file diff --git a/openid-connect-server/src/main/java/org/mitre/openid/connect/web/ManagerController.java b/openid-connect-server/src/main/java/org/mitre/openid/connect/web/ManagerController.java index b9de97fb8..c30f6a062 100644 --- a/openid-connect-server/src/main/java/org/mitre/openid/connect/web/ManagerController.java +++ b/openid-connect-server/src/main/java/org/mitre/openid/connect/web/ManagerController.java @@ -35,31 +35,18 @@ public class ManagerController { @Autowired private StatsService statsService; - @Autowired - private ConfigurationPropertiesBean configBean; - @RequestMapping({"", "home", "index"}) public String showHomePage(ModelMap m) { Map summary = statsService.calculateSummaryStats(); m.put("statsSummary", summary); - m.put("topbarTitle", configBean.getAdminConsoleTopbarTitle()); - m.put("landingPageText", configBean.getAdminConsoleLandingPageText()); - m.put("copyright", configBean.getAdminConsoleCopyrightFooter()); - m.put("logoUrl", configBean.getLogoImageUrl()); - return "home"; } @RequestMapping({"about", "about/"}) public String showAboutPage(ModelMap m) { - m.put("topbarTitle", configBean.getAdminConsoleTopbarTitle()); - m.put("landingPageText", configBean.getAdminConsoleLandingPageText()); - m.put("copyright", configBean.getAdminConsoleCopyrightFooter()); - m.put("logoUrl", configBean.getLogoImageUrl()); - return "about"; } @@ -69,37 +56,19 @@ public class ManagerController { Map summary = statsService.calculateSummaryStats(); m.put("statsSummary", summary); - m.put("statsSummary", summary); - m.put("topbarTitle", configBean.getAdminConsoleTopbarTitle()); - m.put("landingPageText", configBean.getAdminConsoleLandingPageText()); - m.put("copyright", configBean.getAdminConsoleCopyrightFooter()); - m.put("logoUrl", configBean.getLogoImageUrl()); - return "stats"; } @RequestMapping({"contact", "contact/"}) public String showContactPage(ModelMap m) { - m.put("topbarTitle", configBean.getAdminConsoleTopbarTitle()); - m.put("landingPageText", configBean.getAdminConsoleLandingPageText()); - m.put("copyright", configBean.getAdminConsoleCopyrightFooter()); - m.put("logoUrl", configBean.getLogoImageUrl()); - return "contact"; } @PreAuthorize("hasRole('ROLE_USER')") // TODO: this probably shouldn't be here @RequestMapping("manage/**") public String showClientManager(ModelMap m) { - // TODO: move view - - m.put("topbarTitle", configBean.getAdminConsoleTopbarTitle()); - m.put("landingPageText", configBean.getAdminConsoleLandingPageText()); - m.put("copyright", configBean.getAdminConsoleCopyrightFooter()); - m.put("logoUrl", configBean.getLogoImageUrl()); - - return "admin/manage"; + return "manage"; } public StatsService getStatsService() { @@ -110,12 +79,4 @@ public class ManagerController { this.statsService = statsService; } - public ConfigurationPropertiesBean getConfigBean() { - return configBean; - } - - public void setConfigBean(ConfigurationPropertiesBean configBean) { - this.configBean = configBean; - } - } diff --git a/openid-connect-server/src/main/java/org/mitre/openid/connect/web/ServerConfigInterceptor.java b/openid-connect-server/src/main/java/org/mitre/openid/connect/web/ServerConfigInterceptor.java new file mode 100644 index 000000000..db5e90ebd --- /dev/null +++ b/openid-connect-server/src/main/java/org/mitre/openid/connect/web/ServerConfigInterceptor.java @@ -0,0 +1,36 @@ +/** + * + */ +package org.mitre.openid.connect.web; + +import java.security.Principal; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import org.mitre.openid.connect.config.ConfigurationPropertiesBean; +import org.mitre.openid.connect.model.UserInfo; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.servlet.ModelAndView; +import org.springframework.web.servlet.handler.HandlerInterceptorAdapter; + +/** + * + * Injects the server configuration bean into the Model context, if it exists. Allows JSPs and the like to call "config.logoUrl" among others. + * + * @author jricher + * + */ +public class ServerConfigInterceptor extends HandlerInterceptorAdapter { + + @Autowired + private ConfigurationPropertiesBean config; + + @Override + public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception { + if (modelAndView != null) { // skip checking at all if we have no model and view to hand the config to + modelAndView.addObject("config", config); + } + } + +} diff --git a/openid-connect-server/src/main/java/org/mitre/openid/connect/web/UserInfoInterceptor.java b/openid-connect-server/src/main/java/org/mitre/openid/connect/web/UserInfoInterceptor.java index abacd8a1f..28a610ade 100644 --- a/openid-connect-server/src/main/java/org/mitre/openid/connect/web/UserInfoInterceptor.java +++ b/openid-connect-server/src/main/java/org/mitre/openid/connect/web/UserInfoInterceptor.java @@ -16,6 +16,8 @@ import org.springframework.web.servlet.ModelAndView; import org.springframework.web.servlet.handler.HandlerInterceptorAdapter; /** + * Injects the UserInfo object for the current user into the current model's context, if both exist. Allows JSPs and the like to call "userInfo.name" and other fields. + * * @author jricher * */ diff --git a/openid-connect-server/src/main/webapp/WEB-INF/application-context.xml b/openid-connect-server/src/main/webapp/WEB-INF/application-context.xml index 9ff73b58d..b7a4052cb 100644 --- a/openid-connect-server/src/main/webapp/WEB-INF/application-context.xml +++ b/openid-connect-server/src/main/webapp/WEB-INF/application-context.xml @@ -24,7 +24,9 @@ + + diff --git a/openid-connect-server/src/main/webapp/WEB-INF/server-config.xml b/openid-connect-server/src/main/webapp/WEB-INF/server-config.xml index 36a0e21b8..300fabb26 100644 --- a/openid-connect-server/src/main/webapp/WEB-INF/server-config.xml +++ b/openid-connect-server/src/main/webapp/WEB-INF/server-config.xml @@ -14,9 +14,8 @@ - - - + + diff --git a/openid-connect-server/src/main/webapp/WEB-INF/tags/copyright.tag b/openid-connect-server/src/main/webapp/WEB-INF/tags/copyright.tag index 3469df36d..9a5d852c7 100644 --- a/openid-connect-server/src/main/webapp/WEB-INF/tags/copyright.tag +++ b/openid-connect-server/src/main/webapp/WEB-INF/tags/copyright.tag @@ -1,5 +1 @@ - \ No newline at end of file +Powered by MITREid Connect © 2013 The MITRE Corporation. \ No newline at end of file diff --git a/openid-connect-server/src/main/webapp/WEB-INF/tags/footer.tag b/openid-connect-server/src/main/webapp/WEB-INF/tags/footer.tag index df3db8900..6938abc21 100644 --- a/openid-connect-server/src/main/webapp/WEB-INF/tags/footer.tag +++ b/openid-connect-server/src/main/webapp/WEB-INF/tags/footer.tag @@ -4,7 +4,11 @@ <%@ taglib prefix="o" tagdir="/WEB-INF/tags" %>
- + diff --git a/openid-connect-server/src/main/webapp/WEB-INF/tags/header.tag b/openid-connect-server/src/main/webapp/WEB-INF/tags/header.tag index 69911636e..d2a3adfb6 100644 --- a/openid-connect-server/src/main/webapp/WEB-INF/tags/header.tag +++ b/openid-connect-server/src/main/webapp/WEB-INF/tags/header.tag @@ -61,7 +61,10 @@ .credit { margin: 20px 0; } - + + a.brand { + background: url('${config.logoImageUrl}') no-repeat scroll 7px 7px transparent; + }