Initial application generated by JHipster-5.8.2
This commit is contained in:
5
src/main/resources/.h2.server.properties
Normal file
5
src/main/resources/.h2.server.properties
Normal file
@ -0,0 +1,5 @@
|
||||
#H2 Server Properties
|
||||
0=JHipster H2 (Memory)|org.h2.Driver|jdbc\:h2\:mem\:hsadminng|hsadminNg
|
||||
webAllowOthers=true
|
||||
webPort=8082
|
||||
webSSL=false
|
10
src/main/resources/banner.txt
Normal file
10
src/main/resources/banner.txt
Normal file
@ -0,0 +1,10 @@
|
||||
|
||||
${AnsiColor.GREEN} ██╗${AnsiColor.RED} ██╗ ██╗ ████████╗ ███████╗ ██████╗ ████████╗ ████████╗ ███████╗
|
||||
${AnsiColor.GREEN} ██║${AnsiColor.RED} ██║ ██║ ╚══██╔══╝ ██╔═══██╗ ██╔════╝ ╚══██╔══╝ ██╔═════╝ ██╔═══██╗
|
||||
${AnsiColor.GREEN} ██║${AnsiColor.RED} ████████║ ██║ ███████╔╝ ╚█████╗ ██║ ██████╗ ███████╔╝
|
||||
${AnsiColor.GREEN}██╗ ██║${AnsiColor.RED} ██╔═══██║ ██║ ██╔════╝ ╚═══██╗ ██║ ██╔═══╝ ██╔══██║
|
||||
${AnsiColor.GREEN}╚██████╔╝${AnsiColor.RED} ██║ ██║ ████████╗ ██║ ██████╔╝ ██║ ████████╗ ██║ ╚██╗
|
||||
${AnsiColor.GREEN} ╚═════╝ ${AnsiColor.RED} ╚═╝ ╚═╝ ╚═══════╝ ╚═╝ ╚═════╝ ╚═╝ ╚═══════╝ ╚═╝ ╚═╝
|
||||
|
||||
${AnsiColor.BRIGHT_BLUE}:: JHipster 🤓 :: Running Spring Boot ${spring-boot.version} ::
|
||||
:: https://www.jhipster.tech ::${AnsiColor.DEFAULT}
|
126
src/main/resources/config/application-dev.yml
Normal file
126
src/main/resources/config/application-dev.yml
Normal file
@ -0,0 +1,126 @@
|
||||
# ===================================================================
|
||||
# Spring Boot configuration for the "dev" profile.
|
||||
#
|
||||
# This configuration overrides the application.yml file.
|
||||
#
|
||||
# More information on profiles: https://www.jhipster.tech/profiles/
|
||||
# More information on configuration properties: https://www.jhipster.tech/common-application-properties/
|
||||
# ===================================================================
|
||||
|
||||
# ===================================================================
|
||||
# Standard Spring Boot properties.
|
||||
# Full reference is available at:
|
||||
# http://docs.spring.io/spring-boot/docs/current/reference/html/common-application-properties.html
|
||||
# ===================================================================
|
||||
|
||||
logging:
|
||||
level:
|
||||
ROOT: DEBUG
|
||||
io.github.jhipster: DEBUG
|
||||
org.hostsharing.hsadminng: DEBUG
|
||||
|
||||
spring:
|
||||
profiles:
|
||||
active: dev
|
||||
include:
|
||||
- swagger
|
||||
# Uncomment to activate TLS for the dev profile
|
||||
#- tls
|
||||
devtools:
|
||||
restart:
|
||||
enabled: true
|
||||
additional-exclude: .h2.server.properties
|
||||
livereload:
|
||||
enabled: false # we use Webpack dev server + BrowserSync for livereload
|
||||
jackson:
|
||||
serialization:
|
||||
indent-output: true
|
||||
datasource:
|
||||
type: com.zaxxer.hikari.HikariDataSource
|
||||
url: jdbc:h2:mem:hsadminng;DB_CLOSE_DELAY=-1;DB_CLOSE_ON_EXIT=FALSE
|
||||
username: hsadminNg
|
||||
password:
|
||||
hikari:
|
||||
poolName: Hikari
|
||||
auto-commit: false
|
||||
h2:
|
||||
console:
|
||||
enabled: false
|
||||
jpa:
|
||||
database-platform: io.github.jhipster.domain.util.FixedH2Dialect
|
||||
database: H2
|
||||
show-sql: true
|
||||
properties:
|
||||
hibernate.id.new_generator_mappings: true
|
||||
hibernate.connection.provider_disables_autocommit: true
|
||||
hibernate.cache.use_second_level_cache: false
|
||||
hibernate.cache.use_query_cache: false
|
||||
hibernate.generate_statistics: true
|
||||
liquibase:
|
||||
contexts: dev
|
||||
mail:
|
||||
host: localhost
|
||||
port: 25
|
||||
username:
|
||||
password:
|
||||
messages:
|
||||
cache-duration: PT1S # 1 second, see the ISO 8601 standard
|
||||
thymeleaf:
|
||||
cache: false
|
||||
|
||||
server:
|
||||
port: 8080
|
||||
|
||||
# ===================================================================
|
||||
# JHipster specific properties
|
||||
#
|
||||
# Full reference is available at: https://www.jhipster.tech/common-application-properties/
|
||||
# ===================================================================
|
||||
|
||||
jhipster:
|
||||
http:
|
||||
version: V_1_1 # To use HTTP/2 you will need to activate TLS (see application-tls.yml)
|
||||
cache: # Cache configuration
|
||||
ehcache: # Ehcache configuration
|
||||
time-to-live-seconds: 3600 # By default objects stay 1 hour in the cache
|
||||
max-entries: 100 # Number of objects in each cache entry
|
||||
# CORS is only enabled by default with the "dev" profile, so BrowserSync can access the API
|
||||
cors:
|
||||
allowed-origins: "*"
|
||||
allowed-methods: "*"
|
||||
allowed-headers: "*"
|
||||
exposed-headers: "Authorization,Link,X-Total-Count"
|
||||
allow-credentials: true
|
||||
max-age: 1800
|
||||
security:
|
||||
authentication:
|
||||
jwt:
|
||||
# This token must be encoded using Base64 and be at least 256 bits long (you can type `openssl rand -base64 64` on your command line to generate a 512 bits one)
|
||||
base64-secret: ZDFlMDUzODIzMTUzZDEwZjExN2E5ZjAzY2VhZmYzNDE1YjhlYWUxZGRhMGU3ODZiNjRkNjVlNzEwZjExYWY4YzczM2NlYzI5YWE1OTRkNWM0YThlYjZjZjA5Zjc5YWJkOTgzYjdhZjQxZWQyZGUyYjFlYjI5ZDE3NmE4M2UzYjQ=
|
||||
# Token is valid 24 hours
|
||||
token-validity-in-seconds: 86400
|
||||
token-validity-in-seconds-for-remember-me: 2592000
|
||||
mail: # specific JHipster mail property, for standard properties see MailProperties
|
||||
from: hsadminNg@localhost
|
||||
base-url: http://127.0.0.1:8080
|
||||
metrics:
|
||||
logs: # Reports metrics in the logs
|
||||
enabled: false
|
||||
report-frequency: 60 # in seconds
|
||||
logging:
|
||||
logstash: # Forward logs to logstash over a socket, used by LoggingConfiguration
|
||||
enabled: false
|
||||
host: localhost
|
||||
port: 5000
|
||||
queue-size: 512
|
||||
|
||||
# ===================================================================
|
||||
# Application specific properties
|
||||
# Add your own application properties here, see the ApplicationProperties class
|
||||
# to have type-safe configuration, like in the JHipsterProperties above
|
||||
#
|
||||
# More documentation is available at:
|
||||
# https://www.jhipster.tech/common-application-properties/
|
||||
# ===================================================================
|
||||
|
||||
# application:
|
132
src/main/resources/config/application-prod.yml
Normal file
132
src/main/resources/config/application-prod.yml
Normal file
@ -0,0 +1,132 @@
|
||||
# ===================================================================
|
||||
# Spring Boot configuration for the "prod" profile.
|
||||
#
|
||||
# This configuration overrides the application.yml file.
|
||||
#
|
||||
# More information on profiles: https://www.jhipster.tech/profiles/
|
||||
# More information on configuration properties: https://www.jhipster.tech/common-application-properties/
|
||||
# ===================================================================
|
||||
|
||||
# ===================================================================
|
||||
# Standard Spring Boot properties.
|
||||
# Full reference is available at:
|
||||
# http://docs.spring.io/spring-boot/docs/current/reference/html/common-application-properties.html
|
||||
# ===================================================================
|
||||
|
||||
logging:
|
||||
level:
|
||||
ROOT: INFO
|
||||
org.hostsharing.hsadminng: INFO
|
||||
io.github.jhipster: INFO
|
||||
|
||||
spring:
|
||||
devtools:
|
||||
restart:
|
||||
enabled: false
|
||||
livereload:
|
||||
enabled: false
|
||||
datasource:
|
||||
type: com.zaxxer.hikari.HikariDataSource
|
||||
url: jdbc:postgresql://localhost:5432/hsadminNg
|
||||
username: hsadminNg
|
||||
password:
|
||||
hikari:
|
||||
poolName: Hikari
|
||||
auto-commit: false
|
||||
jpa:
|
||||
database-platform: io.github.jhipster.domain.util.FixedPostgreSQL82Dialect
|
||||
database: POSTGRESQL
|
||||
show-sql: false
|
||||
properties:
|
||||
hibernate.id.new_generator_mappings: true
|
||||
hibernate.connection.provider_disables_autocommit: true
|
||||
hibernate.cache.use_second_level_cache: false
|
||||
hibernate.cache.use_query_cache: false
|
||||
hibernate.generate_statistics: true
|
||||
liquibase:
|
||||
contexts: prod
|
||||
mail:
|
||||
host: localhost
|
||||
port: 25
|
||||
username:
|
||||
password:
|
||||
thymeleaf:
|
||||
cache: true
|
||||
|
||||
# ===================================================================
|
||||
# To enable TLS in production, generate a certificate using:
|
||||
# keytool -genkey -alias hsadminng -storetype PKCS12 -keyalg RSA -keysize 2048 -keystore keystore.p12 -validity 3650
|
||||
#
|
||||
# You can also use Let's Encrypt:
|
||||
# https://maximilian-boehm.com/hp2121/Create-a-Java-Keystore-JKS-from-Let-s-Encrypt-Certificates.htm
|
||||
#
|
||||
# Then, modify the server.ssl properties so your "server" configuration looks like:
|
||||
#
|
||||
# server:
|
||||
# port: 443
|
||||
# ssl:
|
||||
# key-store: classpath:config/tls/keystore.p12
|
||||
# key-store-password: password
|
||||
# key-store-type: PKCS12
|
||||
# key-alias: hsadminng
|
||||
# # The ciphers suite enforce the security by deactivating some old and deprecated SSL cipher, this list was tested against SSL Labs (https://www.ssllabs.com/ssltest/)
|
||||
# ciphers: TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 ,TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 ,TLS_DHE_RSA_WITH_AES_256_GCM_SHA384 ,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384,TLS_DHE_RSA_WITH_AES_128_CBC_SHA256,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA256,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_RSA_WITH_AES_128_GCM_SHA256,TLS_RSA_WITH_AES_256_GCM_SHA384,TLS_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_256_CBC_SHA256,TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_CAMELLIA_256_CBC_SHA,TLS_RSA_WITH_CAMELLIA_256_CBC_SHA,TLS_DHE_RSA_WITH_CAMELLIA_128_CBC_SHA,TLS_RSA_WITH_CAMELLIA_128_CBC_SHA
|
||||
# ===================================================================
|
||||
server:
|
||||
port: 8080
|
||||
compression:
|
||||
enabled: true
|
||||
mime-types: text/html,text/xml,text/plain,text/css, application/javascript, application/json
|
||||
min-response-size: 1024
|
||||
|
||||
# ===================================================================
|
||||
# JHipster specific properties
|
||||
#
|
||||
# Full reference is available at: https://www.jhipster.tech/common-application-properties/
|
||||
# ===================================================================
|
||||
|
||||
jhipster:
|
||||
http:
|
||||
version: V_1_1 # To use HTTP/2 you will need SSL support (see above the "server.ssl" configuration)
|
||||
cache: # Used by the CachingHttpHeadersFilter
|
||||
timeToLiveInDays: 1461
|
||||
cache: # Cache configuration
|
||||
ehcache: # Ehcache configuration
|
||||
time-to-live-seconds: 3600 # By default objects stay 1 hour in the cache
|
||||
max-entries: 1000 # Number of objects in each cache entry
|
||||
security:
|
||||
authentication:
|
||||
jwt:
|
||||
# This token must be encoded using Base64 and be at least 256 bits long (you can type `openssl rand -base64 64` on your command line to generate a 512 bits one)
|
||||
# As this is the PRODUCTION configuration, you MUST change the default key, and store it securely:
|
||||
# - In the JHipster Registry (which includes a Spring Cloud Config server)
|
||||
# - In a separate `application-prod.yml` file, in the same folder as your executable WAR file
|
||||
# - In the `JHIPSTER_SECURITY_AUTHENTICATION_JWT_BASE64_SECRET` environment variable
|
||||
base64-secret: ZDFlMDUzODIzMTUzZDEwZjExN2E5ZjAzY2VhZmYzNDE1YjhlYWUxZGRhMGU3ODZiNjRkNjVlNzEwZjExYWY4YzczM2NlYzI5YWE1OTRkNWM0YThlYjZjZjA5Zjc5YWJkOTgzYjdhZjQxZWQyZGUyYjFlYjI5ZDE3NmE4M2UzYjQ=
|
||||
# Token is valid 24 hours
|
||||
token-validity-in-seconds: 86400
|
||||
token-validity-in-seconds-for-remember-me: 2592000
|
||||
mail: # specific JHipster mail property, for standard properties see MailProperties
|
||||
from: hsadminNg@localhost
|
||||
base-url: http://my-server-url-to-change # Modify according to your server's URL
|
||||
metrics:
|
||||
logs: # Reports metrics in the logs
|
||||
enabled: false
|
||||
report-frequency: 60 # in seconds
|
||||
logging:
|
||||
logstash: # Forward logs to logstash over a socket, used by LoggingConfiguration
|
||||
enabled: false
|
||||
host: localhost
|
||||
port: 5000
|
||||
queue-size: 512
|
||||
|
||||
# ===================================================================
|
||||
# Application specific properties
|
||||
# Add your own application properties here, see the ApplicationProperties class
|
||||
# to have type-safe configuration, like in the JHipsterProperties above
|
||||
#
|
||||
# More documentation is available at:
|
||||
# https://www.jhipster.tech/common-application-properties/
|
||||
# ===================================================================
|
||||
|
||||
# application:
|
20
src/main/resources/config/application-tls.yml
Normal file
20
src/main/resources/config/application-tls.yml
Normal file
@ -0,0 +1,20 @@
|
||||
# ===================================================================
|
||||
# Activate this profile to enable TLS and HTTP/2.
|
||||
#
|
||||
# JHipster has generated a self-signed certificate, which will be used to encrypt traffic.
|
||||
# As your browser will not understand this certificate, you will need to import it.
|
||||
#
|
||||
# Another (easiest) solution with Chrome is to enable the "allow-insecure-localhost" flag
|
||||
# at chrome://flags/#allow-insecure-localhost
|
||||
# ===================================================================
|
||||
server:
|
||||
ssl:
|
||||
key-store: classpath:config/tls/keystore.p12
|
||||
key-store-password: password
|
||||
key-store-type: PKCS12
|
||||
key-alias: selfsigned
|
||||
ciphers: TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256, TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384, TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA, TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256, TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384, TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256, TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256, TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384, TLS_DHE_RSA_WITH_AES_128_GCM_SHA256, TLS_DHE_RSA_WITH_AES_256_GCM_SHA384, TLS_DHE_RSA_WITH_AES_128_CBC_SHA, TLS_DHE_RSA_WITH_AES_256_CBC_SHA, TLS_DHE_RSA_WITH_AES_128_CBC_SHA256, TLS_DHE_RSA_WITH_AES_256_CBC_SHA256
|
||||
enabled-protocols: TLSv1.2
|
||||
jhipster:
|
||||
http:
|
||||
version: V_2_0
|
140
src/main/resources/config/application.yml
Normal file
140
src/main/resources/config/application.yml
Normal file
@ -0,0 +1,140 @@
|
||||
# ===================================================================
|
||||
# Spring Boot configuration.
|
||||
#
|
||||
# This configuration will be overridden by the Spring profile you use,
|
||||
# for example application-dev.yml if you use the "dev" profile.
|
||||
#
|
||||
# More information on profiles: https://www.jhipster.tech/profiles/
|
||||
# More information on configuration properties: https://www.jhipster.tech/common-application-properties/
|
||||
# ===================================================================
|
||||
|
||||
# ===================================================================
|
||||
# Standard Spring Boot properties.
|
||||
# Full reference is available at:
|
||||
# http://docs.spring.io/spring-boot/docs/current/reference/html/common-application-properties.html
|
||||
# ===================================================================
|
||||
|
||||
management:
|
||||
endpoints:
|
||||
web:
|
||||
base-path: /management
|
||||
exposure:
|
||||
include: ["configprops", "env", "health", "info", "threaddump", "logfile", "jhi-metrics", "prometheus" ]
|
||||
endpoint:
|
||||
health:
|
||||
show-details: when-authorized
|
||||
jhi-metrics:
|
||||
enabled: true
|
||||
info:
|
||||
git:
|
||||
mode: full
|
||||
health:
|
||||
mail:
|
||||
enabled: false # When using the MailService, configure an SMTP server and set this to true
|
||||
metrics:
|
||||
export:
|
||||
# Prometheus is the default metrics backend
|
||||
prometheus:
|
||||
enabled: true
|
||||
step: 60
|
||||
binders:
|
||||
jvm:
|
||||
enabled: true
|
||||
processor:
|
||||
enabled: true
|
||||
uptime:
|
||||
enabled: true
|
||||
logback:
|
||||
enabled: true
|
||||
files:
|
||||
enabled: true
|
||||
integration:
|
||||
enabled: true
|
||||
distribution:
|
||||
percentiles-histogram:
|
||||
all: true
|
||||
percentiles:
|
||||
all: 0, 0.5, 0.75, 0.95, 0.99, 1.0
|
||||
web:
|
||||
server:
|
||||
auto-time-requests: true
|
||||
|
||||
spring:
|
||||
application:
|
||||
name: hsadminNg
|
||||
profiles:
|
||||
# The commented value for `active` can be replaced with valid Spring profiles to load.
|
||||
# Otherwise, it will be filled in by gradle when building the WAR file
|
||||
# Either way, it can be overridden by `--spring.profiles.active` value passed in the commandline or `-Dspring.profiles.active` set in `JAVA_OPTS`
|
||||
active: #spring.profiles.active#
|
||||
jpa:
|
||||
open-in-view: false
|
||||
properties:
|
||||
hibernate.jdbc.time_zone: UTC
|
||||
hibernate:
|
||||
ddl-auto: none
|
||||
naming:
|
||||
physical-strategy: org.springframework.boot.orm.jpa.hibernate.SpringPhysicalNamingStrategy
|
||||
implicit-strategy: org.springframework.boot.orm.jpa.hibernate.SpringImplicitNamingStrategy
|
||||
messages:
|
||||
basename: i18n/messages
|
||||
mvc:
|
||||
favicon:
|
||||
enabled: false
|
||||
thymeleaf:
|
||||
mode: HTML
|
||||
|
||||
server:
|
||||
servlet:
|
||||
session:
|
||||
cookie:
|
||||
http-only: true
|
||||
|
||||
# Properties to be exposed on the /info management endpoint
|
||||
info:
|
||||
# Comma separated list of profiles that will trigger the ribbon to show
|
||||
display-ribbon-on-profiles: "dev"
|
||||
|
||||
# ===================================================================
|
||||
# JHipster specific properties
|
||||
#
|
||||
# Full reference is available at: https://www.jhipster.tech/common-application-properties/
|
||||
# ===================================================================
|
||||
|
||||
jhipster:
|
||||
async:
|
||||
core-pool-size: 2
|
||||
max-pool-size: 50
|
||||
queue-capacity: 10000
|
||||
# By default CORS is disabled. Uncomment to enable.
|
||||
#cors:
|
||||
#allowed-origins: "*"
|
||||
#allowed-methods: "*"
|
||||
#allowed-headers: "*"
|
||||
#exposed-headers: "Authorization,Link,X-Total-Count"
|
||||
#allow-credentials: true
|
||||
#max-age: 1800
|
||||
mail:
|
||||
from: hsadminNg@localhost
|
||||
swagger:
|
||||
default-include-pattern: /api/.*
|
||||
title: hsadminNg API
|
||||
description: hsadminNg API documentation
|
||||
version: 0.0.1
|
||||
terms-of-service-url:
|
||||
contact-name:
|
||||
contact-url:
|
||||
contact-email:
|
||||
license:
|
||||
license-url:
|
||||
|
||||
# ===================================================================
|
||||
# Application specific properties
|
||||
# Add your own application properties here, see the ApplicationProperties class
|
||||
# to have type-safe configuration, like in the JHipsterProperties above
|
||||
#
|
||||
# More documentation is available at:
|
||||
# https://www.jhipster.tech/common-application-properties/
|
||||
# ===================================================================
|
||||
|
||||
# application:
|
3
src/main/resources/config/liquibase/authorities.csv
Normal file
3
src/main/resources/config/liquibase/authorities.csv
Normal file
@ -0,0 +1,3 @@
|
||||
name
|
||||
ROLE_ADMIN
|
||||
ROLE_USER
|
|
@ -0,0 +1,154 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<databaseChangeLog
|
||||
xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
|
||||
xmlns:ext="http://www.liquibase.org/xml/ns/dbchangelog-ext"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.5.xsd
|
||||
http://www.liquibase.org/xml/ns/dbchangelog-ext http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-ext.xsd">
|
||||
|
||||
<changeSet id="00000000000000" author="jhipster">
|
||||
<createSequence sequenceName="hibernate_sequence" startValue="1000" incrementBy="50"/>
|
||||
</changeSet>
|
||||
|
||||
<!--
|
||||
JHipster core tables.
|
||||
The initial schema has the '00000000000001' id, so that it is over-written if we re-generate it.
|
||||
-->
|
||||
<changeSet id="00000000000001" author="jhipster">
|
||||
<createTable tableName="jhi_user">
|
||||
<column name="id" type="bigint" autoIncrement="${autoIncrement}">
|
||||
<constraints primaryKey="true" nullable="false"/>
|
||||
</column>
|
||||
<column name="login" type="varchar(50)">
|
||||
<constraints unique="true" nullable="false" uniqueConstraintName="ux_user_login"/>
|
||||
</column>
|
||||
<column name="password_hash" type="varchar(60)"/>
|
||||
<column name="first_name" type="varchar(50)"/>
|
||||
<column name="last_name" type="varchar(50)"/>
|
||||
<column name="email" type="varchar(191)">
|
||||
<constraints unique="true" nullable="true" uniqueConstraintName="ux_user_email"/>
|
||||
</column>
|
||||
<column name="image_url" type="varchar(256)"/>
|
||||
<column name="activated" type="boolean" valueBoolean="false">
|
||||
<constraints nullable="false" />
|
||||
</column>
|
||||
<column name="lang_key" type="varchar(6)"/>
|
||||
<column name="activation_key" type="varchar(20)"/>
|
||||
<column name="reset_key" type="varchar(20)"/>
|
||||
<column name="created_by" type="varchar(50)">
|
||||
<constraints nullable="false"/>
|
||||
</column>
|
||||
<column name="created_date" type="timestamp"/>
|
||||
<column name="reset_date" type="timestamp">
|
||||
<constraints nullable="true"/>
|
||||
</column>
|
||||
<column name="last_modified_by" type="varchar(50)"/>
|
||||
<column name="last_modified_date" type="timestamp"/>
|
||||
</createTable>
|
||||
|
||||
<createTable tableName="jhi_authority">
|
||||
<column name="name" type="varchar(50)">
|
||||
<constraints primaryKey="true" nullable="false"/>
|
||||
</column>
|
||||
</createTable>
|
||||
|
||||
<createTable tableName="jhi_user_authority">
|
||||
<column name="user_id" type="bigint">
|
||||
<constraints nullable="false"/>
|
||||
</column>
|
||||
<column name="authority_name" type="varchar(50)">
|
||||
<constraints nullable="false"/>
|
||||
</column>
|
||||
</createTable>
|
||||
|
||||
<addPrimaryKey columnNames="user_id, authority_name" tableName="jhi_user_authority"/>
|
||||
|
||||
<addForeignKeyConstraint baseColumnNames="authority_name"
|
||||
baseTableName="jhi_user_authority"
|
||||
constraintName="fk_authority_name"
|
||||
referencedColumnNames="name"
|
||||
referencedTableName="jhi_authority"/>
|
||||
|
||||
<addForeignKeyConstraint baseColumnNames="user_id"
|
||||
baseTableName="jhi_user_authority"
|
||||
constraintName="fk_user_id"
|
||||
referencedColumnNames="id"
|
||||
referencedTableName="jhi_user"/>
|
||||
|
||||
<addNotNullConstraint columnName="password_hash"
|
||||
columnDataType="varchar(60)"
|
||||
tableName="jhi_user"/>
|
||||
<loadData encoding="UTF-8"
|
||||
file="config/liquibase/users.csv"
|
||||
separator=";"
|
||||
tableName="jhi_user">
|
||||
<column name="activated" type="boolean"/>
|
||||
<column name="created_date" type="timestamp"/>
|
||||
</loadData>
|
||||
<dropDefaultValue tableName="jhi_user" columnName="created_date" columnDataType="datetime"/>
|
||||
<loadData encoding="UTF-8"
|
||||
file="config/liquibase/authorities.csv"
|
||||
separator=";"
|
||||
tableName="jhi_authority"/>
|
||||
|
||||
<loadData encoding="UTF-8"
|
||||
file="config/liquibase/users_authorities.csv"
|
||||
separator=";"
|
||||
tableName="jhi_user_authority"/>
|
||||
<createTable tableName="jhi_persistent_audit_event">
|
||||
<column name="event_id" type="bigint" autoIncrement="${autoIncrement}">
|
||||
<constraints primaryKey="true" nullable="false"/>
|
||||
</column>
|
||||
<column name="principal" type="varchar(50)">
|
||||
<constraints nullable="false" />
|
||||
</column>
|
||||
<column name="event_date" type="timestamp"/>
|
||||
<column name="event_type" type="varchar(255)"/>
|
||||
</createTable>
|
||||
|
||||
<createTable tableName="jhi_persistent_audit_evt_data">
|
||||
<column name="event_id" type="bigint">
|
||||
<constraints nullable="false"/>
|
||||
</column>
|
||||
<column name="name" type="varchar(150)">
|
||||
<constraints nullable="false"/>
|
||||
</column>
|
||||
<column name="value" type="varchar(255)"/>
|
||||
</createTable>
|
||||
<addPrimaryKey columnNames="event_id, name" tableName="jhi_persistent_audit_evt_data"/>
|
||||
|
||||
<createIndex indexName="idx_persistent_audit_event"
|
||||
tableName="jhi_persistent_audit_event"
|
||||
unique="false">
|
||||
<column name="principal" type="varchar(50)"/>
|
||||
<column name="event_date" type="timestamp"/>
|
||||
</createIndex>
|
||||
|
||||
<createIndex indexName="idx_persistent_audit_evt_data"
|
||||
tableName="jhi_persistent_audit_evt_data"
|
||||
unique="false">
|
||||
<column name="event_id" type="bigint"/>
|
||||
</createIndex>
|
||||
|
||||
<addForeignKeyConstraint baseColumnNames="event_id"
|
||||
baseTableName="jhi_persistent_audit_evt_data"
|
||||
constraintName="fk_evt_pers_audit_evt_data"
|
||||
referencedColumnNames="event_id"
|
||||
referencedTableName="jhi_persistent_audit_event"/>
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="jhipster" id="00000000000002" context="test">
|
||||
<createTable tableName="jhi_date_time_wrapper">
|
||||
<column autoIncrement="${autoIncrement}" name="id" type="BIGINT">
|
||||
<constraints primaryKey="true" primaryKeyName="jhi_date_time_wrapperPK"/>
|
||||
</column>
|
||||
<column name="instant" type="timestamp"/>
|
||||
<column name="local_date_time" type="timestamp"/>
|
||||
<column name="offset_date_time" type="timestamp"/>
|
||||
<column name="zoned_date_time" type="timestamp"/>
|
||||
<column name="local_time" type="time"/>
|
||||
<column name="offset_time" type="time"/>
|
||||
<column name="local_date" type="date"/>
|
||||
</createTable>
|
||||
</changeSet>
|
||||
</databaseChangeLog>
|
10
src/main/resources/config/liquibase/master.xml
Normal file
10
src/main/resources/config/liquibase/master.xml
Normal file
@ -0,0 +1,10 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<databaseChangeLog
|
||||
xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.5.xsd">
|
||||
|
||||
<include file="config/liquibase/changelog/00000000000000_initial_schema.xml" relativeToChangelogFile="false"/>
|
||||
<!-- jhipster-needle-liquibase-add-changelog - JHipster will add liquibase changelogs here -->
|
||||
<!-- jhipster-needle-liquibase-add-constraints-changelog - JHipster will add liquibase constraints changelogs here -->
|
||||
</databaseChangeLog>
|
5
src/main/resources/config/liquibase/users.csv
Normal file
5
src/main/resources/config/liquibase/users.csv
Normal file
@ -0,0 +1,5 @@
|
||||
id;login;password_hash;first_name;last_name;email;image_url;activated;lang_key;created_by;last_modified_by
|
||||
1;system;$2a$10$mE.qmcV0mFU5NcKh73TZx.z4ueI/.bDWbj0T1BYyqP481kGGarKLG;System;System;system@localhost;;true;de;system;system
|
||||
2;anonymoususer;$2a$10$j8S5d7Sr7.8VTOYNviDPOeWX8KcYILUVJBsYV83Y5NtECayypx9lO;Anonymous;User;anonymous@localhost;;true;de;system;system
|
||||
3;admin;$2a$10$gSAhZrxMllrbgj/kkK9UceBPpChGWJA7SYIb1Mqo.n5aNLq1/oRrC;Administrator;Administrator;admin@localhost;;true;de;system;system
|
||||
4;user;$2a$10$VEjxo0jq2YG9Rbk2HmX9S.k1uZBGYUHdUcid3g/vfiEl7lwWgOH/K;User;User;user@localhost;;true;de;system;system
|
|
@ -0,0 +1,6 @@
|
||||
user_id;authority_name
|
||||
1;ROLE_ADMIN
|
||||
1;ROLE_USER
|
||||
3;ROLE_ADMIN
|
||||
3;ROLE_USER
|
||||
4;ROLE_USER
|
|
BIN
src/main/resources/config/tls/keystore.p12
Normal file
BIN
src/main/resources/config/tls/keystore.p12
Normal file
Binary file not shown.
21
src/main/resources/i18n/messages.properties
Normal file
21
src/main/resources/i18n/messages.properties
Normal file
@ -0,0 +1,21 @@
|
||||
# Error page
|
||||
error.title=Your request cannot be processed
|
||||
error.subtitle=Sorry, an error has occurred.
|
||||
error.status=Status:
|
||||
error.message=Message:
|
||||
|
||||
# Activation email
|
||||
email.activation.title=hsadminNg account activation
|
||||
email.activation.greeting=Dear {0}
|
||||
email.activation.text1=Your hsadminNg account has been created, please click on the URL below to activate it:
|
||||
email.activation.text2=Regards,
|
||||
email.signature=hsadminNg Team.
|
||||
|
||||
# Creation email
|
||||
email.creation.text1=Your hsadminNg account has been created, please click on the URL below to access it:
|
||||
|
||||
# Reset email
|
||||
email.reset.title=hsadminNg password reset
|
||||
email.reset.greeting=Dear {0}
|
||||
email.reset.text1=For your hsadminNg account a password reset was requested, please click on the URL below to reset it:
|
||||
email.reset.text2=Regards,
|
21
src/main/resources/i18n/messages_de.properties
Normal file
21
src/main/resources/i18n/messages_de.properties
Normal file
@ -0,0 +1,21 @@
|
||||
# Error page
|
||||
error.title=Ihre Anfrage kann nicht bearbeitet werden
|
||||
error.subtitle=Verzeihung, ein Fehler ist aufgetreten.
|
||||
error.status=Status:
|
||||
error.message=Meldung:
|
||||
|
||||
# Activation email
|
||||
email.activation.title=hsadminNg Aktivierung
|
||||
email.activation.greeting=Liebe(r) {0}
|
||||
email.activation.text1=Ihr hsadminNg Zugang wurde angelegt, bitte klicken Sie unten auf den Link, um diesen zu aktivieren:
|
||||
email.activation.text2=Grüße,
|
||||
email.signature=hsadminNg.
|
||||
|
||||
# Creation email
|
||||
email.creation.text1=Ihr hsadminNg Zugang wurde angelegt, bitte klicken Sie auf den Link um sich anzumelden:
|
||||
|
||||
# Reset email
|
||||
email.reset.title=hsadminNg Passwort zurücksetzen
|
||||
email.reset.greeting=Liebe(r) {0}
|
||||
email.reset.text1=Für Ihren hsadminNg Account wurde ein neues Passwort angefordert, bitte klicken Sie unten auf den Link, um das Passwort zurückzusetzen:
|
||||
email.reset.text2=Grüße,
|
21
src/main/resources/i18n/messages_en.properties
Normal file
21
src/main/resources/i18n/messages_en.properties
Normal file
@ -0,0 +1,21 @@
|
||||
# Error page
|
||||
error.title=Your request cannot be processed
|
||||
error.subtitle=Sorry, an error has occurred.
|
||||
error.status=Status:
|
||||
error.message=Message:
|
||||
|
||||
# Activation email
|
||||
email.activation.title=hsadminNg account activation
|
||||
email.activation.greeting=Dear {0}
|
||||
email.activation.text1=Your hsadminNg account has been created, please click on the URL below to activate it:
|
||||
email.activation.text2=Regards,
|
||||
email.signature=hsadminNg Team.
|
||||
|
||||
# Creation email
|
||||
email.creation.text1=Your hsadminNg account has been created, please click on the URL below to access it:
|
||||
|
||||
# Reset email
|
||||
email.reset.title=hsadminNg password reset
|
||||
email.reset.greeting=Dear {0}
|
||||
email.reset.text1=For your hsadminNg account a password reset was requested, please click on the URL below to reset it:
|
||||
email.reset.text2=Regards,
|
68
src/main/resources/logback-spring.xml
Normal file
68
src/main/resources/logback-spring.xml
Normal file
@ -0,0 +1,68 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE configuration>
|
||||
|
||||
<configuration scan="true">
|
||||
<include resource="org/springframework/boot/logging/logback/base.xml"/>
|
||||
|
||||
<!-- The FILE and ASYNC appenders are here as examples for a production configuration -->
|
||||
<!--
|
||||
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
|
||||
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
|
||||
<fileNamePattern>logFile.%d{yyyy-MM-dd}.log</fileNamePattern>
|
||||
<maxHistory>90</maxHistory>
|
||||
</rollingPolicy>
|
||||
<encoder>
|
||||
<charset>utf-8</charset>
|
||||
<Pattern>%d %-5level [%thread] %logger{0}: %msg%n</Pattern>
|
||||
</encoder>
|
||||
</appender>
|
||||
|
||||
<appender name="ASYNC" class="ch.qos.logback.classic.AsyncAppender">
|
||||
<queueSize>512</queueSize>
|
||||
<appender-ref ref="FILE"/>
|
||||
</appender>
|
||||
|
||||
<root level="${logging.level.root}">
|
||||
<appender-ref ref="ASYNC"/>
|
||||
</root>
|
||||
-->
|
||||
|
||||
<logger name="javax.activation" level="WARN"/>
|
||||
<logger name="javax.mail" level="WARN"/>
|
||||
<logger name="javax.management.remote" level="WARN"/>
|
||||
<logger name="javax.xml.bind" level="WARN"/>
|
||||
<logger name="ch.qos.logback" level="WARN"/>
|
||||
|
||||
<logger name="com.ryantenney" level="WARN"/>
|
||||
<logger name="com.sun" level="WARN"/>
|
||||
<logger name="com.zaxxer" level="WARN"/>
|
||||
<logger name="io.undertow" level="WARN"/>
|
||||
<logger name="io.undertow.websockets.jsr" level="ERROR"/>
|
||||
<logger name="org.ehcache" level="WARN"/>
|
||||
<logger name="org.apache" level="WARN"/>
|
||||
<logger name="org.apache.catalina.startup.DigesterFactory" level="OFF"/>
|
||||
<logger name="org.bson" level="WARN"/>
|
||||
<logger name="org.hibernate.validator" level="WARN"/>
|
||||
<logger name="org.hibernate" level="WARN"/>
|
||||
<logger name="org.hibernate.ejb.HibernatePersistence" level="OFF"/>
|
||||
<logger name="org.postgresql.jdbc" level="WARN"/>
|
||||
<logger name="org.springframework" level="WARN"/>
|
||||
<logger name="org.springframework.web" level="WARN"/>
|
||||
<logger name="org.springframework.security" level="WARN"/>
|
||||
<logger name="org.springframework.cache" level="WARN"/>
|
||||
<logger name="org.thymeleaf" level="WARN"/>
|
||||
<logger name="org.xnio" level="WARN"/>
|
||||
<logger name="springfox" level="WARN"/>
|
||||
<logger name="sun.rmi" level="WARN"/>
|
||||
<logger name="liquibase" level="WARN"/>
|
||||
<logger name="LiquibaseSchemaResolver" level="INFO"/>
|
||||
<logger name="sun.rmi.transport" level="WARN"/>
|
||||
|
||||
<!-- https://logback.qos.ch/manual/configuration.html#shutdownHook and https://jira.qos.ch/browse/LOGBACK-1090 -->
|
||||
<shutdownHook class="ch.qos.logback.core.hook.DelayingShutdownHook"/>
|
||||
|
||||
<contextListener class="ch.qos.logback.classic.jul.LevelChangePropagator">
|
||||
<resetJUL>true</resetJUL>
|
||||
</contextListener>
|
||||
|
||||
</configuration>
|
7
src/main/resources/swagger/api.yml
Normal file
7
src/main/resources/swagger/api.yml
Normal file
@ -0,0 +1,7 @@
|
||||
# API-first development with OpenAPI
|
||||
# This file will be used at compile time to generate Spring-MVC endpoint stubs using openapi-generator
|
||||
openapi: "3.0.1"
|
||||
info:
|
||||
title: "hsadminNg"
|
||||
version: 0.0.1
|
||||
paths: {}
|
163
src/main/resources/templates/error.html
Normal file
163
src/main/resources/templates/error.html
Normal file
@ -0,0 +1,163 @@
|
||||
<!DOCTYPE html>
|
||||
<html xmlns:th="http://www.thymeleaf.org" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://www.thymeleaf.org ">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
|
||||
<link rel="shortcut icon" href="${baseUrl}/favicon.ico" />
|
||||
<title>Your request cannot be processed</title>
|
||||
<style>
|
||||
::-moz-selection {
|
||||
background: #b3d4fc;
|
||||
text-shadow: none;
|
||||
}
|
||||
|
||||
::selection {
|
||||
background: #b3d4fc;
|
||||
text-shadow: none;
|
||||
}
|
||||
|
||||
html {
|
||||
padding: 30px 10px;
|
||||
font-size: 20px;
|
||||
line-height: 1.4;
|
||||
color: #737373;
|
||||
background: #f0f0f0;
|
||||
-webkit-text-size-adjust: 100%;
|
||||
-ms-text-size-adjust: 100%;
|
||||
}
|
||||
|
||||
html,
|
||||
input {
|
||||
font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
|
||||
}
|
||||
|
||||
body {
|
||||
max-width: 500px;
|
||||
_width: 500px;
|
||||
padding: 30px 20px 50px;
|
||||
border: 1px solid #b3b3b3;
|
||||
border-radius: 4px;
|
||||
margin: 0 auto;
|
||||
box-shadow: 0 1px 10px #a7a7a7, inset 0 1px 0 #fff;
|
||||
background: #fcfcfc;
|
||||
}
|
||||
|
||||
h1 {
|
||||
margin: 0 10px;
|
||||
font-size: 50px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
h1 span {
|
||||
color: #bbb;
|
||||
}
|
||||
|
||||
h3 {
|
||||
margin: 1.5em 0 0.5em;
|
||||
}
|
||||
|
||||
p {
|
||||
margin: 1em 0;
|
||||
}
|
||||
|
||||
ul {
|
||||
padding: 0 0 0 40px;
|
||||
margin: 1em 0;
|
||||
}
|
||||
|
||||
.container {
|
||||
max-width: 380px;
|
||||
_width: 380px;
|
||||
margin: 0 auto;
|
||||
}
|
||||
|
||||
/* google search */
|
||||
|
||||
#goog-fixurl ul {
|
||||
list-style: none;
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
#goog-fixurl form {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
#goog-wm-qt,
|
||||
#goog-wm-sb {
|
||||
border: 1px solid #bbb;
|
||||
font-size: 16px;
|
||||
line-height: normal;
|
||||
vertical-align: top;
|
||||
color: #444;
|
||||
border-radius: 2px;
|
||||
}
|
||||
|
||||
#goog-wm-qt {
|
||||
width: 220px;
|
||||
height: 20px;
|
||||
padding: 5px;
|
||||
margin: 5px 10px 0 0;
|
||||
box-shadow: inset 0 1px 1px #ccc;
|
||||
}
|
||||
|
||||
#goog-wm-sb {
|
||||
display: inline-block;
|
||||
height: 32px;
|
||||
padding: 0 10px;
|
||||
margin: 5px 0 0;
|
||||
white-space: nowrap;
|
||||
cursor: pointer;
|
||||
background-color: #f5f5f5;
|
||||
background-image: -webkit-linear-gradient(rgba(255, 255, 255, 0), #f1f1f1);
|
||||
background-image: -moz-linear-gradient(rgba(255, 255, 255, 0), #f1f1f1);
|
||||
background-image: -ms-linear-gradient(rgba(255, 255, 255, 0), #f1f1f1);
|
||||
background-image: -o-linear-gradient(rgba(255, 255, 255, 0), #f1f1f1);
|
||||
-webkit-appearance: none;
|
||||
-moz-appearance: none;
|
||||
appearance: none;
|
||||
*overflow: visible;
|
||||
*display: inline;
|
||||
*zoom: 1;
|
||||
}
|
||||
|
||||
#goog-wm-sb:hover,
|
||||
#goog-wm-sb:focus {
|
||||
border-color: #aaa;
|
||||
box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1);
|
||||
background-color: #f8f8f8;
|
||||
}
|
||||
|
||||
#goog-wm-qt:hover,
|
||||
#goog-wm-qt:focus {
|
||||
border-color: #105cb6;
|
||||
outline: 0;
|
||||
color: #222;
|
||||
}
|
||||
|
||||
input::-moz-focus-inner {
|
||||
padding: 0;
|
||||
border: 0;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<div class="container">
|
||||
<h1 th:text="#{error.title}">Your request cannot be processed <span>:(</span></h1>
|
||||
|
||||
<p th:text="#{error.subtitle}">Sorry, an error has occurred.</p>
|
||||
|
||||
<span th:text="#{error.status}">Status:</span> <span th:text="${error}"></span> (<span th:text="${error}"></span>)<br/>
|
||||
<span th:if="${!#strings.isEmpty(message)}">
|
||||
<span th:text="#{error.message}">Message:</span> <span th:text="${message}"></span><br/>
|
||||
</span>
|
||||
|
||||
<script th:inline="text">
|
||||
/*<![CDATA[*/
|
||||
var GOOG_FIXURL_LANG = '[[${#locale.language}]]', GOOG_FIXURL_SITE = location.host;
|
||||
/*]]>*/
|
||||
</script>
|
||||
<script src="https://linkhelp.clients.google.com/tbproxy/lh/wm/fixurl.js"></script>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
25
src/main/resources/templates/mail/activationEmail.html
Normal file
25
src/main/resources/templates/mail/activationEmail.html
Normal file
@ -0,0 +1,25 @@
|
||||
<!DOCTYPE html>
|
||||
<html xmlns:th="http://www.thymeleaf.org">
|
||||
<head>
|
||||
<title th:text="#{email.activation.title}">JHipster activation</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
|
||||
<link rel="shortcut icon" th:href="@{|${baseUrl}/favicon.ico|}" />
|
||||
</head>
|
||||
<body>
|
||||
<p th:text="#{email.activation.greeting(${user.login})}">
|
||||
Dear
|
||||
</p>
|
||||
<p th:text="#{email.activation.text1}">
|
||||
Your JHipster account has been created, please click on the URL below to activate it:
|
||||
</p>
|
||||
<p>
|
||||
<a th:with="url=(@{|${baseUrl}/#/activate?key=${user.activationKey}|})" th:href="${url}"
|
||||
th:text="${url}">Activation link</a>
|
||||
</p>
|
||||
<p>
|
||||
<span th:text="#{email.activation.text2}">Regards, </span>
|
||||
<br/>
|
||||
<em th:text="#{email.signature}">JHipster.</em>
|
||||
</p>
|
||||
</body>
|
||||
</html>
|
25
src/main/resources/templates/mail/creationEmail.html
Normal file
25
src/main/resources/templates/mail/creationEmail.html
Normal file
@ -0,0 +1,25 @@
|
||||
<!DOCTYPE html>
|
||||
<html xmlns:th="http://www.thymeleaf.org">
|
||||
<head>
|
||||
<title th:text="#{email.activation.title}">JHipster creation</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
|
||||
<link rel="shortcut icon" th:href="@{|${baseUrl}/favicon.ico|}" />
|
||||
</head>
|
||||
<body>
|
||||
<p th:text="#{email.activation.greeting(${user.login})}">
|
||||
Dear
|
||||
</p>
|
||||
<p th:text="#{email.creation.text1}">
|
||||
Your JHipster account has been created, please click on the URL below to access it:
|
||||
</p>
|
||||
<p>
|
||||
<a th:with="url=(@{|${baseUrl}/#/reset/finish?key=${user.resetKey}|})" th:href="${url}"
|
||||
th:text="${url}">Login link</a>
|
||||
</p>
|
||||
<p>
|
||||
<span th:text="#{email.activation.text2}">Regards, </span>
|
||||
<br/>
|
||||
<em th:text="#{email.signature}">JHipster.</em>
|
||||
</p>
|
||||
</body>
|
||||
</html>
|
25
src/main/resources/templates/mail/passwordResetEmail.html
Normal file
25
src/main/resources/templates/mail/passwordResetEmail.html
Normal file
@ -0,0 +1,25 @@
|
||||
<!DOCTYPE html>
|
||||
<html xmlns:th="http://www.thymeleaf.org">
|
||||
<head>
|
||||
<title th:text="#{email.reset.title}">JHipster password reset</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
|
||||
<link rel="shortcut icon" th:href="@{|${baseUrl}/favicon.ico|}" />
|
||||
</head>
|
||||
<body>
|
||||
<p th:text="#{email.reset.greeting(${user.login})}">
|
||||
Dear
|
||||
</p>
|
||||
<p th:text="#{email.reset.text1}">
|
||||
For your JHipster account a password reset was requested, please click on the URL below to reset it:
|
||||
</p>
|
||||
<p>
|
||||
<a th:with="url=(@{|${baseUrl}/#/reset/finish?key=${user.resetKey}|})" th:href="${url}"
|
||||
th:text="${url}">Login link</a>
|
||||
</p>
|
||||
<p>
|
||||
<span th:text="#{email.reset.text2}">Regards, </span>
|
||||
<br/>
|
||||
<em th:text="#{email.signature}">JHipster.</em>
|
||||
</p>
|
||||
</body>
|
||||
</html>
|
Reference in New Issue
Block a user