You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@syncope.apache.org by mm...@apache.org on 2020/03/16 15:56:10 UTC
[syncope] 24/36: [SYNCOPE-1545] Basic white-labeling
This is an automated email from the ASF dual-hosted git repository.
mmoayyed pushed a commit to branch SYNCOPE-1545
in repository https://gitbox.apache.org/repos/asf/syncope.git
commit abfd62a6210bac17e819d5d01e51a8e303dc313a
Author: Francesco Chicchiriccò <il...@apache.org>
AuthorDate: Tue Mar 3 15:32:33 2020 +0100
[SYNCOPE-1545] Basic white-labeling
---
.../syncope/client/console/pages/BasePage.html | 6 +-
pom.xml | 212 +++++++++++---------
wa/pom.xml | 13 ++
wa/src/main/resources/static/images/logo.png | Bin 0 -> 8913 bytes
.../main/resources/templates/fragments/footer.html | 30 +++
.../main/resources/templates/fragments/header.html | 217 +++++++++++++++++++++
6 files changed, 380 insertions(+), 98 deletions(-)
diff --git a/client/idrepo/console/src/main/resources/org/apache/syncope/client/console/pages/BasePage.html b/client/idrepo/console/src/main/resources/org/apache/syncope/client/console/pages/BasePage.html
index e18f828..7bf0e0a 100644
--- a/client/idrepo/console/src/main/resources/org/apache/syncope/client/console/pages/BasePage.html
+++ b/client/idrepo/console/src/main/resources/org/apache/syncope/client/console/pages/BasePage.html
@@ -159,7 +159,7 @@ under the License.
</div>
<footer class="main-footer">
- <strong>Copyright © 2010-<span id="spanYear"></span>
+ <strong>Copyright © 2010-${year}
<a href="http://www.apache.org/" target="_blank" rel="noopener noreferrer">The Apache Software Foundation</a>.</strong>
All rights reserved.
</footer>
@@ -271,9 +271,5 @@ under the License.
</div>
<div id="veil">Loading...</div>
-
- <script type="text/javascript">
- $('#spanYear').html(new Date().getFullYear());
- </script>
</body>
</html>
diff --git a/pom.xml b/pom.xml
index 2f12460..d13c03e 100644
--- a/pom.xml
+++ b/pom.xml
@@ -153,7 +153,7 @@ under the License.
<role>PMC member</role>
</roles>
<url>http://people.apache.org/~massi/</url>
- </developer>
+ </developer>
<developer>
<id>rene</id>
<name>René Mulder</name>
@@ -409,9 +409,9 @@ under the License.
<jackson.version>2.10.3</jackson.version>
<spring.version>5.2.4.RELEASE</spring.version>
- <spring-security.version>5.3.0.RELEASE</spring-security.version>
+ <spring-security.version>5.2.2.RELEASE</spring-security.version>
<spring-boot.version>2.2.5.RELEASE</spring-boot.version>
- <spring-cloud-gateway.version>2.2.2.RELEASE</spring-cloud-gateway.version>
+ <spring-cloud-gateway.version>2.2.1.RELEASE</spring-cloud-gateway.version>
<openjpa.version>3.1.1</openjpa.version>
<hikaricp.version>3.4.2</hikaricp.version>
@@ -423,7 +423,7 @@ under the License.
<cocoon.version>3.0.0-alpha-3</cocoon.version>
- <groovy.version>3.0.2</groovy.version>
+ <groovy.version>3.0.1</groovy.version>
<flowable.version>6.5.0</flowable.version>
@@ -432,7 +432,7 @@ under the License.
<slf4j.version>1.7.30</slf4j.version>
<opensaml.version>3.3.1</opensaml.version>
- <elasticsearch.version>7.6.1</elasticsearch.version>
+ <elasticsearch.version>7.6.0</elasticsearch.version>
<apacheds.version>2.0.0.AM25</apacheds.version>
<apachedirapi.version>2.0.0.AM2</apachedirapi.version>
@@ -444,7 +444,7 @@ under the License.
<commons-lang.version>3.9</commons-lang.version>
<commons-text.version>1.8</commons-text.version>
<commons-logging.version>1.1.3</commons-logging.version>
-
+ <batik.version>1.10</batik.version>
<tika.version>1.23</tika.version>
<joda.version>2.10.5</joda.version>
@@ -454,9 +454,9 @@ under the License.
<h2.version>1.4.200</h2.version>
<junit.version>5.6.0</junit.version>
- <mockito.version>3.3.3</mockito.version>
+ <mockito.version>3.3.0</mockito.version>
- <swagger-core.version>2.1.1</swagger-core.version>
+ <swagger-core.version>2.1.1</swagger-core.version>
<swagger-ui.version>3.25.0</swagger-ui.version>
<guava.version>20.0</guava.version>
@@ -464,7 +464,7 @@ under the License.
<jquery-ui.version>1.12.1</jquery-ui.version>
<jquery-slimscroll.version>1.3.8</jquery-slimscroll.version>
<jquery-cookie.version>1.4.1-1</jquery-cookie.version>
-
+
<bootstrap.version>3.4.1</bootstrap.version>
<bootstrap-select.version>1.12.4</bootstrap-select.version>
<bootstrap-fileinput.version>4.4.8</bootstrap-fileinput.version>
@@ -477,12 +477,12 @@ under the License.
<googlediffmatchpath.version>895a9512bb</googlediffmatchpath.version>
<jsplumb.version>2.0.7</jsplumb.version>
<chartjs.version>1.0.2</chartjs.version>
-
+
<wicket.version>8.7.0</wicket.version>
<wicket-jqueryui.version>8.6.0</wicket-jqueryui.version>
<wicket-bootstrap.version>2.0.12</wicket-bootstrap.version>
<wicket-spring-boot.version>2.1.9</wicket-spring-boot.version>
-
+
<ianal-maven-plugin-version>1.0-alpha-1</ianal-maven-plugin-version>
<netbeans.version>RELEASE112</netbeans.version>
@@ -592,9 +592,9 @@ under the License.
<artifactId>geronimo-javamail_1.4_mail</artifactId>
<version>1.8.4</version>
</dependency>
- <dependency>
- <groupId>javax.servlet</groupId>
- <artifactId>javax.servlet-api</artifactId>
+ <dependency>
+ <groupId>javax.servlet</groupId>
+ <artifactId>javax.servlet-api</artifactId>
<version>4.0.1</version>
<scope>provided</scope>
</dependency>
@@ -609,7 +609,7 @@ under the License.
<artifactId>taglibs-standard-impl</artifactId>
<version>1.2.5</version>
</dependency>
-
+
<!-- CXF -->
<dependency>
<groupId>org.apache.cxf</groupId>
@@ -673,7 +673,7 @@ under the License.
</dependency>
<!-- /CXF -->
- <!-- Swagger -->
+ <!-- Swagger -->
<dependency>
<groupId>io.swagger.core.v3</groupId>
<artifactId>swagger-annotations</artifactId>
@@ -684,7 +684,7 @@ under the License.
<artifactId>jackson-dataformat-yaml</artifactId>
</exclusion>
</exclusions>
- </dependency>
+ </dependency>
<dependency>
<groupId>io.swagger.core.v3</groupId>
<artifactId>swagger-jaxrs2</artifactId>
@@ -695,13 +695,13 @@ under the License.
<artifactId>swagger-ui</artifactId>
<version>${swagger-ui.version}</version>
</dependency>
-
+
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>${guava.version}</version>
</dependency>
- <!-- /Swagger -->
+ <!-- /Swagger -->
<!-- Camel -->
<dependency>
@@ -919,7 +919,7 @@ under the License.
<artifactId>javax.el</artifactId>
<version>3.0.1-b09</version>
</dependency>
-
+
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
@@ -990,7 +990,7 @@ under the License.
<artifactId>joda-time</artifactId>
</exclusion>
</exclusions>
- </dependency>
+ </dependency>
<dependency>
<groupId>joda-time</groupId>
@@ -1017,6 +1017,22 @@ under the License.
</dependency>
<dependency>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-starter-web</artifactId>
+ <version>${spring-boot.version}</version>
+ <exclusions>
+ <exclusion>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-starter-logging</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-starter-tomcat</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+
+ <dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-spring-boot-starter-jaxrs</artifactId>
<version>${cxf.version}</version>
@@ -1158,13 +1174,13 @@ under the License.
<artifactId>spring-security-config</artifactId>
<version>${spring-security.version}</version>
</dependency>
-
+
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjweaver</artifactId>
<version>1.9.5</version>
</dependency>
-
+
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-jexl3</artifactId>
@@ -1202,7 +1218,7 @@ under the License.
<artifactId>slf4j-logging</artifactId>
<version>${connid.version}</version>
</dependency>
-
+
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy</artifactId>
@@ -1216,7 +1232,7 @@ under the License.
<exclusion>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-xml</artifactId>
- </exclusion>
+ </exclusion>
</exclusions>
</dependency>
<dependency>
@@ -1259,7 +1275,7 @@ under the License.
<artifactId>groovy-groovysh</artifactId>
<version>${groovy.version}</version>
</dependency>
-
+
<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
@@ -1314,13 +1330,13 @@ under the License.
</exclusion>
</exclusions>
</dependency>
-
+
<dependency>
<groupId>org.jasypt</groupId>
<artifactId>jasypt</artifactId>
<version>${jasypt.version}</version>
</dependency>
-
+
<dependency>
<groupId>org.quartz-scheduler</groupId>
<artifactId>quartz</artifactId>
@@ -1340,7 +1356,7 @@ under the License.
</exclusion>
</exclusions>
</dependency>
-
+
<dependency>
<groupId>org.apache.cocoon.sax</groupId>
<artifactId>cocoon-sax</artifactId>
@@ -1361,17 +1377,33 @@ under the License.
<groupId>xalan</groupId>
<artifactId>xalan</artifactId>
</exclusion>
+ <exclusion>
+ <groupId>org.apache.xmlgraphics</groupId>
+ <artifactId>batik-svg-dom</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>org.apache.xmlgraphics</groupId>
+ <artifactId>batik-bridge</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>org.apache.xmlgraphics</groupId>
+ <artifactId>batik-transcoder</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>org.apache.xmlgraphics</groupId>
+ <artifactId>batik-extension</artifactId>
+ </exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.apache.xmlgraphics</groupId>
<artifactId>batik-i18n</artifactId>
- <version>1.10</version>
+ <version>${batik.version}</version>
</dependency>
<dependency>
<groupId>org.apache.xmlgraphics</groupId>
<artifactId>batik-constants</artifactId>
- <version>1.10</version>
+ <version>${batik.version}</version>
</dependency>
<!-- Flowable -->
@@ -1434,11 +1466,6 @@ under the License.
<!-- CAS -->
<dependency>
<groupId>org.apereo.cas</groupId>
- <artifactId>cas-server-core-api-configuration-model</artifactId>
- <version>${cas.version}</version>
- </dependency>
- <dependency>
- <groupId>org.apereo.cas</groupId>
<artifactId>cas-server-core</artifactId>
<version>${cas.version}</version>
</dependency>
@@ -1449,11 +1476,6 @@ under the License.
</dependency>
<dependency>
<groupId>org.apereo.cas</groupId>
- <artifactId>cas-server-core-validation-api</artifactId>
- <version>${cas.version}</version>
- </dependency>
- <dependency>
- <groupId>org.apereo.cas</groupId>
<artifactId>cas-server-core-authentication</artifactId>
<version>${cas.version}</version>
</dependency>
@@ -1464,11 +1486,6 @@ under the License.
</dependency>
<dependency>
<groupId>org.apereo.cas</groupId>
- <artifactId>cas-server-core-configuration-metadata-repository</artifactId>
- <version>${cas.version}</version>
- </dependency>
- <dependency>
- <groupId>org.apereo.cas</groupId>
<artifactId>cas-server-core-cookie</artifactId>
<version>${cas.version}</version>
</dependency>
@@ -1489,11 +1506,6 @@ under the License.
</dependency>
<dependency>
<groupId>org.apereo.cas</groupId>
- <artifactId>cas-server-core-services-api</artifactId>
- <version>${cas.version}</version>
- </dependency>
- <dependency>
- <groupId>org.apereo.cas</groupId>
<artifactId>cas-server-core-tickets</artifactId>
<version>${cas.version}</version>
</dependency>
@@ -1539,12 +1551,12 @@ under the License.
</dependency>
<dependency>
<groupId>org.apereo.cas</groupId>
- <artifactId>cas-server-support-jdbc</artifactId>
+ <artifactId>cas-server-support-reports</artifactId>
<version>${cas.version}</version>
</dependency>
<dependency>
<groupId>org.apereo.cas</groupId>
- <artifactId>cas-server-support-reports</artifactId>
+ <artifactId>cas-server-support-syncope-authentication</artifactId>
<version>${cas.version}</version>
</dependency>
<dependency>
@@ -1556,6 +1568,10 @@ under the License.
<groupId>org.opensaml</groupId>
<artifactId>opensaml-storage-impl</artifactId>
</exclusion>
+ <exclusion>
+ <groupId>javax.mail</groupId>
+ <artifactId>mail</artifactId>
+ </exclusion>
</exclusions>
</dependency>
<dependency>
@@ -1565,6 +1581,11 @@ under the License.
</dependency>
<dependency>
<groupId>org.apereo.cas</groupId>
+ <artifactId>cas-server-support-rest-service-registry</artifactId>
+ <version>${cas.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apereo.cas</groupId>
<artifactId>cas-server-support-themes</artifactId>
<version>${cas.version}</version>
</dependency>
@@ -1592,6 +1613,10 @@ under the License.
<groupId>org.opensaml</groupId>
<artifactId>opensaml-storage-impl</artifactId>
</exclusion>
+ <exclusion>
+ <groupId>com.sun.mail</groupId>
+ <artifactId>javax.mail</artifactId>
+ </exclusion>
</exclusions>
</dependency>
<dependency>
@@ -1601,6 +1626,11 @@ under the License.
</dependency>
<dependency>
<groupId>org.apereo.cas</groupId>
+ <artifactId>cas-server-support-aup-webflow</artifactId>
+ <version>${cas.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apereo.cas</groupId>
<artifactId>cas-server-webapp-config</artifactId>
<version>${cas.version}</version>
</dependency>
@@ -1683,7 +1713,7 @@ under the License.
</exclusions>
</dependency>
<!-- /Wicket -->
-
+
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
@@ -1751,7 +1781,7 @@ under the License.
<artifactId>pdfbox</artifactId>
<version>2.0.18</version>
</dependency>
-
+
<dependency>
<groupId>org.webjars</groupId>
<artifactId>jquery</artifactId>
@@ -1796,7 +1826,7 @@ under the License.
<artifactId>bootstrap</artifactId>
</exclusion>
</exclusions>
- </dependency>
+ </dependency>
<dependency>
<groupId>org.webjars</groupId>
<artifactId>font-awesome</artifactId>
@@ -2025,7 +2055,7 @@ under the License.
<scope>test</scope>
</dependency>
</dependencies>
-
+
</dependencyManagement>
<repositories>
@@ -2039,16 +2069,6 @@ under the License.
<enabled>true</enabled>
</snapshots>
</repository>
- <repository>
- <id>shibboleth-releases</id>
- <url>https://build.shibboleth.net/nexus/content/repositories/releases</url>
- <releases>
- <enabled>true</enabled>
- </releases>
- <snapshots>
- <enabled>false</enabled>
- </snapshots>
- </repository>
</repositories>
<pluginRepositories>
@@ -2092,7 +2112,7 @@ under the License.
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
- <version>3.8.1</version>
+ <version>3.8.1</version>
<configuration>
<release>${targetJdk}</release>
<useIncrementalCompilation>false</useIncrementalCompilation>
@@ -2101,7 +2121,13 @@ under the License.
<compilerArgument>-Xlint:unchecked</compilerArgument>
</configuration>
</plugin>
-
+
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>properties-maven-plugin</artifactId>
+ <version>1.0.0</version>
+ </plugin>
+
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
@@ -2113,11 +2139,11 @@ under the License.
</delimiters>
</configuration>
</plugin>
-
+
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
- <version>3.1.0</version>
+ <version>3.0.0</version>
</plugin>
<plugin>
@@ -2125,7 +2151,7 @@ under the License.
<artifactId>maven-javadoc-plugin</artifactId>
<version>3.1.1</version>
</plugin>
-
+
<plugin>
<groupId>org.apache.openjpa</groupId>
<artifactId>openjpa-maven-plugin</artifactId>
@@ -2135,7 +2161,7 @@ under the License.
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
- <version>3.1.2</version>
+ <version>3.1.1</version>
<configuration>
<outputDirectory>${bundles.directory}</outputDirectory>
<useBaseVersion>true</useBaseVersion>
@@ -2198,13 +2224,13 @@ under the License.
</artifactItems>
</configuration>
</plugin>
-
+
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>3.2.0</version>
</plugin>
-
+
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
@@ -2222,13 +2248,13 @@ under the License.
</webResources>
</configuration>
</plugin>
-
+
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<version>1.8</version>
</plugin>
-
+
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>xml-maven-plugin</artifactId>
@@ -2241,17 +2267,17 @@ under the License.
</dependency>
</dependencies>
</plugin>
-
+
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<version>${spring-boot.version}</version>
</plugin>
-
+
<plugin>
<groupId>org.codehaus.cargo</groupId>
<artifactId>cargo-maven2-plugin</artifactId>
- <version>1.7.11</version>
+ <version>1.7.10</version>
<configuration>
<configuration>
<type>standalone</type>
@@ -2265,7 +2291,7 @@ under the License.
</configuration>
</configuration>
</plugin>
-
+
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
@@ -2294,7 +2320,7 @@ under the License.
</execution>
</executions>
</plugin>
-
+
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-checkstyle-plugin</artifactId>
@@ -2329,7 +2355,7 @@ under the License.
<artifactId>buildnumber-maven-plugin</artifactId>
<version>1.4</version>
</plugin>
-
+
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>nbm-maven-plugin</artifactId>
@@ -2341,13 +2367,13 @@ under the License.
<artifactId>exec-maven-plugin</artifactId>
<version>1.6.0</version>
</plugin>
-
+
<plugin>
<groupId>org.antlr</groupId>
<artifactId>antlr4-maven-plugin</artifactId>
<version>${antlr4.version}</version>
</plugin>
-
+
<plugin>
<groupId>nl.geodienstencentrum.maven</groupId>
<artifactId>sass-maven-plugin</artifactId>
@@ -2387,7 +2413,7 @@ under the License.
<requireMavenVersion>
<version>3.5.0</version>
</requireMavenVersion>
- </rules>
+ </rules>
</configuration>
</execution>
</executions>
@@ -2492,7 +2518,7 @@ under the License.
</execution>
</executions>
</plugin>
-
+
<plugin>
<groupId>org.apache.rat</groupId>
<artifactId>apache-rat-plugin</artifactId>
@@ -2503,7 +2529,7 @@ under the License.
<exclude>**/nb-configuration.xml</exclude>
<exclude>**/META-INF/cxf/**</exclude>
<exclude>**/META-INF/services/**</exclude>
- <exclude>**/META-INF/MANIFEST.MF</exclude>
+ <exclude>**/META-INF/MANIFEST.MF</exclude>
<exclude>**/*.csv</exclude>
<exclude>**/archetype-resources/**</exclude>
<exclude>**/AdminLTE*/**</exclude>
@@ -2534,7 +2560,7 @@ under the License.
</execution>
</executions>
</plugin>
-
+
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-remote-resources-plugin</artifactId>
@@ -2589,7 +2615,7 @@ under the License.
</execution>
</executions>
</plugin>
-
+
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>ianal-maven-plugin</artifactId>
@@ -2677,7 +2703,7 @@ under the License.
<link>https://docs.spring.io/spring-security/site/docs/current/api/</link>
<link>http://www.flowable.org/docs/javadocs/</link>
<link>https://build.shibboleth.net/nexus/content/sites/site/java-opensaml/3.3.1/apidocs/</link>
- <link>https://artifacts.elastic.co/javadoc/org/elasticsearch/elasticsearch/7.6.1/index.html</link>
+ <link>https://artifacts.elastic.co/javadoc/org/elasticsearch/elasticsearch/7.6.0/index.html</link>
<link>http://docs.swagger.io/swagger-core/v2.1.1/apidocs/</link>
</links>
</configuration>
@@ -2750,7 +2776,7 @@ under the License.
<dependency>
<groupId>org.asciidoctor</groupId>
<artifactId>asciidoctorj-pdf</artifactId>
- <version>1.5.3</version>
+ <version>1.5.2</version>
</dependency>
</dependencies>
<configuration>
@@ -2845,7 +2871,7 @@ under the License.
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-site-plugin</artifactId>
- <version>3.9.0</version>
+ <version>3.8.2</version>
<configuration>
<locales>en</locales>
<generateProjectInfo>false</generateProjectInfo>
diff --git a/wa/pom.xml b/wa/pom.xml
index 3850226..2bdb8b0 100644
--- a/wa/pom.xml
+++ b/wa/pom.xml
@@ -215,6 +215,13 @@ under the License.
<profile>
<id>debug</id>
+ <dependencies>
+ <dependency>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-devtools</artifactId>
+ </dependency>
+ </dependencies>
+
<build>
<defaultGoal>clean package spring-boot:run</defaultGoal>
@@ -283,4 +290,10 @@ under the License.
</profile>
</profiles>
+ <repositories>
+ <repository>
+ <id>shibboleth</id>
+ <url>https://build.shibboleth.net/nexus/content/groups/public</url>
+ </repository>
+ </repositories>
</project>
diff --git a/wa/src/main/resources/static/images/logo.png b/wa/src/main/resources/static/images/logo.png
new file mode 100644
index 0000000..f05105e
Binary files /dev/null and b/wa/src/main/resources/static/images/logo.png differ
diff --git a/wa/src/main/resources/templates/fragments/footer.html b/wa/src/main/resources/templates/fragments/footer.html
new file mode 100644
index 0000000..d991bf5
--- /dev/null
+++ b/wa/src/main/resources/templates/fragments/footer.html
@@ -0,0 +1,30 @@
+<!--
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements. See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership. The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied. See the License for the
+specific language governing permissions and limitations
+under the License.
+-->
+<footer class="py-4 d-flex flex-column justify-content-center cas-footer text-center">
+ <div class="pb-1 pt-1">
+ Copyright © 2010-${year}
+ <a href="http://www.apache.org/" target="_blank" rel="noopener noreferrer">The Apache Software Foundation</a>.</strong>
+ All rights reserved.
+ </div>
+ <div class="pb-1 pt-1">
+ <span id="copyright" th:utext="#{copyright}" class="mr-2 d-inline-block">Copyright Date Apereo, Inc</span>
+ <span class="mr-2 d-inline-block">Powered by <a href="https://github.com/apereo/cas">Apereo CAS</a></span>
+ <code class="version" th:text="${T(org.apereo.cas.util.CasVersion).getVersion() + ' ' + T(org.apereo.cas.util.CasVersion).getDateTime()}"></code>
+ </div>
+</footer>
diff --git a/wa/src/main/resources/templates/fragments/header.html b/wa/src/main/resources/templates/fragments/header.html
new file mode 100644
index 0000000..f128dc9
--- /dev/null
+++ b/wa/src/main/resources/templates/fragments/header.html
@@ -0,0 +1,217 @@
+<!DOCTYPE html>
+<!--
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements. See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership. The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied. See the License for the
+specific language governing permissions and limitations
+under the License.
+-->
+<html lang="en">
+
+<head>
+ <meta charset="UTF-8">
+ <meta http-equiv="X-UA-Compatible" content="IE=edge" />
+ <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no" />
+
+ <title>Header Fragment</title>
+ <link href="../../static/css/cas.css" rel="stylesheet" th:remove="tag" />
+</head>
+
+<body>
+ <div th:fragment="header">
+ <header id="app-bar" class="mdc-top-app-bar mdc-top-app-bar--fixed mdc-elevation--z4">
+ <nav class="mdc-top-app-bar__row">
+ <section class="mdc-top-app-bar__section mdc-top-app-bar__section--align-start">
+ <!--<button class="mdc-icon-button mdc-top-app-bar__navigation-icon">
+ <span class="mdi mdi-menu"></span>
+ <span class="sr-only">menu</span>
+ </button>-->
+ </section>
+ <section class="mdc-top-app-bar__section mdc-top-app-bar__section--align-center">
+ <span class="cas-brand mx-auto">
+ <span class="sr-only">Apache Syncope</span>
+ <img th:src="@{'/images/logo.png'}" />
+ </span>
+ </section>
+ <section class="mdc-top-app-bar__section mdc-top-app-bar__section--align-end">
+ <button id="cas-notifications-menu"
+ class="mdc-icon-button mdc-top-app-bar__action-item cas-notification-toggle"
+ aria-label="Bookmark this page">
+ <span class="mdi mdi-bell-alert"></span>
+ <span class="sr-only">notifications</span>
+ <i id="notifications-count" class="notifications-count count">2</i>
+ </button>
+ </section>
+ </nav>
+
+ </header>
+ <aside id="app-drawer" class="mdc-drawer mdc-drawer--dismissible mdc-drawer--modal">
+ <div class="mdc-drawer__header">
+ <h3 class="mdc-drawer__title">CAS</h3>
+ <h6 class="mdc-drawer__subtitle">Central Authentication Service</h6>
+ </div>
+ <div class="mdc-drawer__content">
+ <nav class="mdc-list">
+ <a th:href="@{/actuator}" class="mdc-list-item">
+ <i class="mdi mdi-cogs"></i>
+ <span class="mdc-list-item__text">[[#{cas.login.resources.endpoints}]]</span>
+ </a>
+ <hr class="mdc-list-divider" />
+ <a class="mdc-list-item" href="https://apereo.github.io/cas">
+ <i class="mdi mdi-file-code-outline"></i>
+ <span class="mdc-list-item__text">[[#{cas.login.resources.wiki}]]</span>
+ </a>
+ <a class="mdc-list-item" href="https://github.com/apereo/cas/pulls">
+ <i class="mdi mdi-call-merge"></i>
+ <span class="mdc-list-item__text">[[#{cas.login.resources.pulls}]]</span>
+ </a>
+ <a class="mdc-list-item" href="https://apereo.github.io/cas/developer/Contributor-Guidelines.html">
+ <i class="mdi mdi-information"></i>
+ <span class="mdc-list-item__text">[[#{cas.login.resources.contribguide}]]</span>
+ </a>
+ <a class="mdc-list-item" href="https://apereo.github.io/cas/Support.html">
+ <i class="mdi mdi-help-circle"></i>
+ <span class="mdc-list-item__text">[[#{cas.login.resources.support}]]</span>
+ </a>
+ <a class="mdc-list-item" href="https://apereo.github.io/cas/Mailing-Lists.html">
+ <i class="mdi mdi-email-newsletter"></i>
+ <span class="mdc-list-item__text">[[#{cas.login.resources.mailinglist}]]</span>
+ </a>
+ <a class="mdc-list-item" href="https://gitter.im/apereo/cas">
+ <i class="mdi mdi-message-text"></i>
+ <span class="mdc-list-item__text">[[#{cas.login.resources.chat}]]</span>
+ </a>
+ <a class="mdc-list-item" href="https://apereo.github.io/">
+ <i class="mdi mdi-post"></i>
+ <span class="mdc-list-item__text">[[#{cas.login.resources.blog}]]</span>
+ </a>
+ </nav>
+ </div>
+ </aside>
+
+ <script>var countMessages = 0;</script>
+ <div class="mdc-dialog cas-notification-dialog" id="cas-notification-dialog" role="alertdialog"
+ aria-modal="true" aria-labelledby="notif-dialog-title" aria-describedby="notif-dialog-content">
+ <div class="mdc-dialog__container">
+ <div class="mdc-dialog__surface">
+ <h2 class="mdc-dialog__title mt-2" id="notif-dialog-title">
+ Notifications
+ </h2>
+ <div class="mdc-dialog__content" id="notif-dialog-content">
+ <div class="cas-notification-message mdc-typography--body1" th:if="${staticAuthentication}">
+ <script>countMessages++;</script>
+ <h5 class="mdc-typography--headline6" th:utext="#{screen.defaultauthn.title}" />
+ <p class="text text-wrap small" th:utext="#{screen.defaultauthn.heading}">
+ Static AuthN is ONLY useful for demo purposes. It is recommended that you connect CAS to
+ LDAP,
+ JDBC, etc
+ instead.
+ </p>
+ </div>
+ <div class="cas-notification-message mdc-typography--body1"
+ th:if="${not #httpServletRequest.secure}">
+ <h5 class="mdc-typography--headline6" th:utext="#{screen.nonsecure.title}" />
+ <script>countMessages++;</script>
+ <p class="text-wrap small" th:utext="#{screen.nonsecure.message}">
+ Unsure Connection
+ </p>
+ </div>
+ </div>
+ <footer class="mdc-dialog__actions">
+ <button type="button" class="mdc-button mdc-dialog__button" data-mdc-dialog-action="accept"
+ data-mdc-dialog-button-default>
+ <span class="mdc-button__label">OK</span>
+ </button>
+ </footer>
+ </div>
+ </div>
+ <div class="mdc-dialog__scrim"></div>
+ </div>
+ <script type="text/javascript">
+
+ (function (material) {
+ var header = {
+ init: function () {
+ header.attachTopbar();
+ material.autoInit();
+ },
+ attachDrawer: function () {
+ var elm = document.getElementById('app-drawer');
+ var drawer = material.drawer.MDCDrawer.attachTo(elm);
+ var closeDrawer = function (evt) {
+ drawer.open = false;
+ };
+ drawer.foundation_.handleScrimClick = closeDrawer;
+ document.onkeydown = function (evt) {
+ evt = evt || window.event;
+ if (evt.keyCode == 27) {
+ closeDrawer();
+ }
+ };
+
+ header.drawer = drawer;
+
+ return drawer;
+ },
+ attachTopbar: function (drawer) {
+ var drawer = header.attachDrawer();
+ var dialog = header.attachNotificationDialog();
+ header.attachDrawerToggle(drawer);
+ header.attachNotificationToggle(dialog);
+ },
+ checkCaps: function (ev) {
+ var s = String.fromCharCode(ev.which);
+ if (s.toUpperCase() === s && s.toLowerCase() !== s && !ev.shiftKey) {
+ ev.target.parentElement.classList.add('caps-on');
+ } else {
+ ev.target.parentElement.classList.remove('caps-on');
+ }
+ },
+ attachDrawerToggle: function (drawer) {
+ var topAppBar = material.topAppBar.MDCTopAppBar.attachTo(document.getElementById('app-bar'));
+ topAppBar.setScrollTarget(document.getElementById('main-content'));
+ topAppBar.listen('MDCTopAppBar:nav', function () {
+ drawer.open = !drawer.open;
+ });
+ return topAppBar;
+ },
+ attachNotificationDialog: function () {
+ var element = document.getElementById('cas-notification-dialog');
+ var dialog = material.dialog.MDCDialog.attachTo(element);
+ return dialog;
+ },
+ attachNotificationToggle: function (dialog) {
+ var btn = document.getElementById('cas-notifications-menu');
+ btn.addEventListener('click', () => {
+ dialog.open();
+ });
+ }
+ }
+
+
+ document.addEventListener('DOMContentLoaded', function () {
+ header.init();
+
+ if (countMessages == 0) {
+ window.jQuery('#notifications-count').remove();
+ } else {
+ window.jQuery('#notifications-count').text("(" + countMessages + ")")
+ }
+ });
+ })(mdc);
+ </script>
+ </div>
+</body>
+
+</html>