keycloak-aplcache
Changes
forms/common-themes/src/main/resources/theme/base/admin/messages/admin-messages_de.properties 89(+89 -0)
forms/common-themes/src/main/resources/theme/base/admin/messages/admin-messages_en.properties 89(+89 -0)
forms/common-themes/src/main/resources/theme/base/admin/resources/partials/brute-force.html 68(+34 -34)
forms/common-themes/src/main/resources/theme/base/admin/resources/partials/defense-headers.html 16(+8 -8)
forms/common-themes/src/main/resources/theme/base/admin/resources/partials/realm-cache-settings.html 16(+8 -8)
forms/common-themes/src/main/resources/theme/base/admin/resources/partials/realm-smtp.html 36(+18 -18)
forms/common-themes/src/main/resources/theme/base/admin/resources/partials/realm-theme-settings.html 40(+20 -20)
forms/common-themes/src/main/resources/theme/base/admin/resources/partials/realm-tokens.html 76(+38 -38)
forms/common-themes/src/main/resources/theme/base/admin/resources/partials/session-realm.html 12(+6 -6)
Details
diff --git a/forms/common-themes/src/main/resources/theme/base/admin/messages/admin-messages_de.properties b/forms/common-themes/src/main/resources/theme/base/admin/messages/admin-messages_de.properties
index 7721290..6442e6e 100644
--- a/forms/common-themes/src/main/resources/theme/base/admin/messages/admin-messages_de.properties
+++ b/forms/common-themes/src/main/resources/theme/base/admin/messages/admin-messages_de.properties
@@ -5,6 +5,8 @@ save=de Save
cancel=de Cancel
onText=AN
offText=AUS
+client=de Client
+clear=de Clear
# Realm settings
realm-detail.enabled.tooltip=de Users and clients can only access a realm if it's enabled
@@ -25,3 +27,90 @@ sslRequired.option.all=de all requests
sslRequired.option.external=de external requests
sslRequired.option.none=de none
sslRequired.tooltip=de Is HTTPS required? 'None' means HTTPS is not required for any client IP address. 'External requests' means localhost and private IP addresses can access without HTTPS. 'All requests' means HTTPS is required for all IP addresses.
+publicKey=de Public key
+gen-new-keys=de Generate new keys
+certificate=de Certificate
+host=de Host
+smtp-host=de SMTP Host
+port=de Port
+smtp-port=de SMTP Port (defaults to 25)
+from=de From
+sender-email-addr=de Sender Email Address
+enable-ssl=de Enable SSL
+enable-start-tls=de Enable StartTLS
+enable-auth=de Enable Authentication
+username=de Username
+login-username=de Login Username
+password=de Password
+login-password=de Login Password
+login-theme=de Login Theme
+select-one=de Select one...
+login-theme.tooltip=de Select theme for login, TOTP, grant, registration, and forgot password pages.
+account-theme=de Account Theme
+account-theme.tooltip=de Select theme for user account management pages.
+admin-console-theme=de Admin Console Theme
+select-theme-admin-console=de Select theme for admin console.
+email-theme=de Email Theme
+select-theme-email=de Select theme for emails that are sent by the server.
+i18n-enabled=de Internationalization Enabled
+supported-locales=de Supported Locales
+supported-locales.placeholder=de Type a locale and enter
+default-locale=de Default Locale
+realm-cache-enabled=de Realm Cache Enabled
+realm-cache-enabled.tooltip=de Enable/disable cache for realm, client and role data.
+user-cache-enabled=de User Cache Enabled
+user-cache-enabled.tooltip=de Enable/disable user and user role mapping cache.
+sso-session-idle=de SSO Session Idle
+seconds=de Seconds
+minutes=de Minutes
+hours=de Hours
+days=de Days
+sso-session-max=de SSO Session Max
+sso-session-idle.tooltip=de Time a session is allowed to be idle before it expires. Tokens and browser sessions are invalidated when a session is expired.
+sso-session-max.tooltip=de Max time before a session is expired. Tokens and browser sessions are invalidated when a session is expired.
+access-token-lifespan=de Access Token Lifespan
+access-token-lifespan.tooltip=de Max time before an access token is expired. This value is recommended to be short relative to the SSO timeout.
+client-login-timeout=de Client login timeout
+client-login-timeout.tooltip=de Max time an client has to finish the access token protocol. This should normally be 1 minute.
+login-timeout=de Login timeout
+login-timeout.tooltip=de Max time a user has to complete a login. This is recommended to be relatively long. 30 minutes or more.
+login-action-timeout=de Login action timeout
+login-action-timeout.tooltip=de Max time a user has to complete login related actions like update password or configure totp. This is recommended to be relatively long. 5 minutes or more.
+headers=de Headers
+brute-force-detection=de Brute Force Detection
+x-frame-options=de X-Frame-Options
+click-label-for-info=de Click on label link for more information. The default value prevents pages from being included via non-origin iframes.
+content-sec-policy=de Content-Security-Policy
+max-login-failures=de Max Login Failures
+max-login-failures.tooltip=de How many failures before wait is triggered.
+wait-increment=de Wait Increment
+wait-increment.tooltip=de When failure threshold has been met, how much time should the user be locked out?
+quick-login-check-millis=de Quick Login Check Milli Seconds
+quick-login-check-millis.tooltip=de If a failure happens concurrently too quickly, lock out the user.
+min-quick-login-wait=de Minimum Quick Login Wait
+min-quick-login-wait.tooltip=de How long to wait after a quick login failure.
+max-wait=de Max Wait
+max-wait.tooltip=de Max time a user will be locked out.
+failure-reset-time=de Failure Reset Time
+failure-reset-time.tooltip=de When will failure count be reset?
+realm-tab-login=de Login
+realm-tab-keys=de Keys
+realm-tab-email=de Email
+realm-tab-themes=de Themes
+realm-tab-cache=de Cache
+realm-tab-tokens=de Tokens
+realm-tab-security-defenses=de Security Defenses
+realm-tab-general=de General
+add-realm=de Add Realm
+
+#Session settings
+realm-sessions=de Realm Sessions
+revocation=de Revocation
+logout-all=de Logout All
+active-sessions=de Active Sessions
+sessions=de Sessions
+not-before=de Not Before
+not-before.tooltip=de Revoke any tokens issued before this date.
+set-to-now=de Set To Now
+push=de Push
+push.tooltip=de For every client that has an admin URL, notify them of the new revocation policy.
diff --git a/forms/common-themes/src/main/resources/theme/base/admin/messages/admin-messages_en.properties b/forms/common-themes/src/main/resources/theme/base/admin/messages/admin-messages_en.properties
index bb66578..be3ef2d 100644
--- a/forms/common-themes/src/main/resources/theme/base/admin/messages/admin-messages_en.properties
+++ b/forms/common-themes/src/main/resources/theme/base/admin/messages/admin-messages_en.properties
@@ -5,6 +5,8 @@ save=Save
cancel=Cancel
onText=ON
offText=OFF
+client=Client
+clear=Clear
# Realm settings
realm-detail.enabled.tooltip=Users and clients can only access a realm if it's enabled
@@ -25,3 +27,90 @@ sslRequired.option.all=all requests
sslRequired.option.external=external requests
sslRequired.option.none=none
sslRequired.tooltip=Is HTTPS required? 'None' means HTTPS is not required for any client IP address. 'External requests' means localhost and private IP addresses can access without HTTPS. 'All requests' means HTTPS is required for all IP addresses.
+publicKey=Public key
+gen-new-keys=Generate new keys
+certificate=Certificate
+host=Host
+smtp-host=SMTP Host
+port=Port
+smtp-port=SMTP Port (defaults to 25)
+from=From
+sender-email-addr=Sender Email Address
+enable-ssl=Enable SSL
+enable-start-tls=Enable StartTLS
+enable-auth=Enable Authentication
+username=Username
+login-username=Login Username
+password=Password
+login-password=Login Password
+login-theme=Login Theme
+select-one=Select one...
+login-theme.tooltip=Select theme for login, TOTP, grant, registration, and forgot password pages.
+account-theme=Account Theme
+account-theme.tooltip=Select theme for user account management pages.
+admin-console-theme=Admin Console Theme
+select-theme-admin-console=Select theme for admin console.
+email-theme=Email Theme
+select-theme-email=Select theme for emails that are sent by the server.
+i18n-enabled=Internationalization Enabled
+supported-locales=Supported Locales
+supported-locales.placeholder=Type a locale and enter
+default-locale=Default Locale
+realm-cache-enabled=Realm Cache Enabled
+realm-cache-enabled.tooltip=Enable/disable cache for realm, client and role data.
+user-cache-enabled=User Cache Enabled
+user-cache-enabled.tooltip=Enable/disable user and user role mapping cache.
+sso-session-idle=SSO Session Idle
+seconds=Seconds
+minutes=Minutes
+hours=Hours
+days=Days
+sso-session-max=SSO Session Max
+sso-session-idle.tooltip=Time a session is allowed to be idle before it expires. Tokens and browser sessions are invalidated when a session is expired.
+sso-session-max.tooltip=Max time before a session is expired. Tokens and browser sessions are invalidated when a session is expired.
+access-token-lifespan=Access Token Lifespan
+access-token-lifespan.tooltip=Max time before an access token is expired. This value is recommended to be short relative to the SSO timeout.
+client-login-timeout=Client login timeout
+client-login-timeout.tooltip=Max time an client has to finish the access token protocol. This should normally be 1 minute.
+login-timeout=Login timeout
+login-timeout.tooltip=Max time a user has to complete a login. This is recommended to be relatively long. 30 minutes or more.
+login-action-timeout=Login action timeout
+login-action-timeout.tooltip=Max time a user has to complete login related actions like update password or configure totp. This is recommended to be relatively long. 5 minutes or more.
+headers=Headers
+brute-force-detection=Brute Force Detection
+x-frame-options=X-Frame-Options
+click-label-for-info=Click on label link for more information. The default value prevents pages from being included via non-origin iframes.
+content-sec-policy=Content-Security-Policy
+max-login-failures=Max Login Failures
+max-login-failures.tooltip=How many failures before wait is triggered.
+wait-increment=Wait Increment
+wait-increment.tooltip=When failure threshold has been met, how much time should the user be locked out?
+quick-login-check-millis=Quick Login Check Milli Seconds
+quick-login-check-millis.tooltip=If a failure happens concurrently too quickly, lock out the user.
+min-quick-login-wait=Minimum Quick Login Wait
+min-quick-login-wait.tooltip=How long to wait after a quick login failure.
+max-wait=Max Wait
+max-wait.tooltip=Max time a user will be locked out.
+failure-reset-time=Failure Reset Time
+failure-reset-time.tooltip=When will failure count be reset?
+realm-tab-login=Login
+realm-tab-keys=Keys
+realm-tab-email=Email
+realm-tab-themes=Themes
+realm-tab-cache=Cache
+realm-tab-tokens=Tokens
+realm-tab-security-defenses=Security Defenses
+realm-tab-general=General
+add-realm=Add Realm
+
+#Session settings
+realm-sessions=Realm Sessions
+revocation=Revocation
+logout-all=Logout All
+active-sessions=Active Sessions
+sessions=Sessions
+not-before=Not Before
+not-before.tooltip=Revoke any tokens issued before this date.
+set-to-now=Set To Now
+push=Push
+push.tooltip=For every client that has an admin URL, notify them of the new revocation policy.
diff --git a/forms/common-themes/src/main/resources/theme/base/admin/resources/partials/brute-force.html b/forms/common-themes/src/main/resources/theme/base/admin/resources/partials/brute-force.html
index e26e126..33845c0 100755
--- a/forms/common-themes/src/main/resources/theme/base/admin/resources/partials/brute-force.html
+++ b/forms/common-themes/src/main/resources/theme/base/admin/resources/partials/brute-force.html
@@ -2,102 +2,102 @@
<kc-tabs-realm></kc-tabs-realm>
<ul class="nav nav-tabs nav-tabs-pf">
- <li><a href="#/realms/{{realm.realm}}/defense/headers">Headers</a></li>
- <li class="active"><a href="#/realms/{{realm.realm}}/defense/brute-force">Brute Force Detection</a></li>
+ <li><a href="#/realms/{{realm.realm}}/defense/headers">{{:: 'headers' | translate}}</a></li>
+ <li class="active"><a href="#/realms/{{realm.realm}}/defense/brute-force">{{:: 'brute-force-detection' | translate}}</a></li>
</ul>
<form class="form-horizontal" name="realmForm" novalidate kc-read-only="!access.manageRealm">
<fieldset class="border-top">
<div class="form-group">
- <label class="col-md-2 control-label" for="bruteForceProtected">Enabled</label>
+ <label class="col-md-2 control-label" for="bruteForceProtected">{{:: 'enabled' | translate}}</label>
<div class="col-md-6">
- <input ng-model="realm.bruteForceProtected" name="bruteForceProtected" id="bruteForceProtected" onoffswitch />
+ <input ng-model="realm.bruteForceProtected" name="bruteForceProtected" id="bruteForceProtected" onoffswitch on-text="{{:: 'onText' | translate}}" off-text="{{:: 'offText' | translate}}"/>
</div>
</div>
<div class="form-group" data-ng-show="realm.bruteForceProtected">
- <label class="col-md-2 control-label" for="failureFactor">Max Login Failures</label>
+ <label class="col-md-2 control-label" for="failureFactor">{{:: 'max-login-failures' | translate}}</label>
<div class="col-md-6">
<input class="form-control" type="number" min="1" max="31536000" id="failureFactor" name="failureFactor" data-ng-model="realm.failureFactor" autofocus
required>
</div>
- <kc-tooltip>How many failures before wait is triggered.</kc-tooltip>
+ <kc-tooltip>{{:: 'max-login-failures.tooltip' | translate}}</kc-tooltip>
</div>
<div class="form-group" data-ng-show="realm.bruteForceProtected">
- <label class="col-md-2 control-label" for="waitIncrement">Wait Increment</label>
+ <label class="col-md-2 control-label" for="waitIncrement">{{:: 'wait-increment' | translate}}</label>
<div class="col-md-6 time-selector">
<input class="form-control" type="number" required min="1"
max="31536000" data-ng-model="realm.waitIncrement"
id="waitIncrement" name="waitIncrement"/>
<select class="form-control" name="waitIncrementUnit" data-ng-model="realm.waitIncrementUnit" >
- <option data-ng-selected="!realm.waitIncrementUnit">Seconds</option>
- <option>Minutes</option>
- <option>Hours</option>
- <option>Days</option>
+ <option data-ng-selected="!realm.waitIncrementUnit" value="Seconds">{{:: 'seconds' | translate}}</option>
+ <option value="Minutes">{{:: 'minutes' | translate}}</option>
+ <option value="Hours">{{:: 'hours' | translate}}</option>
+ <option value="Days">{{:: 'days' | translate}}</option>
</select>
</div>
- <kc-tooltip>When failure threshold has been met, how much time should the user be locked out?</kc-tooltip>
+ <kc-tooltip>{{:: 'wait-increment.tooltip' | translate}}</kc-tooltip>
</div>
<div class="form-group" data-ng-show="realm.bruteForceProtected">
- <label class="col-md-2 control-label" for="quickLoginCheckMilliSeconds">Quick Login Check Milli Seconds</label>
+ <label class="col-md-2 control-label" for="quickLoginCheckMilliSeconds">{{:: 'quick-login-check-millis' | translate}}</label>
<div class="col-md-6">
<input class="form-control" type="number" min="1" max="31536000" id="quickLoginCheckMilliSeconds" name="quickLoginCheckMilliSeconds" data-ng-model="realm.quickLoginCheckMilliSeconds" autofocus
required>
</div>
- <kc-tooltip>If a failure happens concurrently too quickly, lock out the user.</kc-tooltip>
+ <kc-tooltip>{{:: 'quick-login-check-millis.tooltip' | translate}}</kc-tooltip>
</div>
<div class="form-group" data-ng-show="realm.bruteForceProtected">
- <label class="col-md-2 control-label" for="minimumQuickLoginWait">Minimum Quick Login Wait</label>
+ <label class="col-md-2 control-label" for="minimumQuickLoginWait">{{:: 'min-quick-login-wait' | translate}}</label>
<div class="col-md-6 time-selector">
<input class="form-control" type="number" required min="1"
max="31536000" data-ng-model="realm.minimumQuickLoginWait"
id="minimumQuickLoginWait" name="minimumQuickLoginWait"/>
<select class="form-control" name="minimumQuickLoginWaitUnit" data-ng-model="realm.minimumQuickLoginWaitUnit" >
- <option data-ng-selected="!realm.minimumQuickLoginWaitUnit">Seconds</option>
- <option>Minutes</option>
- <option>Hours</option>
- <option>Days</option>
+ <option data-ng-selected="!realm.minimumQuickLoginWaitUnit" value="Seconds">{{:: 'seconds' | translate}}</option>
+ <option value="Minutes">{{:: 'minutes' | translate}}</option>
+ <option value="Hours">{{:: 'hours' | translate}}</option>
+ <option value="Days">{{:: 'days' | translate}}</option>
</select>
</div>
- <kc-tooltip>How long to wait after a quick login failure.</kc-tooltip>
+ <kc-tooltip>{{:: 'min-quick-login-wait.tooltip' | translate}}</kc-tooltip>
</div>
<div class="form-group" data-ng-show="realm.bruteForceProtected">
- <label class="col-md-2 control-label" for="maxFailureWait">Max Wait</label>
+ <label class="col-md-2 control-label" for="maxFailureWait">{{:: 'max-wait' | translate}}</label>
<div class="col-md-6 time-selector">
<input class="form-control" type="number" required min="1"
max="31536000" data-ng-model="realm.maxFailureWait"
id="maxFailureWait" name="maxFailureWait"/>
<select class="form-control" name="maxFailureWaitUnit" data-ng-model="realm.maxFailureWaitUnit" >
- <option data-ng-selected="!realm.maxFailureWaitUnit">Seconds</option>
- <option>Minutes</option>
- <option>Hours</option>
- <option>Days</option>
+ <option data-ng-selected="!realm.maxFailureWaitUnit" value="Seconds">{{:: 'seconds' | translate}}</option>
+ <option value="Minutes">{{:: 'minutes' | translate}}</option>
+ <option value="Hours">{{:: 'hours' | translate}}</option>
+ <option value="Days">{{:: 'days' | translate}}</option>
</select>
</div>
- <kc-tooltip>Max time a user will be locked out.</kc-tooltip>
+ <kc-tooltip>{{:: 'max-wait.tooltip' | translate}}</kc-tooltip>
</div>
<div class="form-group" data-ng-show="realm.bruteForceProtected">
- <label class="col-md-2 control-label" for="maxDeltaTime">Failure Reset Time</label>
+ <label class="col-md-2 control-label" for="maxDeltaTime">{{:: 'failure-reset-time' | translate}}</label>
<div class="col-md-6 time-selector">
<input class="form-control" type="number" required min="1"
max="31536000" data-ng-model="realm.maxDeltaTime"
id="maxDeltaTime" name="maxDeltaTime"/>
<select class="form-control" name="maxDeltaTimeUnit" data-ng-model="realm.maxDeltaTimeUnit" >
- <option data-ng-selected="!realm.maxDeltaTimeUnit">Seconds</option>
- <option>Minutes</option>
- <option>Hours</option>
- <option>Days</option>
+ <option data-ng-selected="!realm.maxDeltaTimeUnit" value="Seconds">{{:: 'seconds' | translate}}</option>
+ <option value="Minutes">{{:: 'minutes' | translate}}</option>
+ <option value="Hours">{{:: 'hours' | translate}}</option>
+ <option value="Days">{{:: 'days' | translate}}</option>
</select>
</div>
- <kc-tooltip>When will failure count be reset?</kc-tooltip>
+ <kc-tooltip>{{:: 'failure-reset-time.tooltip' | translate}}</kc-tooltip>
</div>
</fieldset>
<div class="form-group" data-ng-show="access.manageRealm">
<div class="col-md-10 col-md-offset-2">
- <button kc-save data-ng-disabled="!changed">Save</button>
- <button kc-reset data-ng-disabled="!changed">Cancel</button>
+ <button kc-save data-ng-disabled="!changed">{{:: 'save' | translate}}</button>
+ <button kc-reset data-ng-disabled="!changed">{{:: 'cancel' | translate}}</button>
</div>
</div>
</form>
diff --git a/forms/common-themes/src/main/resources/theme/base/admin/resources/partials/defense-headers.html b/forms/common-themes/src/main/resources/theme/base/admin/resources/partials/defense-headers.html
index c6bd5b7..aa1dc4e 100755
--- a/forms/common-themes/src/main/resources/theme/base/admin/resources/partials/defense-headers.html
+++ b/forms/common-themes/src/main/resources/theme/base/admin/resources/partials/defense-headers.html
@@ -2,31 +2,31 @@
<kc-tabs-realm></kc-tabs-realm>
<ul class="nav nav-tabs nav-tabs-pf">
- <li class="active"><a href="#/realms/{{realm.realm}}/defense/headers">Headers</a></li>
- <li><a href="#/realms/{{realm.realm}}/defense/brute-force">Brute Force Detection</a></li>
+ <li class="active"><a href="#/realms/{{realm.realm}}/defense/headers">{{:: 'headers' | translate}}</a></li>
+ <li><a href="#/realms/{{realm.realm}}/defense/brute-force">{{:: 'brute-force-detection' | translate}}</a></li>
</ul>
<form class="form-horizontal" name="realmForm" novalidate kc-read-only="!access.manageRealm">
<fieldset class="border-top">
<div class="form-group">
- <label class="col-md-2 control-label" for="xFrameOptions"><a href="http://tools.ietf.org/html/rfc7034">X-Frame-Options</a></label>
+ <label class="col-md-2 control-label" for="xFrameOptions"><a href="http://tools.ietf.org/html/rfc7034">{{:: 'x-frame-options' | translate}}</a></label>
<div class="col-sm-6">
<input class="form-control" id="xFrameOptions" type="text" ng-model="realm.browserSecurityHeaders.xFrameOptions">
</div>
- <kc-tooltip>Click on label link for more information. The default value prevents pages from being included via non-origin iframes.</kc-tooltip>
+ <kc-tooltip>{{:: 'click-label-for-info' | translate}}</kc-tooltip>
</div>
<div class="form-group">
- <label class="col-md-2 control-label" for="contentSecurityPolicy"><a href="http://www.w3.org/TR/CSP/">Content-Security-Policy</a></label>
+ <label class="col-md-2 control-label" for="contentSecurityPolicy"><a href="http://www.w3.org/TR/CSP/">{{:: 'content-sec-policy' | translate}}</a></label>
<div class="col-sm-6">
<input class="form-control" id="contentSecurityPolicy" type="text" ng-model="realm.browserSecurityHeaders.contentSecurityPolicy">
</div>
- <kc-tooltip>Click on label link for more information. The default value prevents pages from being included via non-origin iframes.</kc-tooltip>
+ <kc-tooltip>{{:: 'click-label-for-info' | translate}}</kc-tooltip>
</div>
</fieldset>
<div class="form-group" data-ng-show="access.manageRealm">
<div class="col-md-10 col-md-offset-2">
- <button kc-save data-ng-disabled="!changed">Save</button>
- <button kc-reset data-ng-disabled="!changed">Cancel</button>
+ <button kc-save data-ng-disabled="!changed">{{:: 'save' | translate}}</button>
+ <button kc-reset data-ng-disabled="!changed">{{:: 'cancel' | translate}}</button>
</div>
</div>
</form>
diff --git a/forms/common-themes/src/main/resources/theme/base/admin/resources/partials/realm-cache-settings.html b/forms/common-themes/src/main/resources/theme/base/admin/resources/partials/realm-cache-settings.html
index c7f9b26..db26796 100755
--- a/forms/common-themes/src/main/resources/theme/base/admin/resources/partials/realm-cache-settings.html
+++ b/forms/common-themes/src/main/resources/theme/base/admin/resources/partials/realm-cache-settings.html
@@ -3,24 +3,24 @@
<form class="form-horizontal" name="realmForm" novalidate kc-read-only="!access.manageRealm">
<div class="form-group">
- <label class="col-md-2 control-label" for="realmCacheEnabled">Realm Cache Enabled</label>
+ <label class="col-md-2 control-label" for="realmCacheEnabled">{{:: 'realm-cache-enabled' | translate}}</label>
<div class="col-md-6">
- <input ng-model="realm.realmCacheEnabled" name="realmCacheEnabled" id="realmCacheEnabled" onoffswitch />
+ <input ng-model="realm.realmCacheEnabled" name="realmCacheEnabled" id="realmCacheEnabled" onoffswitch on-text="{{:: 'onText' | translate}}" off-text="{{:: 'offText' | translate}}"/>
</div>
- <kc-tooltip>Enable/disable cache for realm, client and role data.</kc-tooltip>
+ <kc-tooltip>{{:: 'realm-cache-enabled.tooltip' | translate}}</kc-tooltip>
</div>
<div class="form-group">
- <label class="col-md-2 control-label" for="userCacheEnabled">User Cache Enabled</label>
+ <label class="col-md-2 control-label" for="userCacheEnabled">{{:: 'user-cache-enabled' | translate}}</label>
<div class="col-md-6">
- <input ng-model="realm.userCacheEnabled" name="userCacheEnabled" id="userCacheEnabled" onoffswitch />
+ <input ng-model="realm.userCacheEnabled" name="userCacheEnabled" id="userCacheEnabled" onoffswitch on-text="{{:: 'onText' | translate}}" off-text="{{:: 'offText' | translate}}"/>
</div>
- <kc-tooltip>Enable/disable user and user role mapping cache.</kc-tooltip>
+ <kc-tooltip>{{:: 'user-cache-enabled.tooltip' | translate}}</kc-tooltip>
</div>
<div class="form-group" data-ng-show="access.manageRealm">
<div class="col-md-10 col-md-offset-2">
- <button kc-save data-ng-disabled="!changed">Save</button>
- <button kc-reset data-ng-disabled="!changed">Cancel</button>
+ <button kc-save data-ng-disabled="!changed">{{:: 'save' | translate}}</button>
+ <button kc-reset data-ng-disabled="!changed">{{:: 'cancel' | translate}}</button>
</div>
</div>
</form>
diff --git a/forms/common-themes/src/main/resources/theme/base/admin/resources/partials/realm-keys.html b/forms/common-themes/src/main/resources/theme/base/admin/resources/partials/realm-keys.html
index ddda540..93301af 100755
--- a/forms/common-themes/src/main/resources/theme/base/admin/resources/partials/realm-keys.html
+++ b/forms/common-themes/src/main/resources/theme/base/admin/resources/partials/realm-keys.html
@@ -4,7 +4,7 @@
<form class="form-horizontal" name="realmForm" novalidate kc-read-only="!access.manageRealm">
<fieldset class="border-top">
<div class="form-group">
- <label class="col-md-2 control-label" for="publicKey">Public key</label>
+ <label class="col-md-2 control-label" for="publicKey">{{:: 'publicKey' | translate}}</label>
<div class="col-md-10">
<textarea type="text" id="publicKey" name="publicKey" class="form-control" rows="4"
@@ -12,7 +12,7 @@
</div>
</div>
<div class="form-group">
- <label class="col-md-2 control-label" for="certificate">Certificate</label>
+ <label class="col-md-2 control-label" for="certificate">{{:: 'certificate' | translate}}</label>
<div class="col-md-10">
<textarea type="text" id="certificate" name="certificate" class="form-control" rows="8" kc-select-action="click" readonly>{{realm.certificate}}</textarea>
@@ -22,7 +22,7 @@
<div class="form-group" data-ng-show="access.manageRealm">
<div class="col-md-10 col-md-offset-2">
- <button class="btn btn-danger" type="submit" data-ng-click="generate()">Generate new keys</button>
+ <button class="btn btn-danger" type="submit" data-ng-click="generate()">{{:: 'gen-new-keys' | translate}}</button>
</div>
</div>
</form>
diff --git a/forms/common-themes/src/main/resources/theme/base/admin/resources/partials/realm-smtp.html b/forms/common-themes/src/main/resources/theme/base/admin/resources/partials/realm-smtp.html
index be703d4..f9b5f6b 100755
--- a/forms/common-themes/src/main/resources/theme/base/admin/resources/partials/realm-smtp.html
+++ b/forms/common-themes/src/main/resources/theme/base/admin/resources/partials/realm-smtp.html
@@ -3,59 +3,59 @@
<form class="form-horizontal" name="realmForm" novalidate kc-read-only="!access.manageRealm">
<div class="form-group clearfix">
- <label class="col-md-2 control-label" for="smtpHost"><span class="required">*</span> Host</label>
+ <label class="col-md-2 control-label" for="smtpHost"><span class="required">*</span> {{:: 'host' | translate}}</label>
<div class="col-md-6">
- <input class="form-control" id="smtpHost" type="text" ng-model="realm.smtpServer.host" placeholder="SMTP Host" required>
+ <input class="form-control" id="smtpHost" type="text" ng-model="realm.smtpServer.host" placeholder="{{:: 'smtp-host' | translate}}" required>
</div>
</div>
<div class="form-group clearfix">
- <label class="col-md-2 control-label" for="smtpPort">Port</label>
+ <label class="col-md-2 control-label" for="smtpPort">{{:: 'port' | translate}}</label>
<div class="col-md-6">
- <input class="form-control" id="smtpPort" type="number" ng-model="realm.smtpServer.port" placeholder="SMTP Port (defaults to 25)">
+ <input class="form-control" id="smtpPort" type="number" ng-model="realm.smtpServer.port" placeholder="{{:: 'smtp-port' | translate}}">
</div>
</div>
<div class="form-group clearfix">
- <label class="col-md-2 control-label" for="smtpFrom"><span class="required">*</span> From</label>
+ <label class="col-md-2 control-label" for="smtpFrom"><span class="required">*</span> {{:: 'from' | translate}}</label>
<div class="col-md-6">
- <input class="form-control" id="smtpFrom" type="email" ng-model="realm.smtpServer.from" placeholder="Sender Email Address" required>
+ <input class="form-control" id="smtpFrom" type="email" ng-model="realm.smtpServer.from" placeholder="{{:: 'sender-email-addr' | translate}}" required>
</div>
</div>
<div class="form-group clearfix">
- <label class="col-md-2 control-label" for="smtpSSL">Enable SSL</label>
+ <label class="col-md-2 control-label" for="smtpSSL">{{:: 'enable-ssl' | translate}}</label>
<div class="col-md-6">
- <input ng-model="realm.smtpServer.ssl" name="smtpSSL" id="smtpSSL" onoffswitch />
+ <input ng-model="realm.smtpServer.ssl" name="smtpSSL" id="smtpSSL" onoffswitch onoffswitch on-text="{{:: 'onText' | translate}}" off-text="{{:: 'offText' | translate}}"/>
</div>
</div>
<div class="form-group clearfix">
- <label class="col-md-2 control-label" for="smtpStartTLS">Enable StartTLS</label>
+ <label class="col-md-2 control-label" for="smtpStartTLS">{{:: 'enable-start-tls' | translate}}</label>
<div class="col-md-6">
- <input ng-model="realm.smtpServer.starttls" name="smtpStartTLS" id="smtpStartTLS" onoffswitch />
+ <input ng-model="realm.smtpServer.starttls" name="smtpStartTLS" id="smtpStartTLS" onoffswitch onoffswitch on-text="{{:: 'onText' | translate}}" off-text="{{:: 'offText' | translate}}"/>
</div>
</div>
<div class="form-group clearfix">
- <label class="col-md-2 control-label" for="smtpAuth">Enable Authentication</label>
+ <label class="col-md-2 control-label" for="smtpAuth">{{:: 'enable-auth' | translate}}</label>
<div class="col-md-6">
- <input ng-model="realm.smtpServer.auth" name="smtpAuth" id="smtpAuth" onoffswitch />
+ <input ng-model="realm.smtpServer.auth" name="smtpAuth" id="smtpAuth" onoffswitch onoffswitch on-text="{{:: 'onText' | translate}}" off-text="{{:: 'offText' | translate}}"/>
</div>
</div>
<div class="form-group clearfix" data-ng-show="realm.smtpServer.auth">
- <label class="col-md-2 control-label" for="smtpUsername"><span class="required">*</span> Username</span></label>
+ <label class="col-md-2 control-label" for="smtpUsername"><span class="required">*</span> {{:: 'username' | translate}}</span></label>
<div class="col-md-6">
- <input class="form-control" id="smtpUsername" type="text" ng-model="realm.smtpServer.user" placeholder="Login Username" ng-disabled="!realm.smtpServer.auth" ng-required="realm.smtpServer.auth">
+ <input class="form-control" id="smtpUsername" type="text" ng-model="realm.smtpServer.user" placeholder="{{:: 'login-username' | translate}}" ng-disabled="!realm.smtpServer.auth" ng-required="realm.smtpServer.auth">
</div>
</div>
<div class="form-group clearfix" data-ng-show="realm.smtpServer.auth">
- <label class="col-md-2 control-label" for="smtpPassword"><span class="required">*</span> Password</label>
+ <label class="col-md-2 control-label" for="smtpPassword"><span class="required">*</span> {{:: 'password' | translate}}</label>
<div class="col-md-6">
- <input class="form-control" id="smtpPassword" type="password" ng-model="realm.smtpServer.password" placeholder="Login Password" ng-disabled="!realm.smtpServer.auth" ng-required="realm.smtpServer.auth">
+ <input class="form-control" id="smtpPassword" type="password" ng-model="realm.smtpServer.password" placeholder="{{:: 'login-password' | translate}}" ng-disabled="!realm.smtpServer.auth" ng-required="realm.smtpServer.auth">
</div>
</div>
<div class="form-group" data-ng-show="access.manageRealm">
<div class="col-md-10 col-md-offset-2">
- <button data-kc-save data-ng-disabled="!changed">Save</button>
- <button data-kc-reset data-ng-disabled="!changed">Cancel</button>
+ <button data-kc-save data-ng-disabled="!changed">{{:: 'save' | translate}}</button>
+ <button data-kc-reset data-ng-disabled="!changed">{{:: 'cancel' | translate}}</button>
</div>
</div>
</form>
diff --git a/forms/common-themes/src/main/resources/theme/base/admin/resources/partials/realm-theme-settings.html b/forms/common-themes/src/main/resources/theme/base/admin/resources/partials/realm-theme-settings.html
index caecc6d..4d77b89 100755
--- a/forms/common-themes/src/main/resources/theme/base/admin/resources/partials/realm-theme-settings.html
+++ b/forms/common-themes/src/main/resources/theme/base/admin/resources/partials/realm-theme-settings.html
@@ -4,72 +4,72 @@
<form class="form-horizontal" name="realmForm" novalidate kc-read-only="!access.manageRealm">
<fieldset class="border-top">
<div class="form-group">
- <label class="col-md-2 control-label" for="loginTheme">Login Theme</label>
+ <label class="col-md-2 control-label" for="loginTheme">{{:: 'login-theme' | translate}}</label>
<div class="col-md-3">
<div>
<select class="form-control" id="loginTheme"
ng-model="realm.loginTheme"
ng-options="o as o for o in serverInfo.themes.login">
- <option value="" disabled selected>Select one...</option>
+ <option value="" disabled selected>{{:: 'select-one' | translate}}</option>
</select>
</div>
</div>
- <kc-tooltip>Select theme for login, TOTP, grant, registration, and forgot password pages.</kc-tooltip>
+ <kc-tooltip>{{:: 'login-theme.tooltip' | translate}}</kc-tooltip>
</div>
<div class="form-group">
- <label class="col-md-2 control-label" for="accountTheme">Account Theme</label>
+ <label class="col-md-2 control-label" for="accountTheme">{{:: 'account-theme' | translate}}</label>
<div class="col-md-3">
<div>
<select class="form-control" id="accountTheme"
ng-model="realm.accountTheme"
ng-options="o as o for o in serverInfo.themes.account">
- <option value="" disabled selected>Select one...</option>
+ <option value="" disabled selected>{{:: 'select-one' | translate}}</option>
</select>
</div>
</div>
- <kc-tooltip>Select theme for user account management pages.</kc-tooltip>
+ <kc-tooltip>{{ 'account-theme.tooltip' | translate}}</kc-tooltip>
</div>
<div class="form-group">
- <label class="col-md-2 control-label" for="adminTheme">Admin Console Theme</label>
+ <label class="col-md-2 control-label" for="adminTheme">{{:: 'admin-console-theme' | translate}}</label>
<div class="col-md-3">
<div>
<select class="form-control" id="adminTheme"
ng-model="realm.adminTheme"
ng-options="o as o for o in serverInfo.themes.admin">
- <option value="" disabled selected>Select one...</option>
+ <option value="" disabled selected>{{:: 'select-one' | translate}}</option>
</select>
</div>
</div>
- <kc-tooltip>Select theme for admin console.</kc-tooltip>
+ <kc-tooltip>{{:: 'select-theme-admin-console' | translate}}</kc-tooltip>
</div>
<div class="form-group">
- <label class="col-md-2 control-label" for="emailTheme">Email Theme</label>
+ <label class="col-md-2 control-label" for="emailTheme">{{:: 'email-theme' | translate}}</label>
<div class="col-md-3">
<div>
<select class="form-control" id="emailTheme"
ng-model="realm.emailTheme"
ng-options="o as o for o in serverInfo.themes.email">
- <option value="" disabled selected>Select one...</option>
+ <option value="" disabled selected>{{:: 'select-one' | translate}}</option>
</select>
</div>
</div>
- <kc-tooltip>Select theme for emails that are sent by the server.</kc-tooltip>
+ <kc-tooltip>{{:: 'select-theme-email' | translate}}</kc-tooltip>
</div>
<div class="form-group">
- <label class="col-md-2 control-label" for="internationalizationEnabled">Internationalization Enabled</label>
+ <label class="col-md-2 control-label" for="internationalizationEnabled">{{:: 'i18n-enabled' | translate}}</label>
<div class="col-md-3">
- <input ng-model="realm.internationalizationEnabled" name="internationalizationEnabled" id="internationalizationEnabled" onoffswitch />
+ <input ng-model="realm.internationalizationEnabled" name="internationalizationEnabled" id="internationalizationEnabled" onoffswitch on-text="{{:: 'onText' | translate}}" off-text="{{:: 'offText' | translate}}"/>
</div>
</div>
<div class="form-group" data-ng-show="realm.internationalizationEnabled">
- <label class="col-md-2 control-label" for="supportedLocales" class="control-label two-lines">Supported Locales</label>
+ <label class="col-md-2 control-label" for="supportedLocales" class="control-label two-lines">{{:: 'supported-locales' | translate}}</label>
<div class="col-md-6">
- <input id="supportedLocales" type="text" ui-select2="supportedLocalesOptions" ng-model="realm.supportedLocales" placeholder="Type a locale and enter" ng-required="realm.internationalizationEnabled" ng-disabled="!realm.internationalizationEnabled">
+ <input id="supportedLocales" type="text" ui-select2="supportedLocalesOptions" ng-model="realm.supportedLocales" placeholder="{{:: 'supported-locales.placeholder' | translate}}" ng-required="realm.internationalizationEnabled" ng-disabled="!realm.internationalizationEnabled">
</div>
</div>
<div class="form-group" data-ng-show="realm.internationalizationEnabled">
- <label class="col-md-2 control-label" for="defaultLocale">Default Locale</label>
+ <label class="col-md-2 control-label" for="defaultLocale">{{:: 'default-locale' | translate}}</label>
<div class="col-md-3">
<div>
<select class="form-control" id="defaultLocale"
@@ -77,7 +77,7 @@
ng-options="o as o for o in realm.supportedLocales"
ng-required="realm.internationalizationEnabled"
ng-disabled="!realm.internationalizationEnabled">
- <option value="" disabled selected>Select one...</option>
+ <option value="" disabled selected>{{:: 'select-one' | translate}}</option>
</select>
</div>
</div>
@@ -86,8 +86,8 @@
<div class="form-group" data-ng-show="access.manageRealm">
<div class="col-md-10 col-md-offset-2">
- <button kc-save data-ng-disabled="!changed">Save</button>
- <button kc-reset data-ng-disabled="!changed">Cancel</button>
+ <button kc-save data-ng-disabled="!changed">{{:: 'save' | translate}}</button>
+ <button kc-reset data-ng-disabled="!changed">{{:: 'cancel' | translate}}</button>
</div>
</div>
</form>
diff --git a/forms/common-themes/src/main/resources/theme/base/admin/resources/partials/realm-tokens.html b/forms/common-themes/src/main/resources/theme/base/admin/resources/partials/realm-tokens.html
index 56ed0d7..a44b939 100755
--- a/forms/common-themes/src/main/resources/theme/base/admin/resources/partials/realm-tokens.html
+++ b/forms/common-themes/src/main/resources/theme/base/admin/resources/partials/realm-tokens.html
@@ -4,110 +4,110 @@
<form class="form-horizontal" name="realmForm" novalidate kc-read-only="!access.manageRealm">
<div class="form-group">
- <label class="col-md-2 control-label" for="ssoSessionIdleTimeout">SSO Session Idle</label>
+ <label class="col-md-2 control-label" for="ssoSessionIdleTimeout">{{:: 'sso-session-idle' | translate}}</label>
<div class="col-md-6 time-selector">
<input class="form-control" type="number" required min="1" max="31536000" data-ng-model="realm.ssoSessionIdleTimeout" id="ssoSessionIdleTimeout"
name="ssoSessionIdleTimeout"/>
<select class="form-control" name="ssoSessionIdleTimeoutUnit" data-ng-model="realm.ssoSessionIdleTimeoutUnit">
- <option data-ng-selected="!realm.ssoSessionIdleTimeoutUnit">Seconds</option>
- <option>Minutes</option>
- <option>Hours</option>
- <option>Days</option>
+ <option data-ng-selected="!realm.ssoSessionIdleTimeoutUnit" value="Seconds">{{:: 'seconds' | translate}}</option>
+ <option value="Minutes">{{:: 'minutes' | translate}}</option>
+ <option value="Hours">{{:: 'hours' | translate}}</option>
+ <option value="Days">{{:: 'days' | translate}}</option>
</select>
</div>
- <kc-tooltip>Time a session is allowed to be idle before it expires. Tokens and browser sessions are invalidated when a session is expired.
+ <kc-tooltip>{{:: 'sso-session-idle.tooltip' | translate}}
</kc-tooltip>
</div>
<div class="form-group">
- <label class="col-md-2 control-label" for="ssoSessionMaxLifespan">SSO Session Max</label>
+ <label class="col-md-2 control-label" for="ssoSessionMaxLifespan">{{:: 'sso-session-max' | translate}}</label>
<div class="col-md-6 time-selector">
<input class="form-control" type="number" required min="1"
max="31536000" data-ng-model="realm.ssoSessionMaxLifespan"
id="ssoSessionMaxLifespan" name="ssoSessionMaxLifespan"/>
<select class="form-control" name="ssoSessionMaxLifespanUnit" data-ng-model="realm.ssoSessionMaxLifespanUnit">
- <option data-ng-selected="!realm.ssoSessionMaxLifespanUnit">Seconds</option>
- <option>Minutes</option>
- <option>Hours</option>
- <option>Days</option>
+ <option data-ng-selected="!realm.ssoSessionMaxLifespanUnit" value="Seconds">{{:: 'seconds' | translate}}</option>
+ <option value="Minutes">{{:: 'minutes' | translate}}</option>
+ <option value="Hours">{{:: 'hours' | translate}}</option>
+ <option value="Days">{{:: 'days' | translate}}</option>
</select>
</div>
- <kc-tooltip>Max time before a session is expired. Tokens and browser sessions are invalidated when a session is expired.</kc-tooltip>
+ <kc-tooltip>{{:: 'sso-session-max.tooltip' | translate}}</kc-tooltip>
</div>
<div class="form-group">
- <label class="col-md-2 control-label" for="accessTokenLifespan">Access Token Lifespan</label>
+ <label class="col-md-2 control-label" for="accessTokenLifespan">{{:: 'access-token-lifespan' | translate}}</label>
<div class="col-md-6 time-selector">
<input class="form-control" type="number" required min="1"
max="31536000" data-ng-model="realm.accessTokenLifespan"
id="accessTokenLifespan" name="accessTokenLifespan"/>
<select class="form-control" name="accessTokenLifespanUnit" data-ng-model="realm.accessTokenLifespanUnit">
- <option data-ng-selected="!realm.accessTokenLifespanUnit">Seconds</option>
- <option>Minutes</option>
- <option>Hours</option>
- <option>Days</option>
+ <option data-ng-selected="!realm.accessTokenLifespanUnit" value="Seconds">{{:: 'seconds' | translate}}</option>
+ <option value="Minutes">{{:: 'minutes' | translate}}</option>
+ <option value="Hours">{{:: 'hours' | translate}}</option>
+ <option value="Days">{{:: 'days' | translate}}</option>
</select>
</div>
- <kc-tooltip>Max time before an access token is expired. This value is recommended to be short relative to the SSO timeout.</kc-tooltip>
+ <kc-tooltip>{{:: 'access-token-lifespan.tooltip' | translate}}</kc-tooltip>
</div>
<div class="form-group">
- <label class="col-md-2 control-label" for="accessCodeLifespan">Client login timeout</label>
+ <label class="col-md-2 control-label" for="accessCodeLifespan">{{:: 'client-login-timeout' | translate}}</label>
<div class="col-md-6 time-selector">
<input class="form-control" type="number" required min="1" max="31536000" data-ng-model="realm.accessCodeLifespan" id="accessCodeLifespan"
name="accessCodeLifespan">
<select class="form-control" name="accessCodeLifespanUnit" data-ng-model="realm.accessCodeLifespanUnit">
- <option data-ng-selected="!realm.accessCodeLifespanUnit">Seconds</option>
- <option>Minutes</option>
- <option>Hours</option>
- <option>Days</option>
+ <option data-ng-selected="!realm.accessCodeLifespanUnit" value="Seconds">{{:: 'seconds' | translate}}</option>
+ <option value="Minutes">{{:: 'minutes' | translate}}</option>
+ <option value="Hours">{{:: 'hours' | translate}}</option>
+ <option value="Days">{{:: 'days' | translate}}</option>
</select>
</div>
- <kc-tooltip>Max time an client has to finish the access token protocol. This should normally be 1 minute.</kc-tooltip>
+ <kc-tooltip>{{:: 'client-login-timeout.tooltip' | translate}}</kc-tooltip>
</div>
<div class="form-group">
- <label class="col-md-2 control-label" for="accessCodeLifespanLogin" class="two-lines">Login timeout</label>
+ <label class="col-md-2 control-label" for="accessCodeLifespanLogin" class="two-lines">{{:: 'login-timeout' | translate}}</label>
<div class="col-md-6 time-selector">
<input class="form-control" type="number" required min="1" max="31536000" data-ng-model="realm.accessCodeLifespanLogin"
id="accessCodeLifespanLogin" name="accessCodeLifespanLogin">
<select class="form-control" name="accessCodeLifespanLoginUnit" data-ng-model="realm.accessCodeLifespanLoginUnit">
- <option data-ng-selected="!realm.accessCodeLifespanLoginUnit">Seconds</option>
- <option>Minutes</option>
- <option>Hours</option>
- <option>Days</option>
+ <option data-ng-selected="!realm.accessCodeLifespanLoginUnit" value="Seconds">{{:: 'seconds' | translate}}</option>
+ <option value="Minutes">{{:: 'minutes' | translate}}</option>
+ <option value="Hours">{{:: 'hours' | translate}}</option>
+ <option value="Days">{{:: 'days' | translate}}</option>
</select>
</div>
- <kc-tooltip>Max time a user has to complete a login. This is recommended to be relatively long. 30 minutes or more.</kc-tooltip>
+ <kc-tooltip>{{:: 'login-timeout' | translate}}</kc-tooltip>
</div>
<div class="form-group">
- <label class="col-md-2 control-label" for="accessCodeLifespanUserAction" class="two-lines">Login action timeout</label>
+ <label class="col-md-2 control-label" for="accessCodeLifespanUserAction" class="two-lines">{{:: 'login-action-timeout' | translate}}</label>
<div class="col-md-6 time-selector">
<input class="form-control" type="number" required min="1" max="31536000" data-ng-model="realm.accessCodeLifespanUserAction"
id="accessCodeLifespanUserAction" name="accessCodeLifespanUserAction">
<select class="form-control" name="accessCodeLifespanUserActionUnit" data-ng-model="realm.accessCodeLifespanUserActionUnit">
- <option data-ng-selected="!realm.accessCodeLifespanUserActionUnit">Seconds</option>
- <option>Minutes</option>
- <option>Hours</option>
- <option>Days</option>
+ <option data-ng-selected="!realm.accessCodeLifespanUserActionUnit" value="Seconds">{{:: 'seconds' | translate}}</option>
+ <option value="Minutes">{{:: 'minutes' | translate}}</option>
+ <option value="Hours">{{:: 'hours' | translate}}</option>
+ <option value="Days">{{:: 'days' | translate}}</option>
</select>
</div>
<kc-tooltip>
- Max time a user has to complete login related actions like update password or configure totp. This is recommended to be relatively long. 5 minutes or more.
+ {{:: 'login-action-timeout.tooltip' | translate}}
</kc-tooltip>
</div>
<div class="form-group">
<div class="col-md-10 col-md-offset-2" data-ng-show="access.manageRealm">
- <button kc-save data-ng-disabled="!changed">Save</button>
- <button kc-reset data-ng-disabled="!changed">Cancel</button>
+ <button kc-save data-ng-disabled="!changed">{{:: 'save' | translate}}</button>
+ <button kc-reset data-ng-disabled="!changed">{{:: 'cancel' | translate}}</button>
</div>
</div>
diff --git a/forms/common-themes/src/main/resources/theme/base/admin/resources/partials/session-realm.html b/forms/common-themes/src/main/resources/theme/base/admin/resources/partials/session-realm.html
index 5410f09..e724d95 100755
--- a/forms/common-themes/src/main/resources/theme/base/admin/resources/partials/session-realm.html
+++ b/forms/common-themes/src/main/resources/theme/base/admin/resources/partials/session-realm.html
@@ -1,9 +1,9 @@
<div class="col-sm-9 col-md-10 col-sm-push-3 col-md-push-2">
- <h1>Sessions</h1>
+ <h1>{{:: 'sessions' | translate}}</h1>
<ul class="nav nav-tabs">
- <li class="active"><a href="#/realms/{{realm.realm}}/sessions/realm">Realm Sessions</a></li>
- <li><a href="#/realms/{{realm.realm}}/sessions/revocation">Revocation</a></li>
+ <li class="active"><a href="#/realms/{{realm.realm}}/sessions/realm">{{:: 'realm-sessions' | translate}}</a></li>
+ <li><a href="#/realms/{{realm.realm}}/sessions/revocation">{{:: 'revocation' | translate}}</a></li>
</ul>
<table class="table table-striped table-bordered">
@@ -11,13 +11,13 @@
<tr>
<th class="kc-table-actions" colspan="3">
<div class="pull-right">
- <a id="logoutAllSessions" class="btn btn-default" ng-click="logoutAll()">Logout All</a>
+ <a id="logoutAllSessions" class="btn btn-default" ng-click="logoutAll()">{{:: 'logout-all' | translate}}</a>
</div>
</th>
</tr>
<tr>
- <th>Client</th>
- <th>Active Sessions</th>
+ <th>{{:: 'client' | translate}}</th>
+ <th>{{:: 'active-sessions' | translate}}</th>
</tr>
</thead>
<tbody>
diff --git a/forms/common-themes/src/main/resources/theme/base/admin/resources/partials/session-revocation.html b/forms/common-themes/src/main/resources/theme/base/admin/resources/partials/session-revocation.html
index 52296e4..03c6864 100755
--- a/forms/common-themes/src/main/resources/theme/base/admin/resources/partials/session-revocation.html
+++ b/forms/common-themes/src/main/resources/theme/base/admin/resources/partials/session-revocation.html
@@ -1,27 +1,27 @@
<div class="col-sm-9 col-md-10 col-sm-push-3 col-md-push-2">
- <h1>Sessions</h1>
+ <h1>{{:: 'sessions' | translate}}</h1>
<ul class="nav nav-tabs">
- <li><a href="#/realms/{{realm.realm}}/sessions/realm">Realm Sessions</a></li>
- <li class="active"><a href="#/realms/{{realm.realm}}/sessions/revocation">Revocation</a></li>
+ <li><a href="#/realms/{{realm.realm}}/sessions/realm">{{:: 'realm-sessions' | translate}}</a></li>
+ <li class="active"><a href="#/realms/{{realm.realm}}/sessions/revocation">{{:: 'revocation' | translate}}</a></li>
</ul>
<form class="form-horizontal" name="credentialForm" novalidate kc-read-only="!access.manageRealm">
<fieldset class="border-top">
<div class="form-group">
- <label class="col-md-2 control-label" for="notBefore">Not Before</label>
+ <label class="col-md-2 control-label" for="notBefore">{{:: 'not-before' | translate}}</label>
<div class="col-md-6">
<input ng-disabled="true" class="form-control" type="text" id="notBefore" name="notBefore" data-ng-model="notBefore" autofocus>
</div>
- <kc-tooltip>Revoke any tokens issued before this date.</kc-tooltip>
+ <kc-tooltip>{{:: 'not-before.tooltip' | translate}}</kc-tooltip>
</div>
</fieldset>
<div class="form-group">
<div class="col-md-10 col-md-offset-2" data-ng-show="access.manageClients">
- <button type="submit" data-ng-click="setNotBeforeNow()" class="btn btn-default">Set To Now</button>
- <button type="submit" data-ng-click="clear()" class="btn btn-default">Clear</button>
- <button type="submit" data-ng-click="pushRevocation()" class="btn btn-primary" tooltip-trigger="mouseover mouseout" tooltip="For every client that has an admin URL, notify them of the new revocation policy." tooltip-placement="bottom">Push</button>
+ <button type="submit" data-ng-click="setNotBeforeNow()" class="btn btn-default">{{:: 'set-to-now' | translate}}</button>
+ <button type="submit" data-ng-click="clear()" class="btn btn-default">{{:: 'clear' | translate}}</button>
+ <button type="submit" data-ng-click="pushRevocation()" class="btn btn-primary" tooltip-trigger="mouseover mouseout" tooltip="{{:: 'push.tooltip' | translate}}" tooltip-placement="bottom">{{:: 'push' | translate}}</button>
</div>
</div>
</form>
diff --git a/forms/common-themes/src/main/resources/theme/base/admin/resources/templates/kc-tabs-realm.html b/forms/common-themes/src/main/resources/theme/base/admin/resources/templates/kc-tabs-realm.html
index 892570d..76f01ea 100755
--- a/forms/common-themes/src/main/resources/theme/base/admin/resources/templates/kc-tabs-realm.html
+++ b/forms/common-themes/src/main/resources/theme/base/admin/resources/templates/kc-tabs-realm.html
@@ -3,16 +3,16 @@
{{realm.realm|capitalize}}
<i id="removeRealm" class="pficon pficon-delete clickable" data-ng-show="access.manageRealm" data-ng-click="removeRealm()"></i>
</h1>
- <h1 data-ng-show="createRealm">Add Realm</h1>
+ <h1 data-ng-show="createRealm">{{:: 'add-realm' | translate}}</h1>
<ul class="nav nav-tabs">
- <li ng-class="{active: !path[2]}"><a href="#/realms/{{realm.realm}}">General</a></li>
- <li ng-class="{active: path[2] == 'login-settings'}" data-ng-show="access.viewRealm"><a href="#/realms/{{realm.realm}}/login-settings">Login</a></li>
- <li ng-class="{active: path[2] == 'keys-settings'}" data-ng-show="access.viewRealm"><a href="#/realms/{{realm.realm}}/keys-settings">Keys</a></li>
- <li ng-class="{active: path[2] == 'smtp-settings'}" data-ng-show="access.viewRealm"><a href="#/realms/{{realm.realm}}/smtp-settings">Email</a></li>
- <li ng-class="{active: path[2] == 'theme-settings'}" data-ng-show="access.viewRealm"><a href="#/realms/{{realm.realm}}/theme-settings">Themes</a></li>
- <li ng-class="{active: path[2] == 'cache-settings'}" data-ng-show="access.viewRealm"><a href="#/realms/{{realm.realm}}/cache-settings">Cache</a></li>
- <li ng-class="{active: path[2] == 'token-settings'}" data-ng-show="access.viewRealm"><a href="#/realms/{{realm.realm}}/token-settings">Tokens</a></li>
- <li ng-class="{active: path[2] == 'defense'}" data-ng-show="access.viewRealm"><a href="#/realms/{{realm.realm}}/defense/headers">Security Defenses</a></li>
+ <li ng-class="{active: !path[2]}"><a href="#/realms/{{realm.realm}}">{{:: 'realm-tab-general' | translate}}</a></li>
+ <li ng-class="{active: path[2] == 'login-settings'}" data-ng-show="access.viewRealm"><a href="#/realms/{{realm.realm}}/login-settings">{{:: 'realm-tab-login' | translate}}</a></li>
+ <li ng-class="{active: path[2] == 'keys-settings'}" data-ng-show="access.viewRealm"><a href="#/realms/{{realm.realm}}/keys-settings">{{:: 'realm-tab-keys' | translate}}</a></li>
+ <li ng-class="{active: path[2] == 'smtp-settings'}" data-ng-show="access.viewRealm"><a href="#/realms/{{realm.realm}}/smtp-settings">{{:: 'realm-tab-email' | translate}}</a></li>
+ <li ng-class="{active: path[2] == 'theme-settings'}" data-ng-show="access.viewRealm"><a href="#/realms/{{realm.realm}}/theme-settings">{{:: 'realm-tab-themes' | translate}}</a></li>
+ <li ng-class="{active: path[2] == 'cache-settings'}" data-ng-show="access.viewRealm"><a href="#/realms/{{realm.realm}}/cache-settings">{{:: 'realm-tab-cache' | translate}}</a></li>
+ <li ng-class="{active: path[2] == 'token-settings'}" data-ng-show="access.viewRealm"><a href="#/realms/{{realm.realm}}/token-settings">{{:: 'realm-tab-tokens' | translate}}</a></li>
+ <li ng-class="{active: path[2] == 'defense'}" data-ng-show="access.viewRealm"><a href="#/realms/{{realm.realm}}/defense/headers">{{:: 'realm-tab-security-defenses' | translate}}</a></li>
</ul>
</div>
\ No newline at end of file