new configuration version
This commit is contained in:
parent
e1746dac41
commit
654c61eaf7
|
@ -27,25 +27,20 @@ spec:
|
|||
livenessProbe:
|
||||
soap:
|
||||
tcpSocket: true
|
||||
periodSeconds: 5
|
||||
initialDelaySeconds: 40
|
||||
periodSeconds: 20
|
||||
timeoutSeconds: 4
|
||||
readinessProbe:
|
||||
management:
|
||||
httpGet:
|
||||
path: "/nevisauth/liveness"
|
||||
periodSeconds: 5
|
||||
initialDelaySeconds: 40
|
||||
periodSeconds: 30
|
||||
timeoutSeconds: 6
|
||||
startupProbe:
|
||||
management:
|
||||
httpGet:
|
||||
path: "/nevisauth/liveness"
|
||||
periodSeconds: 5
|
||||
timeoutSeconds: 6
|
||||
failureThreshold: 50
|
||||
podDisruptionBudget:
|
||||
maxUnavailable: "50%"
|
||||
git:
|
||||
tag: "r-90c0ddd9c0c4d9011252ef186298ca61c939e952"
|
||||
tag: "r-5560b9df58bc00fcf3fc92f29f5f7840af9dbf26"
|
||||
dir: "DEFAULT-ADN-AGOV-PROJECT/DEFAULT-ADN-AGOV-INV/auth-sts"
|
||||
credentials: "git-credentials"
|
||||
keystores:
|
||||
|
|
Binary file not shown.
Binary file not shown.
|
@ -1,24 +1,24 @@
|
|||
-----BEGIN CERTIFICATE-----
|
||||
MIIEGDCCAwCgAwIBAgIBBDANBgkqhkiG9w0BAQsFADA4MQswCQYDVQQGEwJjaDEQ
|
||||
MA4GA1UEChMHQWRub3Z1bTEXMBUGA1UEAxMOYml0ZWlhbS1yb290Q0EwHhcNMjAw
|
||||
MzA1MTYzMDAwWhcNMzAwMzAzMTYzMDAwWjA0MQswCQYDVQQGEwJjaDEQMA4GA1UE
|
||||
ChMHQWRub3Z1bTETMBEGA1UEAxMKc2lnbmVyRkVEUzCCASIwDQYJKoZIhvcNAQEB
|
||||
BQADggEPADCCAQoCggEBAJoWqbsYhNXW0mDsDJPAiTN896e4QML9qnt7FIhVKKe3
|
||||
T66lT/nfOkFPUZuKejgbjFFDEDChRJf0Achq7lWGKPrNPnrTxZmU7Bcu86BER76L
|
||||
4kDcGF/x03W9fgUgQ7X45CXYeq4vqfpzNC+lkZA1OxbpcXZA/4Z39Z3pm7CWXnAg
|
||||
v6nFABKJ9kVAyhuPyb5yIuGHcdLL+068aVp5sxY/6HoXf889+iVFDgTwSXVYKMyZ
|
||||
nZbvvd/IIod4WuiXsOspPS9yj+E9yMvtsUtChghcQ17ubo7S1P8JxAQWXngopH8Y
|
||||
nDeOiesJfR2APDdg7EXWYewARSFr10GxuXoKDjLe148CAwEAAaOCAS8wggErMAkG
|
||||
A1UdEwQCMAAwPwYJYIZIAYb4QgENBDIWME5ldmlzIEtleUJveCBHZW5lcmF0ZWQg
|
||||
Q2VydGlmaWNhdGUgdXNpbmcgT3BlblNTTDALBgNVHQ8EBAMCA6gwHQYDVR0lBBYw
|
||||
FAYIKwYBBQUHAwEGCCsGAQUFBwMCMB0GA1UdDgQWBBQ4zYpzY1lB5/bKeg3z1kJO
|
||||
kkdYgDBoBgNVHSMEYTBfgBRRdKau0TH9VQ0E8ob0J+WyYkcs4aE8pDowODELMAkG
|
||||
A1UEBhMCY2gxEDAOBgNVBAoTB0Fkbm92dW0xFzAVBgNVBAMTDmJpdGVpYW0tcm9v
|
||||
dENBggkA+97eIJWmttcwEQYJYIZIAYb4QgEBBAQDAgbAMBUGA1UdEQQOMAyCCnNp
|
||||
Z25lckZFRFMwDQYJKoZIhvcNAQELBQADggEBAHGHJ7DzRNdPl6Kiy4rCoQR/nhTa
|
||||
VbBsAeB070NpWma2iun3Wf5zIoefbSlPoofP4tOVYUoKtMHTWCYAUnHIEg5H985y
|
||||
Ym2MFY0vwgMZ+Jvcs7NCHzK9O/tN+uUjkFNLSCfzTb+K9vyF6lj4L4lQWa5++DZ6
|
||||
kWPaDWvwY/NOSoIehmJupmcJlA1qxzlTc+659xoOk1WyhusNkuiOUjFrLQ+tgRnD
|
||||
7dGuzJQyBV1Iy/A4IhpN2ootVgrI7NMJ2YetCq7yuipRZka3RoeVhUs8CWFfYRtc
|
||||
saTCck7atYyMVlPUf03EppC18ILBmbNzYJ58KT2oQywa7+Sdsqx4+5cOOOU=
|
||||
-----END CERTIFICATE-----
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIIEGDCCAwCgAwIBAgIBBDANBgkqhkiG9w0BAQsFADA4MQswCQYDVQQGEwJjaDEQ
|
||||
MA4GA1UEChMHQWRub3Z1bTEXMBUGA1UEAxMOYml0ZWlhbS1yb290Q0EwHhcNMjAw
|
||||
MzA1MTYzMDAwWhcNMzAwMzAzMTYzMDAwWjA0MQswCQYDVQQGEwJjaDEQMA4GA1UE
|
||||
ChMHQWRub3Z1bTETMBEGA1UEAxMKc2lnbmVyRkVEUzCCASIwDQYJKoZIhvcNAQEB
|
||||
BQADggEPADCCAQoCggEBAJoWqbsYhNXW0mDsDJPAiTN896e4QML9qnt7FIhVKKe3
|
||||
T66lT/nfOkFPUZuKejgbjFFDEDChRJf0Achq7lWGKPrNPnrTxZmU7Bcu86BER76L
|
||||
4kDcGF/x03W9fgUgQ7X45CXYeq4vqfpzNC+lkZA1OxbpcXZA/4Z39Z3pm7CWXnAg
|
||||
v6nFABKJ9kVAyhuPyb5yIuGHcdLL+068aVp5sxY/6HoXf889+iVFDgTwSXVYKMyZ
|
||||
nZbvvd/IIod4WuiXsOspPS9yj+E9yMvtsUtChghcQ17ubo7S1P8JxAQWXngopH8Y
|
||||
nDeOiesJfR2APDdg7EXWYewARSFr10GxuXoKDjLe148CAwEAAaOCAS8wggErMAkG
|
||||
A1UdEwQCMAAwPwYJYIZIAYb4QgENBDIWME5ldmlzIEtleUJveCBHZW5lcmF0ZWQg
|
||||
Q2VydGlmaWNhdGUgdXNpbmcgT3BlblNTTDALBgNVHQ8EBAMCA6gwHQYDVR0lBBYw
|
||||
FAYIKwYBBQUHAwEGCCsGAQUFBwMCMB0GA1UdDgQWBBQ4zYpzY1lB5/bKeg3z1kJO
|
||||
kkdYgDBoBgNVHSMEYTBfgBRRdKau0TH9VQ0E8ob0J+WyYkcs4aE8pDowODELMAkG
|
||||
A1UEBhMCY2gxEDAOBgNVBAoTB0Fkbm92dW0xFzAVBgNVBAMTDmJpdGVpYW0tcm9v
|
||||
dENBggkA+97eIJWmttcwEQYJYIZIAYb4QgEBBAQDAgbAMBUGA1UdEQQOMAyCCnNp
|
||||
Z25lckZFRFMwDQYJKoZIhvcNAQELBQADggEBAHGHJ7DzRNdPl6Kiy4rCoQR/nhTa
|
||||
VbBsAeB070NpWma2iun3Wf5zIoefbSlPoofP4tOVYUoKtMHTWCYAUnHIEg5H985y
|
||||
Ym2MFY0vwgMZ+Jvcs7NCHzK9O/tN+uUjkFNLSCfzTb+K9vyF6lj4L4lQWa5++DZ6
|
||||
kWPaDWvwY/NOSoIehmJupmcJlA1qxzlTc+659xoOk1WyhusNkuiOUjFrLQ+tgRnD
|
||||
7dGuzJQyBV1Iy/A4IhpN2ootVgrI7NMJ2YetCq7yuipRZka3RoeVhUs8CWFfYRtc
|
||||
saTCck7atYyMVlPUf03EppC18ILBmbNzYJ58KT2oQywa7+Sdsqx4+5cOOOU=
|
||||
-----END CERTIFICATE-----
|
|
@ -1,8 +1,8 @@
|
|||
RTENV_SECURITY_CHECK=no_shell
|
||||
|
||||
JAVA_OPTS=(
|
||||
"-XX:+UseContainerSupport"
|
||||
"-Dfile.encoding=UTF-8"
|
||||
"-XX:+UseContainerSupport"
|
||||
"-XX:MaxRAMPercentage=80.0"
|
||||
"-Djava.net.preferIPv4Stack=true"
|
||||
"-Djava.net.connectionTimeout=10000"
|
||||
|
|
|
@ -54,7 +54,7 @@
|
|||
</Domain>
|
||||
<AuthState name="Auth_Realm_Main_STS_Check_Trusted_Caller" class="ch.nevis.esauth.auth.states.cache.ReadFromCacheState" final="false" resumeState="true">
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<ResultCond name="miss" next="Auth_Realm_Main_STS_Validation_Client_Cert"/>
|
||||
<ResultCond name="miss" next="Auth_Realm_Main_STS_Dispatcher_TokenType"/>
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<ResultCond name="ok" next="Auth_Realm_Main_STS_Dispatcher_TokenType"/>
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
|
@ -66,25 +66,6 @@
|
|||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<property name="sess:agov.techuser.extId" value="#{request.getActorCertAsString()}"/>
|
||||
</AuthState>
|
||||
<AuthState name="Auth_Realm_Main_STS_Validation_Client_Cert" class="ch.nevis.idm.authstate.IdmX509State" final="false" resumeState="true">
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<ResultCond name="default" next="Auth_Realm_Main_STS_STS_Audit_Failure"/>
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<ResultCond name="ok" next="Auth_Realm_Main_STS_Validation_Client_Cert_PostProcessing"/>
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<Response value="AUTH_ERROR">
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<Gui name="AuthErrorDialog">
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<GuiElem name="lasterror" type="error" label="#{notes.containsKey('lasterror') ? 'error.login.cert.' : ''}#{notes['lasterror']}"/>
|
||||
</Gui>
|
||||
</Response>
|
||||
<propertyRef name="nevisIDM_Connector"/>
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<property name="user.certificate" value="#{request.getActorCertAsString()}"/>
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<property name="client.name" value="Default"/>
|
||||
</AuthState>
|
||||
<AuthState name="Auth_Realm_Main_STS_Dispatcher_TokenType" class="ch.nevis.esauth.auth.states.standard.ConditionalDispatcherState" final="false" resumeState="true">
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<ResultCond name="SamlAssertion" next="Auth_Realm_Main_STS_Service_Provider_State"/>
|
||||
|
@ -106,38 +87,6 @@
|
|||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<property name="condition:usernameToken" value="${request:currentResource:/nevisauth/services/sts/username:true}"/>
|
||||
</AuthState>
|
||||
<AuthState name="Auth_Realm_Main_STS_STS_Audit_Failure" class="ch.nevis.esauth.auth.states.scripting.ScriptState" final="false" resumeState="true">
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<ResultCond name="error" next="Auth_Realm_Main_STS_Authentication_Failed"/>
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<ResultCond name="ok" next="Auth_Realm_Main_STS_Authentication_Failed"/>
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<Response value="AUTH_ERROR">
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<Arg name="ch.nevis.isiweb4.response.status" value="403"/>
|
||||
</Response>
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<property name="scriptTraceGroup" value="AGOV-ACCT"/>
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<property name="script" value="file:///var/opt/nevisauth/default/conf/sts_audit_failure.groovy"/>
|
||||
</AuthState>
|
||||
<AuthState name="Auth_Realm_Main_STS_Validation_Client_Cert_PostProcessing" class="ch.nevis.idm.authstate.IdmGetPropertiesState" final="false" resumeState="true">
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<ResultCond name="default" next="Auth_Realm_Main_STS_STS_Audit_Failure"/>
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<ResultCond name="ok" next="Auth_Realm_Main_STS_Check_Impersonator"/>
|
||||
<propertyRef name="nevisIDM_Connector"/>
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<property name="detaillevel.default" value="EXCLUDE"/>
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<property name="chooseDefaultProfile" value="true"/>
|
||||
</AuthState>
|
||||
<AuthState name="nevisIDM_Connector" class="ch.nevis.esauth.auth.states.standard.AuthGeneric" final="false">
|
||||
<!-- source: pattern://8d94681ba6da73f92618e32d -->
|
||||
<property name="login.service.connection.0" value="https://idm:8989/nevisidm/services/v1/LoginService"/>
|
||||
<!-- source: pattern://8d94681ba6da73f92618e32d -->
|
||||
<property name="admin.service.connection.0" value="https://idm:8989/nevisidm/services/v1/AdminService"/>
|
||||
</AuthState>
|
||||
<AuthState name="Auth_Realm_Main_STS_Service_Provider_State" class="ch.nevis.esauth.auth.states.saml.ServiceProviderState" final="false" resumeState="true">
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<ResultCond name="default" next="Auth_Realm_Main_STS_STS_Audit_Failure"/>
|
||||
|
@ -225,6 +174,21 @@
|
|||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<property name="detaillevel.default" value="EXCLUDE"/>
|
||||
</AuthState>
|
||||
<AuthState name="Auth_Realm_Main_STS_STS_Audit_Failure" class="ch.nevis.esauth.auth.states.scripting.ScriptState" final="false" resumeState="true">
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<ResultCond name="error" next="Auth_Realm_Main_STS_Authentication_Failed"/>
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<ResultCond name="ok" next="Auth_Realm_Main_STS_Authentication_Failed"/>
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<Response value="AUTH_ERROR">
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<Arg name="ch.nevis.isiweb4.response.status" value="403"/>
|
||||
</Response>
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<property name="scriptTraceGroup" value="AGOV-ACCT"/>
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<property name="script" value="file:///var/opt/nevisauth/default/conf/sts_audit_failure.groovy"/>
|
||||
</AuthState>
|
||||
<AuthState name="Auth_Realm_Main_STS_Verify_User_extID" class="ch.nevis.idm.authstate.IdmUserVerifyState" final="false" resumeState="true">
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<ResultCond name="clientNotFound" next="Auth_Realm_Main_STS_STS_Audit_Failure"/>
|
||||
|
@ -243,31 +207,6 @@
|
|||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<property name="client.name" value="agov"/>
|
||||
</AuthState>
|
||||
<AuthState name="Auth_Realm_Main_STS_Authentication_Failed" class="ch.nevis.esauth.auth.states.standard.AuthError" final="false" resumeState="true">
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<Response value="AUTH_ERROR">
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<Gui name="Error">
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<GuiElem name="info" type="error" label="error_99"/>
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<GuiElem name="submit" type="button" label="continue.button.label"/>
|
||||
</Gui>
|
||||
</Response>
|
||||
</AuthState>
|
||||
<AuthState name="Auth_Realm_Main_STS_Check_Impersonator" class="ch.nevis.esauth.auth.states.standard.ConditionalDispatcherState" final="false" resumeState="true">
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<ResultCond name="default" next="Auth_Realm_Main_STS_STS_Audit_Failure"/>
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<ResultCond name="isImpersonator" next="Auth_Realm_Main_STS_Clear_Session"/>
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<Response value="AUTH_ERROR">
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<Arg name="ch.nevis.isiweb4.response.status" value="403"/>
|
||||
</Response>
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<property name="condition:isImpersonator" value="${response/actualRoles/^.*(nevisIdm\.Impersonator).*$}"/>
|
||||
</AuthState>
|
||||
<AuthState name="Auth_Realm_Main_STS_Verify_Shadow_User_Error" class="ch.nevis.esauth.auth.states.standard.AuthLogout" final="true" resumeState="true">
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<Response value="AUTH_ERROR">
|
||||
|
@ -293,6 +232,24 @@
|
|||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<property name="cred.type" value="CONTEXT_PASSWORD"/>
|
||||
</AuthState>
|
||||
<AuthState name="nevisIDM_Connector" class="ch.nevis.esauth.auth.states.standard.AuthGeneric" final="false">
|
||||
<!-- source: pattern://8d94681ba6da73f92618e32d -->
|
||||
<property name="login.service.connection.0" value="https://idm:8989/nevisidm/services/v1/LoginService"/>
|
||||
<!-- source: pattern://8d94681ba6da73f92618e32d -->
|
||||
<property name="admin.service.connection.0" value="https://idm:8989/nevisidm/services/v1/AdminService"/>
|
||||
</AuthState>
|
||||
<AuthState name="Auth_Realm_Main_STS_Authentication_Failed" class="ch.nevis.esauth.auth.states.standard.AuthError" final="false" resumeState="true">
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<Response value="AUTH_ERROR">
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<Gui name="Error">
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<GuiElem name="info" type="error" label="error_99"/>
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<GuiElem name="submit" type="button" label="continue.button.label"/>
|
||||
</Gui>
|
||||
</Response>
|
||||
</AuthState>
|
||||
<AuthState name="Auth_Realm_Main_STS_Verify_User_extID_IdmGetPropertiesState" class="ch.nevis.idm.authstate.IdmGetPropertiesState" final="false" resumeState="true">
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<ResultCond name="SOAP:showGui" next="Auth_Realm_Main_STS_STS_Audit_Success"/>
|
||||
|
@ -314,43 +271,6 @@
|
|||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<property name="chooseDefaultProfile" value="true"/>
|
||||
</AuthState>
|
||||
<AuthState name="Auth_Realm_Main_STS_Clear_Session" class="ch.nevis.esauth.auth.states.standard.TransformAttributes" final="false" resumeState="true">
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<ResultCond name="ok" next="Auth_Realm_Main_STS_Cache_Trusted_Caller"/>
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<Response value="AUTH_ERROR">
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<Arg name="ch.nevis.isiweb4.response.status" value="403"/>
|
||||
</Response>
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<property name="sess:agov.techuser.extId" value="${sess:ch.adnovum.nevisidm.user.extId}"/>
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<property name="sess:ch.adnovum.nevisidm.clientExtId" value=""/>
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<property name="sess:ch.adnovum.nevisidm.clientId" value=""/>
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<property name="sess:ch.adnovum.nevisidm.clientName" value=""/>
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<property name="sess:ch.adnovum.nevisidm.profileExtId" value=""/>
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<property name="sess:ch.adnovum.nevisidm.profileId" value=""/>
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<property name="sess:ch.adnovum.nevisidm.profileName" value=""/>
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<property name="sess:ch.adnovum.nevisidm.user.clientExtId" value=""/>
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<property name="sess:ch.adnovum.nevisidm.user.extId" value=""/>
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<property name="sess:ch.adnovum.nevisidm.user.loginId" value=""/>
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<property name="sess:ch.adnovum.nevisidm.userDto" value=""/>
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<property name="sess:ch.adnovum.nevisidm.userExtId" value=""/>
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<property name="sess:ch.nevis.idm.User.extId" value=""/>
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<property name="removeOnEmptyValue" value="true"/>
|
||||
</AuthState>
|
||||
<AuthState name="Auth_Realm_Main_STS_STS_Audit_Success" class="ch.nevis.esauth.auth.states.scripting.ScriptState" final="false" resumeState="true">
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<ResultCond name="error" next="Auth_Realm_Main_STS_Authentication_Failed"/>
|
||||
|
@ -366,26 +286,6 @@
|
|||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<property name="script" value="file:///var/opt/nevisauth/default/conf/sts_audit_success.groovy"/>
|
||||
</AuthState>
|
||||
<AuthState name="Auth_Realm_Main_STS_Cache_Trusted_Caller" class="ch.nevis.esauth.auth.states.cache.WriteToCacheState" final="false" resumeState="true">
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<ResultCond name="failed" next="Auth_Realm_Main_STS_STS_Audit_Failure"/>
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<ResultCond name="ok" next="Auth_Realm_Main_STS_Dispatcher_TokenType"/>
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<Response value="AUTH_ERROR"/>
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<property name="cacheSpace" value="TechAuthCache"/>
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<property name="hashAlgorithm" value="SHA-512"/>
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<property name="maxAge" value="3600"/>
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<property name="maxEntries" value="2"/>
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<property name="overwriteOldEntries" value="false"/>
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<property name="#{request.getActorCertAsString()}" value="${sess:agov.techuser.extId}"/>
|
||||
</AuthState>
|
||||
<AuthState name="Auth_Realm_Main_STS_Auth_Done" class="ch.nevis.esauth.auth.states.standard.AuthDone" final="false" resumeState="true">
|
||||
<!-- source: pattern://5d7dc3d51416356293a239f7 -->
|
||||
<Response value="AUTH_DONE">
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
otel.service.name = auth-sts
|
||||
otel.traces.exporter = none
|
||||
otel.metrics.exporter = none
|
||||
otel.logs.exporter = none
|
||||
otel.service.name=auth-sts
|
||||
otel.traces.exporter=none
|
||||
otel.metrics.exporter=none
|
||||
otel.logs.exporter=none
|
||||
|
|
|
@ -27,25 +27,20 @@ spec:
|
|||
livenessProbe:
|
||||
soap:
|
||||
tcpSocket: true
|
||||
periodSeconds: 5
|
||||
initialDelaySeconds: 40
|
||||
periodSeconds: 20
|
||||
timeoutSeconds: 4
|
||||
readinessProbe:
|
||||
management:
|
||||
httpGet:
|
||||
path: "/nevisauth/liveness"
|
||||
periodSeconds: 5
|
||||
initialDelaySeconds: 40
|
||||
periodSeconds: 30
|
||||
timeoutSeconds: 6
|
||||
startupProbe:
|
||||
management:
|
||||
httpGet:
|
||||
path: "/nevisauth/liveness"
|
||||
periodSeconds: 5
|
||||
timeoutSeconds: 6
|
||||
failureThreshold: 50
|
||||
podDisruptionBudget:
|
||||
maxUnavailable: "50%"
|
||||
git:
|
||||
tag: "r-90c0ddd9c0c4d9011252ef186298ca61c939e952"
|
||||
tag: "r-5560b9df58bc00fcf3fc92f29f5f7840af9dbf26"
|
||||
dir: "DEFAULT-ADN-AGOV-PROJECT/DEFAULT-ADN-AGOV-INV/auth"
|
||||
credentials: "git-credentials"
|
||||
keystores:
|
||||
|
|
|
@ -1,22 +1,32 @@
|
|||
-----BEGIN CERTIFICATE-----
|
||||
MIIDlDCCAnwCCQC4xKJxfbSLBzANBgkqhkiG9w0BAQsFADCBizELMAkGA1UEBhMC
|
||||
Y2gxEDAOBgNVBAoMB2Fkbm92dW0xDTALBgNVBAsMBGFnb3YxJzAlBgNVBAMMHmph
|
||||
a29iLmFnb3YtZC5henVyZS5hZG5vdnVtLm5ldDEyMDAGCSqGSIb3DQEJARYjaW5m
|
||||
b0BqYWtvYi5hZ292LWQuYXp1cmUuYWRub3Z1bS5uZXQwHhcNMjMwMzIxMTUyMjI0
|
||||
WhcNMjgwMzE5MTUyMjI0WjCBizELMAkGA1UEBhMCY2gxEDAOBgNVBAoMB2Fkbm92
|
||||
dW0xDTALBgNVBAsMBGFnb3YxJzAlBgNVBAMMHmpha29iLmFnb3YtZC5henVyZS5h
|
||||
ZG5vdnVtLm5ldDEyMDAGCSqGSIb3DQEJARYjaW5mb0BqYWtvYi5hZ292LWQuYXp1
|
||||
cmUuYWRub3Z1bS5uZXQwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDB
|
||||
8LPO6Nack2z1whTratLxRD9KraO8QGrVTEa0p+23EKJH4WYE0QGzXbX4oFl2maXE
|
||||
QDeCBofTnrl8sL3yVxBy56qO8T3VxYtt9akjty6PujO48bgJr2VGjGgtPYPUeOEk
|
||||
lzCS616732Bnxc2iqo267G/tGooRIOOqefSyhEGmbI3KGv/zYZn/qxQo/A+5f+6y
|
||||
zEoKdmnBF6vnowvffKfdFKI8udd5eKmfyrc5iNYHXoVP/HmqKbkyrBw1U0ysihRJ
|
||||
3vyJVDtirQ5chLn0jOZ4UZ5SBck9+784yrVqpNbsWAe3NU+Vfx4wCk/rPWRDa1E2
|
||||
fk+gEVvEMUFt4UvU25BdAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAIxToc9muu9z
|
||||
d4yycZCgZbDtzrq2Un+m/m3TrBNzLV7UBbGt7HW9/kxvdFJTKgNEj+ZD1cY6O6D7
|
||||
vrWV0Xb1XPgkaAfypc4Y7IOUTFDR/ib4siP9gPkHvr5WSIip3mFgX9yIV910N/hh
|
||||
ImE9/Jtf/q9MopBu8J6zRmL/J8mVewVdcU3xqz27OVMMSht0Du8FcpIrNQwqc1LN
|
||||
tCgdj+pw5vl7NH546WlyYNpLEkAeBpJ3XCBDDwcQftC+/cQ7GKJGtOJ4ODdxWMyX
|
||||
ThsHJ7MCTiN+MoW5CeioGSmngezh4Gs5SpGAGVvwNvXW2jiGdRDdHmyxDPjCQvYA
|
||||
wwZrmgtpYE0=
|
||||
-----END CERTIFICATE-----
|
||||
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
|
||||
-----END CERTIFICATE-----
|
||||
|
|
|
@ -1,30 +1,54 @@
|
|||
-----BEGIN ENCRYPTED PRIVATE KEY-----
|
||||
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
|
||||
-----END ENCRYPTED PRIVATE KEY-----
|
||||
|
|
Binary file not shown.
Binary file not shown.
|
@ -1,53 +1,87 @@
|
|||
-----BEGIN ENCRYPTED PRIVATE KEY-----
|
||||
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
|
||||
-----END ENCRYPTED PRIVATE KEY-----
|
||||
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIIDlDCCAnwCCQC4xKJxfbSLBzANBgkqhkiG9w0BAQsFADCBizELMAkGA1UEBhMC
|
||||
Y2gxEDAOBgNVBAoMB2Fkbm92dW0xDTALBgNVBAsMBGFnb3YxJzAlBgNVBAMMHmph
|
||||
a29iLmFnb3YtZC5henVyZS5hZG5vdnVtLm5ldDEyMDAGCSqGSIb3DQEJARYjaW5m
|
||||
b0BqYWtvYi5hZ292LWQuYXp1cmUuYWRub3Z1bS5uZXQwHhcNMjMwMzIxMTUyMjI0
|
||||
WhcNMjgwMzE5MTUyMjI0WjCBizELMAkGA1UEBhMCY2gxEDAOBgNVBAoMB2Fkbm92
|
||||
dW0xDTALBgNVBAsMBGFnb3YxJzAlBgNVBAMMHmpha29iLmFnb3YtZC5henVyZS5h
|
||||
ZG5vdnVtLm5ldDEyMDAGCSqGSIb3DQEJARYjaW5mb0BqYWtvYi5hZ292LWQuYXp1
|
||||
cmUuYWRub3Z1bS5uZXQwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDB
|
||||
8LPO6Nack2z1whTratLxRD9KraO8QGrVTEa0p+23EKJH4WYE0QGzXbX4oFl2maXE
|
||||
QDeCBofTnrl8sL3yVxBy56qO8T3VxYtt9akjty6PujO48bgJr2VGjGgtPYPUeOEk
|
||||
lzCS616732Bnxc2iqo267G/tGooRIOOqefSyhEGmbI3KGv/zYZn/qxQo/A+5f+6y
|
||||
zEoKdmnBF6vnowvffKfdFKI8udd5eKmfyrc5iNYHXoVP/HmqKbkyrBw1U0ysihRJ
|
||||
3vyJVDtirQ5chLn0jOZ4UZ5SBck9+784yrVqpNbsWAe3NU+Vfx4wCk/rPWRDa1E2
|
||||
fk+gEVvEMUFt4UvU25BdAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAIxToc9muu9z
|
||||
d4yycZCgZbDtzrq2Un+m/m3TrBNzLV7UBbGt7HW9/kxvdFJTKgNEj+ZD1cY6O6D7
|
||||
vrWV0Xb1XPgkaAfypc4Y7IOUTFDR/ib4siP9gPkHvr5WSIip3mFgX9yIV910N/hh
|
||||
ImE9/Jtf/q9MopBu8J6zRmL/J8mVewVdcU3xqz27OVMMSht0Du8FcpIrNQwqc1LN
|
||||
tCgdj+pw5vl7NH546WlyYNpLEkAeBpJ3XCBDDwcQftC+/cQ7GKJGtOJ4ODdxWMyX
|
||||
ThsHJ7MCTiN+MoW5CeioGSmngezh4Gs5SpGAGVvwNvXW2jiGdRDdHmyxDPjCQvYA
|
||||
wwZrmgtpYE0=
|
||||
-----END CERTIFICATE-----
|
||||
MIIFjTCCA3WgAwIBAgIUezb8qY+kCx4eW1J9g24Y+bsf+kYwDQYJKoZIhvcNAQEL
|
||||
BQAwVjELMAkGA1UEBhMCY2gxEDAOBgNVBAoMB0Fkbm92dW0xDTALBgNVBAsMBEFH
|
||||
T1YxJjAkBgNVBAMMHWF1dGguYWdvdi13LmF6dXJlLmFkbm92dW0ubmV0MB4XDTI0
|
||||
MDgxOTExNTE0N1oXDTM0MDgxNzExNTE0N1owVjELMAkGA1UEBhMCY2gxEDAOBgNV
|
||||
BAoMB0Fkbm92dW0xDTALBgNVBAsMBEFHT1YxJjAkBgNVBAMMHWF1dGguYWdvdi13
|
||||
LmF6dXJlLmFkbm92dW0ubmV0MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKC
|
||||
AgEA1wWp33BH4/HjxovF60ac3LYCr0OuRq37K7vZrFZ0CxdnrZNgOTqW6PK72aOZ
|
||||
rrL/9GHS7kr+6ORrtRcaQYJttqFWkyQVIQyb5wTRT8rAaugFFCon+FhIPNbrPU3l
|
||||
PSqNEnxYCPsjA32qfAg96gHhn1ZpSe/SYOguB6mAOh+5vCFAvGOTfL9Gugayqe8L
|
||||
3IAs7caDrEqB+sGo52P47Pz3fFnwlKnDZTFd2pOx43JYSNTE4bYBIOWwaTuN1MPM
|
||||
1XcDZXJ1eEab/euwJ6zDdTE09h+ZGEo89ogJmC0Ragpi/7SyY2431QaoC9q4tlen
|
||||
tQegWJWTMU/KhzdUamd9jJGa8bL7uO2edvHh+f0dIZxd/hPq0LteKiDXe258tpci
|
||||
0laY/9SHgDNJv366dnL0HwkpqUZrKhGv+3EMqwCsqHN7Dhswz8AMWOShvdOPkGjF
|
||||
gFJhdvGay1gyM1RFhlcEhl3yEdkVWAP3dJkmlSRotdZRsgfpgQHuWE5K5C96fSny
|
||||
yiRN4+LpYkZksFsGoWiMcpCIY2/s7uuv4Xo3Ql63gPL/dDjSCNHeXAI0BqGpVk9D
|
||||
dopXU06dfsY5p46Su3ku8do2QMpMi/b1bCtSOrpRKrr/4GJcr8OKyNsTNaFdh/Mm
|
||||
xhJ6+U3JkMNuAWcUAVxiNpF25R+xPV+kO+zDs+8IwJtMutcCAwEAAaNTMFEwHQYD
|
||||
VR0OBBYEFPvUI3yPIDXHsmoSRBzTlFcKVVA9MB8GA1UdIwQYMBaAFPvUI3yPIDXH
|
||||
smoSRBzTlFcKVVA9MA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQELBQADggIB
|
||||
AGzBJmppDmQPapUAI+bHpsXIxA+Uk3fFJIUDbzn2q3kkjWzszldBGJ+R+dmA/ROE
|
||||
rokT9oNggvoSGzf5Lyu9oniB8FoWxp2mWRzXiTXsuz0ZLmT3ZxOah1g9MtXLD567
|
||||
mdeKgjMFCM82OIRMsazdCtb43fJ0mvjuZ2Dv0Dt6O5I9TOWzTSx+ieGj2q/ZIQzl
|
||||
3sfNcIuovVHjiiGl5wpHVQfUeRhRyB2xnetfe+UqdJVjJm3WXpomdJh6GxGYnH78
|
||||
ZhnD6TJLhb41s5WF7dSxAQhTYJJuTTsF68bQEL787Mccqi4Ft4GqtF+vYTSAjWcM
|
||||
jVjXbd1Bk0gHqsCl+TxJg8VfBiauFf5WP96xnVw8Hx9aOMVNejLWVjYE/ExVyW8g
|
||||
94SJsL+cXjMjlZeL60yY9vgd59BHBOxBBq+5Qbx5bcfaIvXgaxt6sm1dk40D+YzR
|
||||
UqFMJtGMvPfRl+2yUQ36VinQxyFbbf6Yq4s/E0We5aRPp2CFiRqmtip9Chvk/7fP
|
||||
+b8zZvJgTUJZFWtvVNs6QqOu/yOxtFpWzfHmlvp3ticepBuT6bKtUJHtEnHheCCX
|
||||
FF4MB65pTI/NrDVOec6PgRChz3UPGBEAtjjTCQUOe4HKQmOKedZKts51LuvHSuRu
|
||||
S9JPohzGT95cglskfqPn51n5hJOOTnMfg/Qj6uXQZU9+
|
||||
-----END CERTIFICATE-----
|
||||
|
|
Binary file not shown.
Binary file not shown.
|
@ -1,24 +1,24 @@
|
|||
-----BEGIN CERTIFICATE-----
|
||||
MIIEGDCCAwCgAwIBAgIBBDANBgkqhkiG9w0BAQsFADA4MQswCQYDVQQGEwJjaDEQ
|
||||
MA4GA1UEChMHQWRub3Z1bTEXMBUGA1UEAxMOYml0ZWlhbS1yb290Q0EwHhcNMjAw
|
||||
MzA1MTYzMDAwWhcNMzAwMzAzMTYzMDAwWjA0MQswCQYDVQQGEwJjaDEQMA4GA1UE
|
||||
ChMHQWRub3Z1bTETMBEGA1UEAxMKc2lnbmVyRkVEUzCCASIwDQYJKoZIhvcNAQEB
|
||||
BQADggEPADCCAQoCggEBAJoWqbsYhNXW0mDsDJPAiTN896e4QML9qnt7FIhVKKe3
|
||||
T66lT/nfOkFPUZuKejgbjFFDEDChRJf0Achq7lWGKPrNPnrTxZmU7Bcu86BER76L
|
||||
4kDcGF/x03W9fgUgQ7X45CXYeq4vqfpzNC+lkZA1OxbpcXZA/4Z39Z3pm7CWXnAg
|
||||
v6nFABKJ9kVAyhuPyb5yIuGHcdLL+068aVp5sxY/6HoXf889+iVFDgTwSXVYKMyZ
|
||||
nZbvvd/IIod4WuiXsOspPS9yj+E9yMvtsUtChghcQ17ubo7S1P8JxAQWXngopH8Y
|
||||
nDeOiesJfR2APDdg7EXWYewARSFr10GxuXoKDjLe148CAwEAAaOCAS8wggErMAkG
|
||||
A1UdEwQCMAAwPwYJYIZIAYb4QgENBDIWME5ldmlzIEtleUJveCBHZW5lcmF0ZWQg
|
||||
Q2VydGlmaWNhdGUgdXNpbmcgT3BlblNTTDALBgNVHQ8EBAMCA6gwHQYDVR0lBBYw
|
||||
FAYIKwYBBQUHAwEGCCsGAQUFBwMCMB0GA1UdDgQWBBQ4zYpzY1lB5/bKeg3z1kJO
|
||||
kkdYgDBoBgNVHSMEYTBfgBRRdKau0TH9VQ0E8ob0J+WyYkcs4aE8pDowODELMAkG
|
||||
A1UEBhMCY2gxEDAOBgNVBAoTB0Fkbm92dW0xFzAVBgNVBAMTDmJpdGVpYW0tcm9v
|
||||
dENBggkA+97eIJWmttcwEQYJYIZIAYb4QgEBBAQDAgbAMBUGA1UdEQQOMAyCCnNp
|
||||
Z25lckZFRFMwDQYJKoZIhvcNAQELBQADggEBAHGHJ7DzRNdPl6Kiy4rCoQR/nhTa
|
||||
VbBsAeB070NpWma2iun3Wf5zIoefbSlPoofP4tOVYUoKtMHTWCYAUnHIEg5H985y
|
||||
Ym2MFY0vwgMZ+Jvcs7NCHzK9O/tN+uUjkFNLSCfzTb+K9vyF6lj4L4lQWa5++DZ6
|
||||
kWPaDWvwY/NOSoIehmJupmcJlA1qxzlTc+659xoOk1WyhusNkuiOUjFrLQ+tgRnD
|
||||
7dGuzJQyBV1Iy/A4IhpN2ootVgrI7NMJ2YetCq7yuipRZka3RoeVhUs8CWFfYRtc
|
||||
saTCck7atYyMVlPUf03EppC18ILBmbNzYJ58KT2oQywa7+Sdsqx4+5cOOOU=
|
||||
-----END CERTIFICATE-----
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIIEGDCCAwCgAwIBAgIBBDANBgkqhkiG9w0BAQsFADA4MQswCQYDVQQGEwJjaDEQ
|
||||
MA4GA1UEChMHQWRub3Z1bTEXMBUGA1UEAxMOYml0ZWlhbS1yb290Q0EwHhcNMjAw
|
||||
MzA1MTYzMDAwWhcNMzAwMzAzMTYzMDAwWjA0MQswCQYDVQQGEwJjaDEQMA4GA1UE
|
||||
ChMHQWRub3Z1bTETMBEGA1UEAxMKc2lnbmVyRkVEUzCCASIwDQYJKoZIhvcNAQEB
|
||||
BQADggEPADCCAQoCggEBAJoWqbsYhNXW0mDsDJPAiTN896e4QML9qnt7FIhVKKe3
|
||||
T66lT/nfOkFPUZuKejgbjFFDEDChRJf0Achq7lWGKPrNPnrTxZmU7Bcu86BER76L
|
||||
4kDcGF/x03W9fgUgQ7X45CXYeq4vqfpzNC+lkZA1OxbpcXZA/4Z39Z3pm7CWXnAg
|
||||
v6nFABKJ9kVAyhuPyb5yIuGHcdLL+068aVp5sxY/6HoXf889+iVFDgTwSXVYKMyZ
|
||||
nZbvvd/IIod4WuiXsOspPS9yj+E9yMvtsUtChghcQ17ubo7S1P8JxAQWXngopH8Y
|
||||
nDeOiesJfR2APDdg7EXWYewARSFr10GxuXoKDjLe148CAwEAAaOCAS8wggErMAkG
|
||||
A1UdEwQCMAAwPwYJYIZIAYb4QgENBDIWME5ldmlzIEtleUJveCBHZW5lcmF0ZWQg
|
||||
Q2VydGlmaWNhdGUgdXNpbmcgT3BlblNTTDALBgNVHQ8EBAMCA6gwHQYDVR0lBBYw
|
||||
FAYIKwYBBQUHAwEGCCsGAQUFBwMCMB0GA1UdDgQWBBQ4zYpzY1lB5/bKeg3z1kJO
|
||||
kkdYgDBoBgNVHSMEYTBfgBRRdKau0TH9VQ0E8ob0J+WyYkcs4aE8pDowODELMAkG
|
||||
A1UEBhMCY2gxEDAOBgNVBAoTB0Fkbm92dW0xFzAVBgNVBAMTDmJpdGVpYW0tcm9v
|
||||
dENBggkA+97eIJWmttcwEQYJYIZIAYb4QgEBBAQDAgbAMBUGA1UdEQQOMAyCCnNp
|
||||
Z25lckZFRFMwDQYJKoZIhvcNAQELBQADggEBAHGHJ7DzRNdPl6Kiy4rCoQR/nhTa
|
||||
VbBsAeB070NpWma2iun3Wf5zIoefbSlPoofP4tOVYUoKtMHTWCYAUnHIEg5H985y
|
||||
Ym2MFY0vwgMZ+Jvcs7NCHzK9O/tN+uUjkFNLSCfzTb+K9vyF6lj4L4lQWa5++DZ6
|
||||
kWPaDWvwY/NOSoIehmJupmcJlA1qxzlTc+659xoOk1WyhusNkuiOUjFrLQ+tgRnD
|
||||
7dGuzJQyBV1Iy/A4IhpN2ootVgrI7NMJ2YetCq7yuipRZka3RoeVhUs8CWFfYRtc
|
||||
saTCck7atYyMVlPUf03EppC18ILBmbNzYJ58KT2oQywa7+Sdsqx4+5cOOOU=
|
||||
-----END CERTIFICATE-----
|
|
@ -185,10 +185,10 @@ prompt.newpassword=Nuova Password
|
|||
prompt.newpassword.confirm=Conferma password
|
||||
prompt.password=Password
|
||||
prompt.userid=Nome utente
|
||||
pwreset.done.info=La password è stata modificata con successo. Fare clic su continua per accedere.
|
||||
pwreset.done.info=Your password was successfully changed. Please click on continue to log in.
|
||||
pwreset.email.sent=Se il vostro ID utente esiste, vi è stata inviata un'e-mail per reimpostare la password.
|
||||
pwreset.info.linktext=Password dimenticata
|
||||
pwreset.noticket=Il biglietto per la reimpostazione della password non è più valido. Si prega di generarne uno nuovo.
|
||||
pwreset.info.linktext=Password forgotten
|
||||
pwreset.noticket=Your password reset ticket is no longer valid. Please generate a new one.
|
||||
recovery_accessapp_auth.accessAppRegistered=App di accesso AGOV già registrata
|
||||
recovery_accessapp_auth.instruction1=Ha già registrato una nuova app di accesso AGOV !!!SECURITY_KEY_NAME!!! come parte del processo di recupero.
|
||||
recovery_accessapp_auth.instruction2=Si prega di usare !!!ACCESS_APP_NAME!!! per l'identificazione.
|
||||
|
@ -260,7 +260,7 @@ title.logout.confirmation=Logout
|
|||
title.logout.reminder=Logout
|
||||
title.oauth.consent=Autorizzazione del client
|
||||
title.pwchange.label=Cambiare Password
|
||||
title.pwreset=Password Dimenticata
|
||||
title.pwreset=Password Forgotten
|
||||
title.saml.failed=Error
|
||||
title.timeout.page=Logout
|
||||
user_input.invalid.email=Inserire un'e-mail valida.
|
||||
|
|
|
@ -28,7 +28,7 @@ String sessionId = session.get('ch.nevis.session.conversationId')
|
|||
String endPoint = "${parameters.get('utility-service.baseUrl')}/api/v1/recovery/code"
|
||||
|
||||
def userDto = new XmlSlurper().parseText(session.get('ch.adnovum.nevisidm.userDto'))
|
||||
def recoveryCredential = userDto.'**'.find {node -> node.name() == 'credentials' && node.type.text() == 'CONTEXT_PASSWORD' && node.state.text() == 'ACTIVE' && node.context.text() == 'RECOVERY'}
|
||||
def recoveryCredential = userDto.'**'.find {node -> node.name() == 'credentials' && node.type.text() == 'CONTEXT_PASSWORD' && node.context.text() == 'RECOVERY'}
|
||||
|
||||
// 1a) check if user has a credential
|
||||
if ( recoveryCredential != null ) {
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
RTENV_SECURITY_CHECK=no_shell
|
||||
|
||||
JAVA_OPTS=(
|
||||
"-XX:+UseContainerSupport"
|
||||
"-Dfile.encoding=UTF-8"
|
||||
"-XX:+UseContainerSupport"
|
||||
"-XX:MaxRAMPercentage=80.0"
|
||||
"-Djava.net.preferIPv4Stack=true"
|
||||
"-Djava.net.connectionTimeout=10000"
|
||||
|
|
|
@ -163,7 +163,7 @@
|
|||
<!-- source: pattern://68665057549fd887ea09fb86 -->
|
||||
<property name="parameter.appAddressRequired.whitelist" value="https://testapp-01.agov-w.azure.adnovum.net/test/api/saml2/service-provider-metadata/agovidp, OidcPlayground"/>
|
||||
<!-- source: pattern://68665057549fd887ea09fb86 -->
|
||||
<property name="parameter.url" value="http://connect-application-billing.adn-agov-connect-01-uat:8082/connect/billing/relying-party"/>
|
||||
<property name="parameter.url" value="http://connect-application-billing.adn-agov-connect-01-dev:8082/connect/billing/relying-party"/>
|
||||
<!-- source: pattern://68665057549fd887ea09fb86 -->
|
||||
<property name="scriptTraceGroup" value="AGOV-ACCT"/>
|
||||
<!-- source: pattern://68665057549fd887ea09fb86 -->
|
||||
|
@ -843,7 +843,7 @@
|
|||
<!-- source: pattern://9ff0369f3cf662f95d94ff09 -->
|
||||
<property name="script" value="file:///var/opt/nevisauth/default/conf/ensureRecoveryCode.groovy"/>
|
||||
<!-- source: pattern://9ff0369f3cf662f95d94ff09 -->
|
||||
<property name="parameter.utility-service.baseUrl" value="http://utility-application-be.adn-agov-me-01-uat:8081/utility"/>
|
||||
<property name="parameter.utility-service.baseUrl" value="http://utility-application-be.adn-agov-me-01-dev:8081/utility"/>
|
||||
<!-- source: pattern://9ff0369f3cf662f95d94ff09 -->
|
||||
<property name="parameter.idm.httpclient.tls.trustStoreRef" value="Ensure_Recovery_Code"/>
|
||||
<!-- source: pattern://9ff0369f3cf662f95d94ff09 -->
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
otel.service.name = auth
|
||||
otel.traces.exporter = none
|
||||
otel.metrics.exporter = none
|
||||
otel.logs.exporter = none
|
||||
otel.service.name=auth
|
||||
otel.traces.exporter=none
|
||||
otel.metrics.exporter=none
|
||||
otel.logs.exporter=none
|
||||
|
|
|
@ -28,25 +28,20 @@ spec:
|
|||
management:
|
||||
httpGet:
|
||||
path: "/nevisfido/liveness"
|
||||
periodSeconds: 5
|
||||
initialDelaySeconds: 40
|
||||
periodSeconds: 30
|
||||
timeoutSeconds: 6
|
||||
readinessProbe:
|
||||
management:
|
||||
httpGet:
|
||||
path: "/nevisfido/health"
|
||||
periodSeconds: 5
|
||||
initialDelaySeconds: 40
|
||||
periodSeconds: 30
|
||||
timeoutSeconds: 6
|
||||
startupProbe:
|
||||
management:
|
||||
httpGet:
|
||||
path: "/nevisfido/health"
|
||||
periodSeconds: 5
|
||||
timeoutSeconds: 6
|
||||
failureThreshold: 50
|
||||
podDisruptionBudget:
|
||||
maxUnavailable: "50%"
|
||||
git:
|
||||
tag: "r-90c0ddd9c0c4d9011252ef186298ca61c939e952"
|
||||
tag: "r-5560b9df58bc00fcf3fc92f29f5f7840af9dbf26"
|
||||
dir: "DEFAULT-ADN-AGOV-PROJECT/DEFAULT-ADN-AGOV-INV/fido-uaf"
|
||||
credentials: "git-credentials"
|
||||
keystores:
|
||||
|
|
|
@ -10,7 +10,7 @@ metadata:
|
|||
patternId: "ca92034f995b39fde562293c"
|
||||
spec:
|
||||
keystores:
|
||||
- name: "auth-sh4r3d-internal-idp-auth-signer"
|
||||
namespace: "adn-agov-nevisidm-01-uat"
|
||||
- name: "auth-sts-sh4r3d-internal-idp-auth-signer"
|
||||
namespace: "adn-agov-nevisidm-01-uat"
|
||||
- name: "auth-sh4r3d-internal-idp-auth-signer"
|
||||
namespace: "adn-agov-nevisidm-01-uat"
|
||||
|
|
|
@ -2,8 +2,8 @@ RUN_ARGS="--config conf/nevisfido.yml --log-config conf/logging.yml"
|
|||
|
||||
JAVA_OPTS=(
|
||||
"-XX:+UseContainerSupport"
|
||||
"-Dignore.me"
|
||||
"-XX:MaxRAMPercentage=80.0"
|
||||
"-Dignore.me"
|
||||
"-javaagent:/opt/agent/opentelemetry-javaagent.jar"
|
||||
"-Dotel.javaagent.logging=application"
|
||||
"-Dotel.javaagent.configuration-file=/var/opt/nevisfido/default/conf/otel.properties"
|
||||
|
|
|
@ -91,29 +91,6 @@
|
|||
"tcDisplay" : 1,
|
||||
"tcDisplayContentType" : "text/plain"
|
||||
},
|
||||
{
|
||||
"aaid" : "F1D0#0005",
|
||||
"description" : "Android NEVIS Mobile Authentication Password Authenticator",
|
||||
"assertionScheme" : "UAFV1TLV",
|
||||
"attestationRootCertificates" : [],
|
||||
"attestationTypes" : [ 15880 ],
|
||||
"upv" : [ {
|
||||
"major" : 1,
|
||||
"minor" : 1
|
||||
} ],
|
||||
"userVerificationDetails" : [ [ {
|
||||
"userVerification" : 4
|
||||
} ] ],
|
||||
"attachmentHint" : 1,
|
||||
"authenticationAlgorithm" : 9,
|
||||
"authenticatorVersion" : 1,
|
||||
"isSecondFactorOnly" : false,
|
||||
"keyProtection" : 1,
|
||||
"matcherProtection" : 1,
|
||||
"publicKeyAlgAndEncoding" : 256,
|
||||
"tcDisplay" : 1,
|
||||
"tcDisplayContentType" : "text/plain"
|
||||
},
|
||||
{
|
||||
"aaid" : "F1D0#1001",
|
||||
"description" : "iOS NEVIS Mobile Authentication PIN Authenticator",
|
||||
|
@ -205,27 +182,5 @@
|
|||
"publicKeyAlgAndEncoding" : 257,
|
||||
"tcDisplay" : 1,
|
||||
"tcDisplayContentType" : "text/plain"
|
||||
},
|
||||
{
|
||||
"aaid" : "F1D0#1005",
|
||||
"description" : "iOS NEVIS Mobile Authentication Password Authenticator",
|
||||
"assertionScheme" : "UAFV1TLV",
|
||||
"attestationRootCertificates" : [],
|
||||
"attestationTypes" : [ 15880 ],
|
||||
"upv" : [ {
|
||||
"major" : 1,
|
||||
"minor" : 1
|
||||
} ],
|
||||
"userVerificationDetails" : [ [ {
|
||||
"userVerification" : 4
|
||||
} ] ],
|
||||
"attachmentHint" : 1,
|
||||
"authenticationAlgorithm" : 2,
|
||||
"authenticatorVersion" : 1,
|
||||
"isSecondFactorOnly" : false,
|
||||
"keyProtection" : 1,
|
||||
"matcherProtection" : 1,
|
||||
"publicKeyAlgAndEncoding" : 257,
|
||||
"tcDisplay" : 1,
|
||||
"tcDisplayContentType" : "text/plain"
|
||||
}]
|
||||
}
|
||||
]
|
|
@ -1,4 +1,4 @@
|
|||
otel.service.name = fido-uaf
|
||||
otel.traces.exporter = none
|
||||
otel.metrics.exporter = none
|
||||
otel.logs.exporter = none
|
||||
otel.service.name=fido-uaf
|
||||
otel.traces.exporter=none
|
||||
otel.metrics.exporter=none
|
||||
otel.logs.exporter=none
|
||||
|
|
|
@ -28,25 +28,20 @@ spec:
|
|||
management:
|
||||
httpGet:
|
||||
path: "/nevisfido/liveness"
|
||||
periodSeconds: 5
|
||||
initialDelaySeconds: 40
|
||||
periodSeconds: 30
|
||||
timeoutSeconds: 6
|
||||
readinessProbe:
|
||||
management:
|
||||
httpGet:
|
||||
path: "/nevisfido/health"
|
||||
periodSeconds: 5
|
||||
initialDelaySeconds: 40
|
||||
periodSeconds: 30
|
||||
timeoutSeconds: 6
|
||||
startupProbe:
|
||||
management:
|
||||
httpGet:
|
||||
path: "/nevisfido/health"
|
||||
periodSeconds: 5
|
||||
timeoutSeconds: 6
|
||||
failureThreshold: 50
|
||||
podDisruptionBudget:
|
||||
maxUnavailable: "50%"
|
||||
git:
|
||||
tag: "r-90c0ddd9c0c4d9011252ef186298ca61c939e952"
|
||||
tag: "r-5560b9df58bc00fcf3fc92f29f5f7840af9dbf26"
|
||||
dir: "DEFAULT-ADN-AGOV-PROJECT/DEFAULT-ADN-AGOV-INV/fido2"
|
||||
credentials: "git-credentials"
|
||||
keystores:
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
otel.service.name = fido2
|
||||
otel.traces.exporter = none
|
||||
otel.metrics.exporter = none
|
||||
otel.logs.exporter = none
|
||||
otel.service.name=fido2
|
||||
otel.traces.exporter=none
|
||||
otel.metrics.exporter=none
|
||||
otel.logs.exporter=none
|
||||
|
|
|
@ -10,7 +10,7 @@ metadata:
|
|||
patternId: "b8a36646f81c3247cdb5d90b"
|
||||
spec:
|
||||
keystores:
|
||||
- name: "auth-sh4r3d-internal-idp-auth-signer"
|
||||
namespace: "adn-agov-nevisidm-01-uat"
|
||||
- name: "auth-sts-sh4r3d-internal-idp-auth-signer"
|
||||
namespace: "adn-agov-nevisidm-01-uat"
|
||||
- name: "auth-sh4r3d-internal-idp-auth-signer"
|
||||
namespace: "adn-agov-nevisidm-01-uat"
|
||||
|
|
|
@ -28,25 +28,20 @@ spec:
|
|||
management:
|
||||
httpGet:
|
||||
path: "/liveness"
|
||||
initialDelaySeconds: 40
|
||||
periodSeconds: 30
|
||||
timeoutSeconds: 6
|
||||
readinessProbe:
|
||||
management:
|
||||
httpGet:
|
||||
path: "/health"
|
||||
initialDelaySeconds: 40
|
||||
periodSeconds: 30
|
||||
timeoutSeconds: 6
|
||||
startupProbe:
|
||||
management:
|
||||
httpGet:
|
||||
path: "/health"
|
||||
periodSeconds: 30
|
||||
timeoutSeconds: 6
|
||||
failureThreshold: 10
|
||||
podDisruptionBudget:
|
||||
maxUnavailable: "50%"
|
||||
git:
|
||||
tag: "r-90c0ddd9c0c4d9011252ef186298ca61c939e952"
|
||||
tag: "r-5560b9df58bc00fcf3fc92f29f5f7840af9dbf26"
|
||||
dir: "DEFAULT-ADN-AGOV-PROJECT/DEFAULT-ADN-AGOV-INV/idm"
|
||||
credentials: "git-credentials"
|
||||
keystores:
|
||||
|
@ -61,3 +56,4 @@ spec:
|
|||
secrets:
|
||||
secret:
|
||||
- "0eb37a5f44023ef0ad1013b6-89ec31e5"
|
||||
- "a2068eb83a60702322c13949-27ed70d3"
|
||||
|
|
|
@ -1,8 +1 @@
|
|||
JAVA_OPTS=(
|
||||
"-XX:+UseContainerSupport"
|
||||
"-XX:MaxRAMPercentage=80.0"
|
||||
"-javaagent:/opt/agent/opentelemetry-javaagent.jar"
|
||||
"-Dotel.javaagent.logging=application"
|
||||
"-Dotel.javaagent.configuration-file=/var/opt/nevisidm/default/conf/otel.properties"
|
||||
"-Dotel.resource.attributes=service.version=8.2405.1,service.instance.id=$HOSTNAME"
|
||||
)
|
||||
JAVA_OPTS="-XX:+UseContainerSupport -XX:MaxRAMPercentage=80.0 -javaagent:/opt/agent/opentelemetry-javaagent.jar -Dotel.javaagent.logging=application -Dotel.javaagent.configuration-file=/var/opt/nevisidm/default/conf/otel.properties -Dotel.resource.attributes=service.version=8.2405.1,service.instance.id=$HOSTNAME"
|
|
@ -5,7 +5,7 @@ database.connection.url=jdbc:mariadb://mariadb-agov-uat.mariadb.database.azure.c
|
|||
# source: pattern://2951ead44a7a9362a4545094
|
||||
database.connection.username=adndbadmin
|
||||
# source: pattern://2951ead44a7a9362a4545094
|
||||
database.connection.password=secret://59f191e7aa67a1ed9f7b87d2
|
||||
database.connection.password=secret://a2068eb83a60702322c13949-27ed70d3
|
||||
# source: pattern://b8a36646f81c3247cdb5d90b
|
||||
application.mail.smtp.host=greenmail.adn-agov-mail-01-uat.svc
|
||||
# source: pattern://b8a36646f81c3247cdb5d90b
|
||||
|
@ -89,8 +89,6 @@ server.host=0.0.0.0
|
|||
# source: pattern://b8a36646f81c3247cdb5d90b
|
||||
server.tls.enabled=true
|
||||
# source: pattern://b8a36646f81c3247cdb5d90b
|
||||
server.tls.client-auth=requested
|
||||
# source: pattern://b8a36646f81c3247cdb5d90b
|
||||
server.tls.keystore=/var/opt/keys/own/idm-default-identity/keystore.p12
|
||||
# source: pattern://b8a36646f81c3247cdb5d90b
|
||||
server.tls.keystore-passphrase=${exec:/var/opt/keys/own/idm-default-identity/keypass}
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
otel.service.name = idm
|
||||
otel.traces.exporter = none
|
||||
otel.metrics.exporter = none
|
||||
otel.logs.exporter = none
|
||||
otel.service.name=idm
|
||||
otel.traces.exporter=none
|
||||
otel.metrics.exporter=none
|
||||
otel.logs.exporter=none
|
||||
|
|
|
@ -28,23 +28,19 @@ spec:
|
|||
management:
|
||||
httpGet:
|
||||
path: "/nevislogrend/liveness"
|
||||
periodSeconds: 5
|
||||
initialDelaySeconds: 40
|
||||
periodSeconds: 30
|
||||
timeoutSeconds: 6
|
||||
readinessProbe:
|
||||
server:
|
||||
tcpSocket: true
|
||||
periodSeconds: 5
|
||||
initialDelaySeconds: 40
|
||||
periodSeconds: 20
|
||||
timeoutSeconds: 4
|
||||
startupProbe:
|
||||
server:
|
||||
tcpSocket: true
|
||||
periodSeconds: 5
|
||||
timeoutSeconds: 4
|
||||
failureThreshold: 50
|
||||
podDisruptionBudget:
|
||||
maxUnavailable: "50%"
|
||||
git:
|
||||
tag: "r-90c0ddd9c0c4d9011252ef186298ca61c939e952"
|
||||
tag: "r-5560b9df58bc00fcf3fc92f29f5f7840af9dbf26"
|
||||
dir: "DEFAULT-ADN-AGOV-PROJECT/DEFAULT-ADN-AGOV-INV/logrend"
|
||||
credentials: "git-credentials"
|
||||
podSecurity:
|
||||
|
|
|
@ -4,8 +4,8 @@ RTENV_SECURITY_CHECK=no_shell
|
|||
LOGREND_DEPLOY_TYPE=standalone
|
||||
|
||||
JAVA_OPTS=(
|
||||
"-XX:+UseContainerSupport"
|
||||
"-Dfile.encoding=UTF-8"
|
||||
"-XX:+UseContainerSupport"
|
||||
"-XX:MaxRAMPercentage=80.0"
|
||||
"-javaagent:/opt/agent/opentelemetry-javaagent.jar"
|
||||
"-Dotel.javaagent.logging=application"
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
otel.service.name = logrend
|
||||
otel.traces.exporter = none
|
||||
otel.metrics.exporter = none
|
||||
otel.logs.exporter = none
|
||||
otel.service.name=logrend
|
||||
otel.traces.exporter=none
|
||||
otel.metrics.exporter=none
|
||||
otel.logs.exporter=none
|
||||
|
|
|
@ -135,10 +135,10 @@ prompt.newpassword=Nuova Password
|
|||
prompt.newpassword.confirm=Conferma password
|
||||
prompt.password=Password
|
||||
prompt.userid=Nome utente
|
||||
pwreset.done.info=La password è stata modificata con successo. Fare clic su continua per accedere.
|
||||
pwreset.done.info=Your password was successfully changed. Please click on continue to log in.
|
||||
pwreset.email.sent=Se il vostro ID utente esiste, vi è stata inviata un'e-mail per reimpostare la password.
|
||||
pwreset.info.linktext=Password dimenticata
|
||||
pwreset.noticket=Il biglietto per la reimpostazione della password non è più valido. Si prega di generarne uno nuovo.
|
||||
pwreset.info.linktext=Password forgotten
|
||||
pwreset.noticket=Your password reset ticket is no longer valid. Please generate a new one.
|
||||
recovery_accessapp_auth.accessAppRegistered=App di accesso AGOV già registrata
|
||||
recovery_accessapp_auth.instruction1=Ha già registrato una nuova app di accesso AGOV !!!SECURITY_KEY_NAME!!! come parte del processo di recupero.
|
||||
recovery_accessapp_auth.instruction2=Si prega di usare !!!ACCESS_APP_NAME!!! per l'identificazione.
|
||||
|
@ -204,7 +204,7 @@ recovery_start_info.title=Il processo di ripristino sta per iniziare.
|
|||
title=NEVIS SSO Portal
|
||||
title.login=Login
|
||||
title.pwchange.label=Cambiare Password
|
||||
title.pwreset=Password Dimenticata
|
||||
title.pwreset=Password Forgotten
|
||||
user_input.invalid.email=Inserire un'e-mail valida.
|
||||
user_input.invalid.email.required=Campo obbligatorio
|
||||
user_input.invalid.email.tooLong=Il testo inserito è troppo lungo.
|
||||
|
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
@ -1,7 +1,7 @@
|
|||
#parse("${templatePath}/header.vm")
|
||||
|
||||
<agov-backdrop></agov-backdrop>
|
||||
<div id="fidoBackdrop" style="display: none">
|
||||
<div id="fidoBackdrop" class="hidden">
|
||||
<div class="fixed z-50 top-0 left-0 bottom-0 right-0 backdrop-blur-[10px]"></div>
|
||||
<div class="fixed z-50 top-0 left-0 bottom-0 right-0 bg-zinc-50 opacity-80"></div>
|
||||
</div>
|
||||
|
@ -15,16 +15,16 @@
|
|||
<h4 class="font-header text-h4 text-disabled-grey dark:text-silver">$text.get("general.securityKey")</h4>
|
||||
</div>
|
||||
|
||||
#set ($formTarget = $utils.escapeHtmlAttribute($gui.target.replaceAll('&?language=[^&]*','')))
|
||||
#set ($formTarget = $utils.escapeHtmlAttribute($gui.target.replaceAll('&?language=[^&]*','')))
|
||||
<form id="$gui.name" name="$gui.name" method="POST" target="_self" action="$formTarget" autocomplete="off"
|
||||
accept-charset="UTF-8">
|
||||
<div class="flex flex-row items-center justify-between">
|
||||
#set ($emailInput = $gui.getGuiElem('email'))
|
||||
#if ($emailInput && $emailInput.value && $emailInput.value.length() > 0)
|
||||
#set ($emailInput = $gui.getGuiElem('email'))
|
||||
#if ($emailInput && $emailInput.value && $emailInput.value.length() > 0)
|
||||
<p class="text-space-blue dark:text-white font-body-semi text-body-l truncate">$utils.escapeHtmlAttribute($emailInput.value)</p>
|
||||
#else
|
||||
#else
|
||||
<p class="text-space-blue dark:text-white font-body-semi text-body-l truncate"></p>
|
||||
#end
|
||||
#end
|
||||
<agov-button
|
||||
class="shrink-0"
|
||||
data-style="frameless"
|
||||
|
@ -40,11 +40,10 @@
|
|||
</form>
|
||||
<div class="mt-3 mb-6 w-full h-px bg-platinum rounded-full"></div>
|
||||
|
||||
<div style="display: none"
|
||||
class="error flex rounded-xl bg-error-background dark:bg-dark-error-background items-center p-4 mb-4">
|
||||
<div class="error flex rounded-xl bg-error-background dark:bg-dark-error-background items-center p-4 mb-4 hidden">
|
||||
<i class="fa-regular fa-exclamation-circle rounded-full p-3 text-error dark:text-dark-error bg-error/10 dark:bg-dark-error-icon mr-4 text-xl leading-none"></i>
|
||||
<p class="font-body text-body-l text-space-blue dark:text-white">
|
||||
$text.get("fido2_auth.cancel.fido")
|
||||
$text.get("fido2_auth.cancel.fido")
|
||||
</p>
|
||||
</div>
|
||||
|
||||
|
@ -53,21 +52,21 @@
|
|||
<span class="font-header text-h6 bg-royal-light-blue dark:bg-blueish-black w-12 h-12 flex flex-none items-center justify-center rounded-full
|
||||
text-space-blue dark:text-white leading-none">1</span>
|
||||
<p class="font-body-semi text-body-l text-space-blue dark:text-white ml-4">$text.get(
|
||||
"fido2_auth.instruction1")</p>
|
||||
"fido2_auth.instruction1")</p>
|
||||
</div>
|
||||
|
||||
<div class="flex mb-2 items-center">
|
||||
<span class="font-header text-h6 bg-royal-light-blue dark:bg-blueish-black w-12 h-12 flex flex-none items-center justify-center rounded-full
|
||||
text-space-blue dark:text-white leading-none">2</span>
|
||||
<p class="font-body-semi text-body-l text-space-blue dark:text-white ml-4">$text.get(
|
||||
"fido2_auth.instruction2")</p>
|
||||
"fido2_auth.instruction2")</p>
|
||||
</div>
|
||||
|
||||
<div class="flex mb-2 items-center">
|
||||
<span class="font-header text-h6 bg-royal-light-blue dark:bg-blueish-black w-12 h-12 flex flex-none items-center justify-center rounded-full
|
||||
text-space-blue dark:text-white leading-none">3</span>
|
||||
<p class="font-body-semi text-body-l text-space-blue dark:text-white ml-4">$text.get(
|
||||
"fido2_auth.instruction3")</p>
|
||||
"fido2_auth.instruction3")</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
@ -79,7 +78,7 @@
|
|||
</agov-checkbox>
|
||||
|
||||
<label for="skip" class="font-body text-body-l text-space-blue dark:text-white cursor-pointer">
|
||||
$text.get("fido2_auth.skipInstructions")
|
||||
$text.get("fido2_auth.skipInstructions")
|
||||
</label>
|
||||
</div>
|
||||
<div class="mt-auto mb-6 sm:mb-0">
|
||||
|
@ -94,7 +93,7 @@
|
|||
<div class="flex items-center mt-6 mb-4">
|
||||
<span class="h-px w-full bg-silver"></span>
|
||||
<span class="px-2 text-disabled-grey font-body-semi text-body-l whitespace-nowrap">
|
||||
$text.get("fido2_auth.switchLogin")
|
||||
$text.get("fido2_auth.switchLogin")
|
||||
</span>
|
||||
<span class="h-px w-full bg-silver"></span>
|
||||
</div>
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
$text.get("footer.text")
|
||||
<a target="_blank" class='text-hyperlink dark:text-dark-hyperlink underline' href='$text.get("footer.link")'>$text.get("footer.link.label")</a>
|
||||
</div>
|
||||
<p>1.5.3.51-20240709T140654Z</p>
|
||||
<p>1.6.0.2137-20240812T051256Z</p>
|
||||
</footer>
|
||||
<script src="${login.appDataPath}/static/bundle.js"></script>
|
||||
</body>
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
<!DOCTYPE html>
|
||||
## svh -> Small View Height. It's not taking the height of the search bar on mobile into account
|
||||
<html lang="$login.language" class="relative min-h-screen h-full mx-4 flex sm:block" style="min-height: 100svh">
|
||||
<html lang="$login.language" class="relative min-h-100 h-full mx-4 flex sm:block">
|
||||
<head>
|
||||
<title>AGOV</title>
|
||||
<meta charset="UTF-8">
|
||||
|
|
|
@ -10,15 +10,15 @@
|
|||
class="flex items-center rounded-xl gap-5 p-2 sm:p-0 sm:w-auto w-full hidden bg-pale-blue dark:bg-purple-black sm:bg-transparent">
|
||||
<div class="flex items-center p-2 bg-white rounded sm:rounded-xl w-16 h-16" id="logo"></div>
|
||||
<h1 class="font-header text-h6 sm:text-h4 text-space-blue dark:text-white">
|
||||
#if ($login.language =="en")
|
||||
#if ($login.language =="en")
|
||||
$utils.escapeHtmlAttribute($gui.getGuiElem('agov.appDisplayNameEN').value)
|
||||
#elseif ($login.language =="de")
|
||||
$utils.escapeHtmlAttribute($gui.getGuiElem('agov.appDisplayNameDE').value)
|
||||
#elseif ($login.language =="fr")
|
||||
$utils.escapeHtmlAttribute($gui.getGuiElem('agov.appDisplayNameFR').value)
|
||||
#else
|
||||
$utils.escapeHtmlAttribute($gui.getGuiElem('agov.appDisplayNameIT').value)
|
||||
#end
|
||||
$utils.escapeHtmlAttribute($gui.getGuiElem('agov.appDisplayNameDE').value)
|
||||
#elseif ($login.language =="fr")
|
||||
$utils.escapeHtmlAttribute($gui.getGuiElem('agov.appDisplayNameFR').value)
|
||||
#else
|
||||
$utils.escapeHtmlAttribute($gui.getGuiElem('agov.appDisplayNameIT').value)
|
||||
#end
|
||||
</h1>
|
||||
</div>
|
||||
|
||||
|
@ -28,7 +28,7 @@
|
|||
<h1 class="font-header text-h4 text-space-blue dark:text-white mb-8">$text.get("general.registration")</h1>
|
||||
|
||||
<h2 class="font-header text-h5 text-space-blue dark:text-white text-center mb-4">
|
||||
$text.get("mauth_usernameless.noAccount")
|
||||
$text.get("mauth_usernameless.noAccount")
|
||||
</h2>
|
||||
|
||||
<form id="$gui.name" name="$gui.name" method="POST" target="_self" action="$formTarget" autocomplete="off"
|
||||
|
@ -69,15 +69,15 @@
|
|||
<div class="flex items-center p-2 bg-white dark:bg-black rounded sm:rounded-xl w-16 h-16"
|
||||
id="logoMobile"></div>
|
||||
<h1 class="font-header text-h6 sm:text-h4 text-space-blue dark:text-white">
|
||||
#if ($login.language =="en")
|
||||
#if ($login.language =="en")
|
||||
$utils.escapeHtmlAttribute($gui.getGuiElem('agov.appDisplayNameEN').value)
|
||||
#elseif ($login.language =="de")
|
||||
$utils.escapeHtmlAttribute($gui.getGuiElem('agov.appDisplayNameDE').value)
|
||||
#elseif ($login.language =="fr")
|
||||
$utils.escapeHtmlAttribute($gui.getGuiElem('agov.appDisplayNameFR').value)
|
||||
#else
|
||||
$utils.escapeHtmlAttribute($gui.getGuiElem('agov.appDisplayNameIT').value)
|
||||
#end
|
||||
$utils.escapeHtmlAttribute($gui.getGuiElem('agov.appDisplayNameDE').value)
|
||||
#elseif ($login.language =="fr")
|
||||
$utils.escapeHtmlAttribute($gui.getGuiElem('agov.appDisplayNameFR').value)
|
||||
#else
|
||||
$utils.escapeHtmlAttribute($gui.getGuiElem('agov.appDisplayNameIT').value)
|
||||
#end
|
||||
</h1>
|
||||
</div>
|
||||
|
||||
|
@ -93,65 +93,65 @@
|
|||
<div id="accessAppModal" class="h-full">
|
||||
|
||||
<div class="desktopBanner" aria-live="assertive">
|
||||
<div style="display: none"
|
||||
class="info flex rounded-xl bg-info-background dark:bg-dark-info-background items-center p-4 mb-4">
|
||||
<div class="hidden info flex rounded-xl bg-info-background dark:bg-dark-info-background items-center p-4
|
||||
mb-4">
|
||||
<i class="fa-regular fa-info-circle rounded-full p-3 text-info dark:text-dark-info bg-info/10 dark:bg-dark-info-icon mr-4 text-xl leading-none"></i>
|
||||
<p class="font-body text-body-l text-space-blue dark:text-white">
|
||||
$text.get("mauth_usernameless.banner.info")
|
||||
$text.get("mauth_usernameless.banner.info")
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div style="display: none"
|
||||
class="success flex rounded-xl bg-success-background dark:bg-dark-success-background items-center p-4 mb-4">
|
||||
<div class="hidden success flex rounded-xl bg-success-background dark:bg-dark-success-background
|
||||
items-center p-4 mb-4">
|
||||
<i class="fa-regular fa-check-circle rounded-full p-3 text-success dark:text-dark-success bg-success/10 dark:bg-dark-success-icon mr-4 text-xl leading-none"></i>
|
||||
<div>
|
||||
<p class="font-body text-body-l text-space-blue dark:text-white">
|
||||
$text.get("mauth_usernameless.banner.success")
|
||||
$text.get("mauth_usernameless.banner.success")
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="display: none"
|
||||
class="error flex rounded-xl bg-error-background dark:bg-dark-error-background items-center p-4 mb-4">
|
||||
<div class="hidden error flex rounded-xl bg-error-background dark:bg-dark-error-background items-center
|
||||
p-4 mb-4">
|
||||
<i class="fa-regular fa-exclamation-circle rounded-full p-3 text-error dark:text-dark-error bg-error/10 dark:bg-dark-error-icon mr-4 text-xl leading-none"></i>
|
||||
<p class="font-body text-body-l text-space-blue dark:text-white">
|
||||
$text.get("mauth_usernameless.banner.error")
|
||||
$text.get("mauth_usernameless.banner.error")
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="relative flex flex-col h-full">
|
||||
<div id="blurBackdrop" class="absolute backdrop-blur-sm -top-1 -bottom-8 -left-4 -right-4 z-10"
|
||||
style="display:none "></div>
|
||||
<div id="blurBackdrop" class="hidden absolute backdrop-blur-sm -top-1 -bottom-8 -left-4 -right-4
|
||||
z-10"></div>
|
||||
<div class="mobileBanner relative z-20" aria-live="assertive">
|
||||
<div style="display: none"
|
||||
class="info flex rounded-xl bg-info-background dark:bg-dark-info-background items-center p-4 mb-4">
|
||||
<div class="hidden info flex rounded-xl bg-info-background dark:bg-dark-info-background items-center
|
||||
p-4 mb-4">
|
||||
<i class="fa-regular fa-info-circle rounded-full p-3 text-info dark:text-dark-info bg-info/10 dark:bg-dark-info-icon mr-4 text-xl leading-none"></i>
|
||||
<p class="font-body text-body-l text-space-blue dark:text-white">
|
||||
$text.get("mauth_usernameless.banner.info")
|
||||
$text.get("mauth_usernameless.banner.info")
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div style="display: none"
|
||||
class="success flex rounded-xl bg-success-background dark:bg-dark-success-background items-center p-4 mb-4">
|
||||
<div class="hidden success flex rounded-xl bg-success-background dark:bg-dark-success-background
|
||||
items-center p-4 mb-4">
|
||||
<i class="fa-regular fa-check-circle rounded-full p-3 text-success dark:text-dark-success bg-success/10 dark:bg-dark-success-icon mr-4 text-xl leading-none"></i>
|
||||
<div>
|
||||
<p class="font-body text-body-l text-space-blue dark:text-white">
|
||||
$text.get("mauth_usernameless.banner.success")
|
||||
$text.get("mauth_usernameless.banner.success")
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="display: none"
|
||||
class="error flex rounded-xl bg-error-background dark:bg-dark-error-background items-center p-4 mb-4">
|
||||
<div class="hidden error flex rounded-xl bg-error-background dark:bg-dark-error-background
|
||||
items-center p-4 mb-4">
|
||||
<i class="fa-regular fa-exclamation-circle rounded-full p-3 text-error dark:text-dark-error bg-error/10 dark:bg-dark-error-icon mr-4 text-xl leading-none"></i>
|
||||
<p class="font-body text-body-l text-space-blue dark:text-white">
|
||||
$text.get("mauth_usernameless.banner.error")
|
||||
$text.get("mauth_usernameless.banner.error")
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
<div id="agovLoginImageMobile" style="display: none"
|
||||
class="md:max-w-[520px] max-w-[350px] sm:max-w-[300px] w-full mx-auto mb-6">
|
||||
<div id="agovLoginImageMobile" class="hidden md:max-w-[520px] max-w-[350px] sm:max-w-[300px] w-full
|
||||
mx-auto mb-6">
|
||||
<img alt=""
|
||||
src="${login.appDataPath}/static/images/login.svg"
|
||||
class="block sm:hidden md:block dark:hidden w-full">
|
||||
|
@ -165,12 +165,12 @@
|
|||
<canvas role="img" aria-labelledby="labelQRCodeInstructions" id="mauth_qrcode"
|
||||
class="mb-6 mx-auto"></canvas>
|
||||
<div class="hidden" id="QRcodeHiddenLink"></div>
|
||||
<span id="spinner" class="absolute left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2 z-20"
|
||||
style="display: none">
|
||||
<span id="spinner" class="hidden absolute left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2
|
||||
z-20">
|
||||
<img src="${login.appDataPath}/static/images/spinner.svg" class="animate-spin block dark:hidden">
|
||||
<img src="${login.appDataPath}/static/images/spinner-dark.svg"
|
||||
class="animate-spin hidden dark:block">
|
||||
</span>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
<a id="accessAppLinkIpad" href="" class="hidden">
|
||||
|
@ -189,7 +189,7 @@
|
|||
dark:bg-purple-black">
|
||||
<img alt="" src="${login.appDataPath}/static/images/access-app.svg" class="h-12 mr-4">
|
||||
<p id="labelQRCodeInstructions" class="font-header text-h5 text-space-blue dark:text-white">
|
||||
$text.get("mauth_usernameless.instructions")
|
||||
$text.get("mauth_usernameless.instructions")
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -197,7 +197,7 @@
|
|||
<form id="$gui.name" name="$gui.name" method="POST" target="_self" action="$formTarget" autocomplete="off"
|
||||
accept-charset="UTF-8" class="w-full sm:static mt-auto mb-20 sm:mb-0">
|
||||
|
||||
<div id="mobileButtons" style="display: none" class="w-full">
|
||||
<div id="mobileButtons" class="hidden w-full">
|
||||
<div class="flex flex-col">
|
||||
<a id="accessAppLink" href="">
|
||||
<agov-button
|
||||
|
@ -218,21 +218,20 @@
|
|||
data-value="EID"
|
||||
data-id="EID"
|
||||
data-label="<i class='fa-regular fa-eye align-middle text-xl text-indigo dark:text-lilac mr-2'></i>$text.get(
|
||||
"mauth_usernameless.showQR")"
|
||||
"mauth_usernameless.showQR")"
|
||||
data-type="button"
|
||||
data-fullwidth="true">
|
||||
</agov-button>
|
||||
|
||||
<agov-button
|
||||
style="display: none"
|
||||
id="hideQR"
|
||||
class="block basis-full"
|
||||
class="hidden basis-full"
|
||||
data-style="frameless"
|
||||
data-name="EID"
|
||||
data-value="EID"
|
||||
data-id="EID"
|
||||
data-label="<i class='fa-regular fa-eye-slash align-middle text-xl text-indigo dark:text-lilac mr-2'></i>$text.get(
|
||||
"mauth_usernameless.hideQR")"
|
||||
"mauth_usernameless.hideQR")"
|
||||
data-type="button"
|
||||
data-fullwidth="true">
|
||||
</agov-button>
|
||||
|
@ -246,11 +245,11 @@
|
|||
<div id="securityKeyModal" class="hidden mt-16">
|
||||
|
||||
<h2 class="font-header text-h5 text-space-blue dark:text-white mt-4 text-center">
|
||||
$text.get("mauth_usernameless.useSecurityKey")
|
||||
$text.get("mauth_usernameless.useSecurityKey")
|
||||
</h2>
|
||||
|
||||
<p class="font-body text-body-l text-space-blue dark:text-white text-center my-6">
|
||||
$text.get("mauth_usernameless.useSecurityKeyInfo")
|
||||
$text.get("mauth_usernameless.useSecurityKeyInfo")
|
||||
</p>
|
||||
|
||||
<form id="$gui.name" name="$gui.name" method="POST" target="_self" action="$formTarget" autocomplete="off"
|
||||
|
@ -280,14 +279,14 @@
|
|||
<button class="hidden" id="onReload" name="onReload"></button>
|
||||
|
||||
<h2 class="font-header text-h5 text-space-blue dark:text-white mt-7 mb-4 text-center">
|
||||
$text.get("mauth_usernameless.cannotLogin")
|
||||
$text.get("mauth_usernameless.cannotLogin")
|
||||
</h2>
|
||||
<agov-button
|
||||
data-style="secondary"
|
||||
data-name="fallback"
|
||||
data-value="recovery"
|
||||
data-label="<i class='fa-regular fa-suitcase-medical text-indigo dark:text-lilac mr-2'></i>$text.get(
|
||||
"mauth_usernameless.startRecovery")"
|
||||
"mauth_usernameless.startRecovery")"
|
||||
data-type="submit"
|
||||
data-fullwidth="true"
|
||||
class="block">
|
||||
|
@ -300,7 +299,7 @@
|
|||
</div>
|
||||
</div>
|
||||
<form id="$gui.name" name="$gui.name" method="POST" target="_self" action="$formTarget" autocomplete="off"
|
||||
accept-charset="UTF-8" style="display: none" class="sm:hidden formDrawer">
|
||||
accept-charset="UTF-8" class="hidden sm:hidden formDrawer">
|
||||
<div class="w-full z-30 fixed left-0 pointer-events-none" id="drawerContainer">
|
||||
<div class="w-full bg-white dark:bg-surface-black px-4 pb-[130px] rounded-t-2xl pointer-events-auto" id="drawer">
|
||||
<div class="pt-2 pb-4 cursor-pointer">
|
||||
|
@ -309,12 +308,12 @@
|
|||
|
||||
<div class="flex items-center justify-center mb-6">
|
||||
<span class="px-2 text-disabled-grey dark:text-white font-body-semi text-body-l whitespace-nowrap">
|
||||
$text.get("general.otherOptions")
|
||||
$text.get("general.otherOptions")
|
||||
</span>
|
||||
</div>
|
||||
|
||||
<p class="font-body-semi text-body-l text-space-blue dark:text-white text-center mb-2">
|
||||
$text.get("mauth_usernameless.noAccount")
|
||||
$text.get("mauth_usernameless.noAccount")
|
||||
</p>
|
||||
|
||||
<agov-button
|
||||
|
@ -330,14 +329,14 @@
|
|||
<div class="flex items-center mt-6 mb-6">
|
||||
<span class="h-px w-full bg-silver"></span>
|
||||
<span class="px-2 text-disabled-grey dark:text-white font-body-semi text-body-l whitespace-nowrap">
|
||||
$text.get("general.or")</span>
|
||||
$text.get("general.or")</span>
|
||||
<span class="h-px w-full bg-silver"></span>
|
||||
</div>
|
||||
|
||||
<div class="flex flex-col flex-wrap justify-center items-center mb-6 gap-1">
|
||||
|
||||
<p class="font-body-semi text-body-l text-space-blue dark:text-white">
|
||||
$text.get("mauth_usernameless.cannotLogin")
|
||||
$text.get("mauth_usernameless.cannotLogin")
|
||||
</p>
|
||||
<agov-button
|
||||
data-style="frameless"
|
||||
|
@ -353,9 +352,9 @@
|
|||
|
||||
|
||||
<div class="font-body text-body-s text-disabled-grey dark:text-silver text-center">
|
||||
$text.get("footer.text")
|
||||
$text.get("footer.text")
|
||||
<a target="_blank" class='text-hyperlink dark:text-info underline' href='$text.get("footer.link")'>$text.get(
|
||||
"footer.link.label")</a>
|
||||
"footer.link.label")</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
<!DOCTYPE html>
|
||||
## svh -> Small View Height. It's not taking the height of the search bar on mobile into account
|
||||
<html lang="$login.language" class="relative min-h-screen h-full mx-4 flex sm:block" style="min-height: 100svh">
|
||||
## svh -> Small View Height. It's not taking the height of the search bar on mobile into account
|
||||
<html lang="$login.language" class="relative min-h-100 h-full mx-4 flex sm:block">
|
||||
<head>
|
||||
<title>AGOV Operations</title>
|
||||
<meta charset="UTF-8">
|
||||
|
@ -20,51 +20,53 @@
|
|||
<img alt="agov Logo" src="${login.appDataPath}/static/images/agov-logo.svg" class="h-5 sm:h-8 sm:mr-6 dark:hidden">
|
||||
<img alt="agov Logo" src="${login.appDataPath}/static/images/agov-logo-dark.svg" class="h-5 sm:h-8 sm:mr-6 hidden dark:block">
|
||||
<div class="flex items-center flex-1 sm:flex-initial justify-end">
|
||||
#set ($langMenu = '')
|
||||
#foreach ($locale in $login.locales)
|
||||
## find translated label of current locale
|
||||
#if ($text.contains("language.$locale"))
|
||||
#set ($langLabel = $text.get("language.$locale"))
|
||||
#elseif ($locale.length() > 2)
|
||||
#set ($langLabel = $text.get("language.${locale.substring(0,2).toLowerCase()}"))
|
||||
#else
|
||||
#set ($langLabel = $locale)
|
||||
#end
|
||||
## emit link or text for each language
|
||||
#set ($langTarget = $utils.escapeHtmlAttribute($gui.target('language', $locale)))
|
||||
#set ($langMenu = '')
|
||||
#foreach ($locale in $login.locales)
|
||||
## find translated label of current locale
|
||||
#if ($text.contains("language.$locale"))
|
||||
#set ($langLabel = $text.get("language.$locale"))
|
||||
#elseif ($locale.length() > 2)
|
||||
#set ($langLabel = $text.get("language.${locale.substring(0,2).toLowerCase()}"))
|
||||
#else
|
||||
#set ($langLabel = $locale)
|
||||
#end
|
||||
## emit link or text for each language
|
||||
#set ($langTarget = $utils.escapeHtmlAttribute($gui.target('language', $locale)))
|
||||
|
||||
#if ($login.localeCode != $locale && $login.language != $locale)
|
||||
#set ($langMenu = $langMenu + '<li><a
|
||||
#if ($login.localeCode != $locale && $login.language != $locale)
|
||||
#set ($langMenu = $langMenu + '<li><a
|
||||
class="block px-8 sm:px-4 py-3 hover:bg-lavender-blush dark:hover:bg-purple-black"
|
||||
aria-current="false"
|
||||
href="'+$langTarget+'">'+$langLabel+' - '+$locale.toUpperCase()
|
||||
+'</a></li>')
|
||||
#else
|
||||
#set ($langMenu = $langMenu + '<li><a
|
||||
+'</a></li>')
|
||||
#else
|
||||
#set ($langMenu = $langMenu + '<li><a
|
||||
class="flex items-center px-8 sm:px-4 justify-between w-full py-3 bg-indigo-light dark:bg-purple-black"
|
||||
aria-current="true"
|
||||
href="'+$langTarget+'"><span class="font-body-semi"
|
||||
>'+$langLabel+' - '+$locale.toUpperCase()+'</span><span class="fa-solid fa-check text-indigo dark:text-white text-body-l"></span></li>')
|
||||
#end
|
||||
#end ## end foreach
|
||||
>'+$langLabel+' - '+$locale.toUpperCase()+
|
||||
'</span><span class="fa-solid fa-check text-indigo dark:text-white text-body-l"></span></li>')
|
||||
#end
|
||||
#end ## end foreach
|
||||
|
||||
<agov-language
|
||||
class="hidden sm:inline-block"
|
||||
data-lang='$login.localeCode.toUpperCase()'
|
||||
data-links='$langMenu'
|
||||
data-aria_label='$text.get("languageDropdown.aria.label")'
|
||||
>
|
||||
>
|
||||
</agov-language>
|
||||
<a href="$text.get("general.help.link")" target="_blank" class="cursor-pointer hidden sm:inline-block">
|
||||
<div class="mx-6 flex items-center">
|
||||
<i class="text-xl pr-2 fa-regular fa-circle-question ml-auto text-space-blue dark:text-white transition-all"></i>
|
||||
<span class="text-space-blue dark:text-white font-body-semi text-body-l transition-colors">$text.get("general.help")</span>
|
||||
<span class="text-space-blue dark:text-white font-body-semi text-body-l transition-colors">$text.get(
|
||||
"general.help")</span>
|
||||
</div>
|
||||
</a>
|
||||
|
||||
<agov-darkmode
|
||||
class="hidden sm:inline-block"
|
||||
data-aria_label='$text.get("darkModeSwitch.aria.label")'>
|
||||
class="hidden sm:inline-block"
|
||||
data-aria_label='$text.get("darkModeSwitch.aria.label")'>
|
||||
</agov-darkmode>
|
||||
|
||||
<agov-mobile-menu
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
#parse("${templatePath}/header.vm")
|
||||
|
||||
<agov-backdrop></agov-backdrop>
|
||||
<div id="fidoBackdrop" style="display: none">
|
||||
<div id="fidoBackdrop" class="hidden">
|
||||
<div class="fixed z-50 top-0 left-0 bottom-0 right-0 backdrop-blur-[10px]"></div>
|
||||
<div class="fixed z-50 top-0 left-0 bottom-0 right-0 bg-zinc-50 opacity-80"></div>
|
||||
</div>
|
||||
|
@ -16,79 +16,73 @@
|
|||
</div>
|
||||
|
||||
<h3 class="font-header text-h5 text-space-blue dark:text-white mb-4">$text.get(
|
||||
"recovery_accessapp_auth.accessAppRegistered")</h3>
|
||||
"recovery_accessapp_auth.accessAppRegistered")</h3>
|
||||
|
||||
<p class="font-body text-body-l text-space-blue dark:text-white mb-2">
|
||||
${text.get("recovery_accessapp_auth.instruction1").replaceAll(
|
||||
"!!!ACCESS_APP_NAME!!!", "$utils.escapeHtmlAttribute($gui.getGuiElem('accessApp').value)")}
|
||||
${text.get("recovery_accessapp_auth.instruction1").replaceAll(
|
||||
"!!!ACCESS_APP_NAME!!!", "$utils.escapeHtmlAttribute($gui.getGuiElem('accessApp').value)")}
|
||||
</p>
|
||||
|
||||
<p class="font-body text-body-l text-space-blue dark:text-white mb-8">
|
||||
${text.get("recovery_accessapp_auth.instruction2").replaceAll(
|
||||
"!!!ACCESS_APP_NAME!!!", "$utils.escapeHtmlAttribute($gui.getGuiElem('accessApp').value)")}
|
||||
${text.get("recovery_accessapp_auth.instruction2").replaceAll(
|
||||
"!!!ACCESS_APP_NAME!!!", "$utils.escapeHtmlAttribute($gui.getGuiElem('accessApp').value)")}
|
||||
</p>
|
||||
|
||||
<div id="accessAppModal" class="h-full">
|
||||
<div class="desktopBanner" aria-live="assertive">
|
||||
<div style="display: none"
|
||||
class="info flex rounded-xl bg-info-background dark:bg-dark-info-background items-center p-4 mb-4">
|
||||
<div class="hidden info flex rounded-xl bg-info-background dark:bg-dark-info-background items-center p-4
|
||||
mb-4">
|
||||
<i class="fa-regular fa-info-circle rounded-full p-3 text-info dark:text-dark-info bg-info/10 dark:bg-dark-info-icon mr-4 text-xl leading-none"></i>
|
||||
<p class="font-body text-body-l text-space-blue dark:text-white">
|
||||
$text.get("mauth_usernameless.banner.info")
|
||||
$text.get("mauth_usernameless.banner.info")
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div style="display: none"
|
||||
class="success flex rounded-xl bg-success-background dark:bg-dark-success-background items-center p-4 mb-4">
|
||||
<div class="hidden success flex rounded-xl bg-success-background dark:bg-dark-success-background items-center p-4 mb-4">
|
||||
<i class="fa-regular fa-check-circle rounded-full p-3 text-success dark:text-dark-success bg-success/10 dark:bg-dark-success-icon mr-4 text-xl leading-none"></i>
|
||||
<div>
|
||||
<p class="font-body text-body-l text-space-blue dark:text-white">
|
||||
$text.get("mauth_usernameless.banner.success")
|
||||
$text.get("mauth_usernameless.banner.success")
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="display: none"
|
||||
class="error flex rounded-xl bg-error-background dark:bg-dark-error-background items-center p-4 mb-4">
|
||||
<div class="hidden error flex rounded-xl bg-error-background dark:bg-dark-error-background items-center p-4 mb-4">
|
||||
<i class="fa-regular fa-exclamation-circle rounded-full p-3 text-error dark:text-dark-error bg-error/10 dark:bg-dark-error-icon mr-4 text-xl leading-none"></i>
|
||||
<p class="font-body text-body-l text-space-blue dark:text-white">
|
||||
$text.get("mauth_usernameless.banner.error")
|
||||
$text.get("mauth_usernameless.banner.error")
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="relative flex flex-col h-full">
|
||||
<div id="blurBackdrop" class="absolute backdrop-blur-sm top-0 bottom-0 -left-4 -right-4 z-10"
|
||||
style="display:none "></div>
|
||||
<div id="blurBackdrop" class="hidden absolute backdrop-blur-sm top-0 bottom-0 -left-4 -right-4 z-10"></div>
|
||||
<div class="mobileBanner relative z-20" aria-live="assertive">
|
||||
<div style="display: none"
|
||||
class="info flex rounded-xl bg-info-background dark:bg-dark-info-background items-center p-4 mb-4">
|
||||
<div class="hidden info flex rounded-xl bg-info-background dark:bg-dark-info-background items-center p-4 mb-4">
|
||||
<i class="fa-regular fa-info-circle rounded-full p-3 text-info dark:text-dark-info bg-info/10 dark:bg-dark-info-icon mr-4 text-xl leading-none"></i>
|
||||
<p class="font-body text-body-l text-space-blue dark:text-white">
|
||||
$text.get("mauth_usernameless.banner.info")
|
||||
$text.get("mauth_usernameless.banner.info")
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div style="display: none"
|
||||
class="success flex rounded-xl bg-success-background dark:bg-dark-success-background items-center p-4 mb-4">
|
||||
<div class="hidden success flex rounded-xl bg-success-background dark:bg-dark-success-background items-center p-4 mb-4">
|
||||
<i class="fa-regular fa-check-circle rounded-full p-3 text-success dark:text-dark-success bg-success/10 dark:bg-dark-success-icon mr-4 text-xl leading-none"></i>
|
||||
<div>
|
||||
<p class="font-body text-body-l text-space-blue dark:text-white">
|
||||
$text.get("mauth_usernameless.banner.success")
|
||||
$text.get("mauth_usernameless.banner.success")
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="display: none"
|
||||
class="error flex rounded-xl bg-error-background dark:bg-dark-error-background items-center p-4 mb-4">
|
||||
<div class="hidden error flex rounded-xl bg-error-background dark:bg-dark-error-background items-center p-4 mb-4">
|
||||
<i class="fa-regular fa-exclamation-circle rounded-full p-3 text-error dark:text-dark-error bg-error/10 dark:bg-dark-error-icon mr-4 text-xl leading-none"></i>
|
||||
<p class="font-body text-body-l text-space-blue dark:text-white">
|
||||
$text.get("mauth_usernameless.banner.error")
|
||||
$text.get("mauth_usernameless.banner.error")
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
<div id="agovLoginImageMobile" style="display: none"
|
||||
class="md:max-w-[520px] max-w-[350px] sm:max-w-[300px] w-full basis-1/2 mx-auto mb-4">
|
||||
<div id="agovLoginImageMobile"
|
||||
class="hidden md:max-w-[520px] max-w-[350px] sm:max-w-[300px] w-full basis-1/2 mx-auto mb-4">
|
||||
<img alt=""
|
||||
src="${login.appDataPath}/static/images/recovery.svg"
|
||||
class="block sm:hidden md:block dark:hidden w-full">
|
||||
|
@ -102,8 +96,7 @@
|
|||
<canvas role="img" aria-labelledby="labelQRCodeInstructions" id="mauth_qrcode"
|
||||
class="mb-4 mx-auto"></canvas>
|
||||
<div class="hidden" id="QRcodeHiddenLink"></div>
|
||||
<span id="spinner" class="absolute left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2 z-20"
|
||||
style="display: none">
|
||||
<span id="spinner" class="hidden absolute left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2 z-20">
|
||||
<img src="${login.appDataPath}/static/images/spinner.svg" class="animate-spin block dark:hidden">
|
||||
<img src="${login.appDataPath}/static/images/spinner-dark.svg"
|
||||
class="animate-spin hidden dark:block">
|
||||
|
@ -125,16 +118,16 @@
|
|||
<div class="accessAppInstructions flex bg-indigo-light rounded-xl p-4 mb-4 items-center dark:bg-purple-black">
|
||||
<img alt="" src="${login.appDataPath}/static/images/access-app.svg" class="h-12 mr-4">
|
||||
<p id="labelQRCodeInstructions" class="font-header text-h5 text-space-blue dark:text-white">
|
||||
$text.get("mauth_usernameless.instructions")
|
||||
$text.get("mauth_usernameless.instructions")
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
#set ($formTarget = $utils.escapeHtmlAttribute($gui.target.replaceAll('&?language=[^&]*','')))
|
||||
#set ($formTarget = $utils.escapeHtmlAttribute($gui.target.replaceAll('&?language=[^&]*','')))
|
||||
<form id="$gui.name" name="$gui.name" method="POST" target="_self" action="$formTarget" autocomplete="off"
|
||||
accept-charset="UTF-8" class="w-full bottom-8 sm:static mt-auto mb-6 sm:mb-0">
|
||||
|
||||
<div id="mobileButtons" style="display: none" class="w-full bottom-8 sm:static mt-auto mb-16 sm:mb-0">
|
||||
<div id="mobileButtons" class="hidden w-full bottom-8 sm:static mt-auto mb-16 sm:mb-0">
|
||||
<div class="flex flex-col">
|
||||
<a id="accessAppLink" href="">
|
||||
<agov-button
|
||||
|
@ -155,21 +148,20 @@
|
|||
data-value="EID"
|
||||
data-id="EID"
|
||||
data-label="<i class='fa-regular fa-eye align-middle text-xl text-indigo dark:text-lilac mr-2'></i>$text.get(
|
||||
"mauth_usernameless.showQR")"
|
||||
"mauth_usernameless.showQR")"
|
||||
data-type="button"
|
||||
data-fullwidth="true">
|
||||
</agov-button>
|
||||
|
||||
<agov-button
|
||||
style="display: none"
|
||||
id="hideQR"
|
||||
class="block basis-full"
|
||||
class="hidden basis-full"
|
||||
data-style="frameless"
|
||||
data-name="EID"
|
||||
data-value="EID"
|
||||
data-id="EID"
|
||||
data-label="<i class='fa-regular fa-eye-slash align-middle text-xl text-indigo dark:text-lilac mr-2'></i>$text.get(
|
||||
"mauth_usernameless.hideQR")"
|
||||
"mauth_usernameless.hideQR")"
|
||||
data-type="button"
|
||||
data-fullwidth="true">
|
||||
</agov-button>
|
||||
|
|
|
@ -13,12 +13,12 @@
|
|||
</div>
|
||||
|
||||
<h4 id="modalTitle" class="font-header text-h4 text-space-blue dark:text-white mb-8">
|
||||
$text.get("recovery_check_code.noCodeAccess")
|
||||
$text.get("recovery_check_code.noCodeAccess")
|
||||
</h4>
|
||||
|
||||
<div id="modalDescription" class="mb-20">
|
||||
<p class="font-body text-body-l text-space-blue dark:text-white">
|
||||
$text.get("recovery_check_code.noCodeAccessInstructions")
|
||||
$text.get("recovery_check_code.noCodeAccessInstructions")
|
||||
</p>
|
||||
</div>
|
||||
|
||||
|
@ -51,27 +51,31 @@
|
|||
<div class="flex flex-col-reverse sm:flex-row justify-evenly items-center gap-5 w-full">
|
||||
<div class="flex flex-col sm:bg-white sm:dark:bg-surface-black rounded-[20px] sm:px-10 sm:py-10 max-w-[550px] w-full
|
||||
basis-full md:basis-1/2">
|
||||
|
||||
<span id="spinner" class="hidden absolute left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2 z-30">
|
||||
<img src="${login.appDataPath}/static/images/spinner.svg" class="animate-spin block dark:hidden">
|
||||
<img src="${login.appDataPath}/static/images/spinner-dark.svg" class="animate-spin hidden dark:block">
|
||||
</span>
|
||||
<div id="blurBackdrop" class="hidden absolute backdrop-blur-sm -top-1 -bottom-96 -left-4 -right-4 z-20"></div>
|
||||
<div class="flex mb-6 items-baseline">
|
||||
<h3 class="font-header text-h3 text-space-blue dark:text-white mr-3">$text.get("general.recovery")</h3>
|
||||
<h4 class="font-header text-h4 text-disabled-grey dark:text-silver">$text.get("general.entryCode")</h4>
|
||||
</div>
|
||||
|
||||
#set($error = $gui.getGuiElem("lasterror"))
|
||||
#if (($error.value && $error.value != ""))
|
||||
#set($error = $gui.getGuiElem("lasterror"))
|
||||
#if (($error.value && $error.value != ""))
|
||||
<div class="error flex rounded-xl bg-error-background dark:bg-dark-error-background items-center p-4 mb-6">
|
||||
<i class="fa-regular fa-exclamation-circle rounded-full p-3 text-error dark:text-dark-error bg-error/10 dark:bg-dark-error-icon mr-4 text-xl leading-none"></i>
|
||||
<p class="font-body text-body-l text-space-blue dark:text-white">
|
||||
$text.get("recovery_check_code.codeIncorrect")
|
||||
$text.get("recovery_check_code.codeIncorrect")
|
||||
</p>
|
||||
</div>
|
||||
#end
|
||||
#end
|
||||
|
||||
<p class="font-body text-body-l text-space-blue dark:text-white mb-2">
|
||||
$text.get("recovery_check_code.instruction")
|
||||
$text.get("recovery_check_code.instruction")
|
||||
</p>
|
||||
|
||||
#set ($formTarget = $utils.escapeHtmlAttribute($gui.target.replaceAll('&?language=[^&]*','')))
|
||||
#set ($formTarget = $utils.escapeHtmlAttribute($gui.target.replaceAll('&?language=[^&]*','')))
|
||||
<form id="$gui.name" name="$gui.name" method="POST" target="_self" action="$formTarget" autocomplete="off"
|
||||
accept-charset="UTF-8"
|
||||
class="flex flex-col flex-auto block ">
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
#parse("${templatePath}/header.vm")
|
||||
|
||||
<agov-backdrop></agov-backdrop>
|
||||
<div id="fidoBackdrop" style="display: none">
|
||||
<div id="fidoBackdrop" class="hidden">
|
||||
<div class="fixed z-50 top-0 left-0 bottom-0 right-0 backdrop-blur-[10px]"></div>
|
||||
<div class="fixed z-50 top-0 left-0 bottom-0 right-0 bg-zinc-50 opacity-80"></div>
|
||||
</div>
|
||||
|
@ -16,24 +16,23 @@
|
|||
</div>
|
||||
|
||||
<h3 class="font-header text-h5 text-space-blue dark:text-white mb-4">$text.get(
|
||||
"recovery_fidokey_auth.keyRegistered")</h3>
|
||||
"recovery_fidokey_auth.keyRegistered")</h3>
|
||||
|
||||
<p class="font-body text-body-l text-space-blue dark:text-white mb-2">
|
||||
${text.get("recovery_fidokey_auth.instruction1").replaceAll(
|
||||
"!!!SECURITY_KEY_NAME!!!", "$utils.escapeHtmlAttribute($gui.getGuiElem('securityKey').value)")}
|
||||
${text.get("recovery_fidokey_auth.instruction1").replaceAll(
|
||||
"!!!SECURITY_KEY_NAME!!!", "$utils.escapeHtmlAttribute($gui.getGuiElem('securityKey').value)")}
|
||||
</p>
|
||||
|
||||
<p class="font-body text-body-l text-space-blue dark:text-white mb-8">
|
||||
${text.get("recovery_fidokey_auth.instruction2").replaceAll(
|
||||
"!!!SECURITY_KEY_NAME!!!", "$utils.escapeHtmlAttribute($gui.getGuiElem('securityKey').value)")}
|
||||
${text.get("recovery_fidokey_auth.instruction2").replaceAll(
|
||||
"!!!SECURITY_KEY_NAME!!!", "$utils.escapeHtmlAttribute($gui.getGuiElem('securityKey').value)")}
|
||||
</p>
|
||||
|
||||
#set ($formTarget = $utils.escapeHtmlAttribute($gui.target.replaceAll('&?language=[^&]*','')))
|
||||
<div style="display: none"
|
||||
class="error flex rounded-xl bg-error-background dark:bg-dark-error-background items-center p-4 mb-4">
|
||||
#set ($formTarget = $utils.escapeHtmlAttribute($gui.target.replaceAll('&?language=[^&]*','')))
|
||||
<div class="hidden error flex rounded-xl bg-error-background dark:bg-dark-error-background items-center p-4 mb-4">
|
||||
<i class="fa-regular fa-exclamation-circle rounded-full p-3 text-error dark:text-dark-error bg-error/10 dark:bg-dark-error-icon mr-4 text-xl leading-none"></i>
|
||||
<p class="font-body text-body-l text-space-blue dark:text-white">
|
||||
$text.get("fido2_auth.cancel.fido")
|
||||
$text.get("fido2_auth.cancel.fido")
|
||||
</p>
|
||||
</div>
|
||||
|
||||
|
@ -42,21 +41,21 @@
|
|||
<span class="font-header text-h6 bg-royal-light-blue dark:bg-blueish-black w-12 h-12 flex flex-none items-center justify-center rounded-full
|
||||
text-space-blue dark:text-white leading-none">1</span>
|
||||
<p class="font-body-semi text-body-l text-space-blue dark:text-white ml-4">$text.get(
|
||||
"recovery_fidokey_auth.fidoInstruction")</p>
|
||||
"recovery_fidokey_auth.fidoInstruction")</p>
|
||||
</div>
|
||||
|
||||
<div class="flex mb-2 items-center">
|
||||
<span class="font-header text-h6 bg-royal-light-blue dark:bg-blueish-black w-12 h-12 flex flex-none items-center justify-center rounded-full
|
||||
text-space-blue dark:text-white leading-none">2</span>
|
||||
<p class="font-body-semi text-body-l text-space-blue dark:text-white ml-4">$text.get(
|
||||
"fido2_auth.instruction2")</p>
|
||||
"fido2_auth.instruction2")</p>
|
||||
</div>
|
||||
|
||||
<div class="flex mb-2 items-center">
|
||||
<span class="font-header text-h6 bg-royal-light-blue dark:bg-blueish-black w-12 h-12 flex flex-none items-center justify-center rounded-full
|
||||
text-space-blue dark:text-white leading-none">3</span>
|
||||
<p class="font-body-semi text-body-l text-space-blue dark:text-white ml-4">$text.get(
|
||||
"fido2_auth.instruction3")</p>
|
||||
"fido2_auth.instruction3")</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
|
|
@ -2,6 +2,11 @@
|
|||
|
||||
<agov-backdrop></agov-backdrop>
|
||||
<div id="mainContent" class="container mx-auto sm:mt-32 sm:max-w-full flex flex-auto sm:block">
|
||||
<span id="spinner" class="hidden absolute left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2 z-30">
|
||||
<img src="${login.appDataPath}/static/images/spinner.svg" class="animate-spin block dark:hidden">
|
||||
<img src="${login.appDataPath}/static/images/spinner-dark.svg" class="animate-spin hidden dark:block">
|
||||
</span>
|
||||
<div id="blurBackdrop" class="hidden absolute backdrop-blur-sm -top-1 -bottom-96 -left-4 -right-4 z-20"></div>
|
||||
<div class="flex flex-col-reverse sm:flex-row justify-evenly items-center gap-5 w-full">
|
||||
<div class="flex flex-col sm:bg-white sm:dark:bg-surface-black rounded-[20px] sm:px-10 sm:py-10 max-w-[550px] w-full
|
||||
basis-full md:basis-1/2">
|
||||
|
@ -13,43 +18,43 @@
|
|||
<div class="info flex rounded-xl bg-info-background dark:bg-dark-info-background items-center p-4 mb-4">
|
||||
<i class="fa-regular fa-info-circle rounded-full p-3 text-info dark:text-dark-info bg-info/10 dark:bg-dark-info-icon mr-4 text-xl leading-none"></i>
|
||||
<p class="font-body text-body-l text-space-blue dark:text-white">
|
||||
$text.get("recovery_intro_email.banner.info")
|
||||
$text.get("recovery_intro_email.banner.info")
|
||||
</p>
|
||||
</div>
|
||||
|
||||
#set($error = $gui.getGuiElem("lasterror"))
|
||||
#if (($error.value && $error.value != ""))
|
||||
#set($error = $gui.getGuiElem("lasterror"))
|
||||
#if (($error.value && $error.value != ""))
|
||||
<div class="error flex rounded-xl bg-error-background dark:bg-dark-error-background items-center p-4 mb-4">
|
||||
<i class="fa-regular fa-exclamation-circle rounded-full p-3 text-error dark:text-dark-error bg-error/10 dark:bg-dark-error-icon mr-4 text-xl leading-none"></i>
|
||||
<p class="font-body text-body-l text-space-blue dark:text-white">
|
||||
$text.get("recovery_intro_email.banner.error")
|
||||
$text.get("recovery_intro_email.banner.error")
|
||||
</p>
|
||||
</div>
|
||||
#end
|
||||
#end
|
||||
|
||||
<div id="captchaNotFilled" style="display: none"
|
||||
class="error flex rounded-xl bg-error-background dark:bg-dark-error-background items-center p-4 mb-4">
|
||||
<div id="captchaNotFilled"
|
||||
class="hidden error flex rounded-xl bg-error-background dark:bg-dark-error-background items-center p-4 mb-4">
|
||||
<i class="fa-regular fa-exclamation-circle rounded-full p-3 text-error dark:text-dark-error bg-error/10 dark:bg-dark-error-icon mr-4 text-xl leading-none"></i>
|
||||
<p class="font-body text-body-l text-space-blue dark:text-white">
|
||||
$text.get("recovery_intro_email.captchaUnchecked")
|
||||
$text.get("recovery_intro_email.captchaUnchecked")
|
||||
</p>
|
||||
</div>
|
||||
|
||||
#set ($formTarget = $utils.escapeHtmlAttribute($gui.target.replaceAll('&?language=[^&]*','')))
|
||||
#set ($formTarget = $utils.escapeHtmlAttribute($gui.target.replaceAll('&?language=[^&]*','')))
|
||||
<form id="$gui.name" name="$gui.name" method="POST" target="_self" action="$formTarget" autocomplete="off"
|
||||
accept-charset="UTF-8"
|
||||
class="mt-4 flex flex-col flex-auto block ">
|
||||
#set ($emailInput = $gui.getGuiElem('email'))
|
||||
#set ($emailInput = $gui.getGuiElem('email'))
|
||||
<agov-input
|
||||
data-label="$text.get("general.email.address")"
|
||||
data-placeholder="$text.get("general.email")"
|
||||
data-id="email"
|
||||
data-name="email"
|
||||
#if ($emailInput && $emailInput.value && $emailInput.value.length() > 0)
|
||||
#if ($emailInput && $emailInput.value && $emailInput.value.length() > 0)
|
||||
data-value="$utils.escapeHtmlAttribute($emailInput.value)"
|
||||
#else
|
||||
#else
|
||||
data-value=""
|
||||
#end
|
||||
#end
|
||||
data-type="text"
|
||||
data-autofocus="true"
|
||||
data-left_icon="fa-envelope"
|
||||
|
@ -60,16 +65,16 @@
|
|||
|
||||
<p class="font-body text-body-l text-space-blue dark:text-white mb-2 sm:mb-8">
|
||||
<span class="font-body-semi">$text.get("recovery_intro_email.important")</span>
|
||||
$text.get("recovery_intro_email.process")
|
||||
$text.get("recovery_intro_email.process")
|
||||
</p>
|
||||
#if ($utils.escapeHtmlAttribute($gui.getGuiElem("X-ReCAPTCHA-Integration").value) == "INVISIBLE")
|
||||
#set ($isCaptchaVisible = true)
|
||||
#else
|
||||
#set ($isCaptchaVisible = false)
|
||||
#end
|
||||
#if ($utils.escapeHtmlAttribute($gui.getGuiElem("X-ReCAPTCHA-Integration").value) == "INVISIBLE")
|
||||
#set ($isCaptchaVisible = true)
|
||||
#else
|
||||
#set ($isCaptchaVisible = false)
|
||||
#end
|
||||
|
||||
#if ($isCaptchaVisible)
|
||||
#set ($captcha = $gui.getGuiElem("captchaSettings.reCaptchaInvisibleSiteKey"))
|
||||
#if ($isCaptchaVisible)
|
||||
#set ($captcha = $gui.getGuiElem("captchaSettings.reCaptchaInvisibleSiteKey"))
|
||||
<input type="hidden" name="recaptcha_sitekey" value="$captcha.value"/>
|
||||
<input type="hidden" name="recaptcha_response" value="captcha">
|
||||
<script src="https://www.google.com/recaptcha/enterprise.js?render=$captcha.value"></script>
|
||||
|
@ -99,8 +104,8 @@
|
|||
btn.click()
|
||||
}
|
||||
</script>
|
||||
#else
|
||||
#set ($captcha = $gui.getGuiElem("captchaSettings.reCaptchaVisibleSiteKey"))
|
||||
#else
|
||||
#set ($captcha = $gui.getGuiElem("captchaSettings.reCaptchaVisibleSiteKey"))
|
||||
<input type="hidden" name="recaptcha_sitekey" value="$captcha.value"/>
|
||||
<input type="hidden" name="recaptcha_response" value="captcha">
|
||||
<script src="https://www.google.com/recaptcha/enterprise.js?onload=onloadCallback&render=explicit" async
|
||||
|
@ -124,22 +129,22 @@
|
|||
});
|
||||
};
|
||||
</script>
|
||||
#end
|
||||
#end
|
||||
|
||||
<div class="font-body text-body-l mb-4">
|
||||
#if ($isCaptchaVisible)
|
||||
#if ($isCaptchaVisible)
|
||||
<div class="text-disabled-grey dark:text-silver">
|
||||
$text.get("recovery_intro_email.siteProtectedWithRecaptcha")
|
||||
$text.get("recovery_intro_email.siteProtectedWithRecaptcha")
|
||||
</div>
|
||||
#else
|
||||
#else
|
||||
<div class="flex mt-8" id="captchaRender"></div>
|
||||
#end
|
||||
#end
|
||||
|
||||
</div>
|
||||
|
||||
<div class="w-full sm:static mt-auto mb-6 sm:mb-0">
|
||||
<div class="flex flex-col sm:flex-row-reverse gap-4">
|
||||
#if ($isCaptchaVisible)
|
||||
#if ($isCaptchaVisible)
|
||||
<agov-button
|
||||
class="block basis-full"
|
||||
data-name="continue"
|
||||
|
@ -150,7 +155,7 @@
|
|||
data-fullwidth="true"
|
||||
onclick="return emailCaptcha(event)">
|
||||
</agov-button>
|
||||
#else
|
||||
#else
|
||||
<agov-button
|
||||
class="block basis-full"
|
||||
data-name="continue"
|
||||
|
@ -161,7 +166,7 @@
|
|||
data-fullwidth="true"
|
||||
onclick="validateEmail.validateForm(event, true)">
|
||||
</agov-button>
|
||||
#end
|
||||
#end
|
||||
<agov-button
|
||||
class="block basis-full"
|
||||
data-style="secondary"
|
||||
|
|
|
@ -2,6 +2,11 @@
|
|||
|
||||
<agov-backdrop></agov-backdrop>
|
||||
<div id="mainContent" class="container mx-auto sm:mt-32 sm:max-w-full flex flex-auto sm:block">
|
||||
<span id="spinner" class="hidden absolute left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2 z-30">
|
||||
<img src="${login.appDataPath}/static/images/spinner.svg" class="animate-spin block dark:hidden">
|
||||
<img src="${login.appDataPath}/static/images/spinner-dark.svg" class="animate-spin hidden dark:block">
|
||||
</span>
|
||||
<div id="blurBackdrop" class="hidden absolute backdrop-blur-sm -top-1 -bottom-96 -left-4 -right-4 z-20"></div>
|
||||
<div class="flex flex-col-reverse sm:flex-row justify-evenly items-center gap-5 w-full">
|
||||
<div class="flex flex-col sm:bg-white sm:dark:bg-surface-black rounded-[20px] sm:px-10 sm:py-10 max-w-[550px] w-full
|
||||
basis-full md:basis-1/2">
|
||||
|
@ -14,12 +19,12 @@
|
|||
<i class="fa-regular fa-check-circle rounded-full p-3 text-success dark:text-dark-success bg-success/10 dark:bg-dark-success-icon mr-4 text-xl leading-none"></i>
|
||||
<div>
|
||||
<p class="font-body text-body-l text-space-blue dark:text-white">
|
||||
$text.get("recovery_intro_email_sent.banner.success")
|
||||
$text.get("recovery_intro_email_sent.banner.success")
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
#set ($formTarget = $utils.escapeHtmlAttribute($gui.target.replaceAll('&?language=[^&]*','')))
|
||||
#set ($formTarget = $utils.escapeHtmlAttribute($gui.target.replaceAll('&?language=[^&]*','')))
|
||||
<form id="$gui.name" name="$gui.name" method="POST" target="_self" action="$formTarget" autocomplete="off"
|
||||
accept-charset="UTF-8"
|
||||
class="flex flex-col flex-auto block ">
|
||||
|
|
|
@ -2,31 +2,35 @@
|
|||
|
||||
<agov-backdrop></agov-backdrop>
|
||||
<div id="mainContent" class="container mx-auto sm:mt-32 sm:max-w-full flex flex-auto sm:block">
|
||||
<span id="spinner" class="hidden absolute left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2 z-30">
|
||||
<img src="${login.appDataPath}/static/images/spinner.svg" class="animate-spin block dark:hidden">
|
||||
<img src="${login.appDataPath}/static/images/spinner-dark.svg" class="animate-spin hidden dark:block">
|
||||
</span>
|
||||
<div id="blurBackdrop" class="hidden absolute backdrop-blur-sm -top-1 -bottom-96 -left-4 -right-4 z-20"></div>
|
||||
<div class="flex flex-col-reverse sm:flex-row justify-evenly items-center gap-5 w-full">
|
||||
<div class="flex flex-col sm:bg-white sm:dark:bg-surface-black rounded-[20px] sm:px-10 sm:py-10 max-w-[550px] w-full
|
||||
basis-full md:basis-1/2">
|
||||
|
||||
<div class="flex mb-6 items-baseline">
|
||||
<h3 class="font-header text-h3 text-space-blue dark:text-white mr-3">$text.get("general.login")</h3>
|
||||
<h4 class="font-header text-h4 text-disabled-grey dark:text-silver">$text.get("general.securityKey")</h4>
|
||||
</div>
|
||||
|
||||
#set ($formTarget = $utils.escapeHtmlAttribute($gui.target.replaceAll('&?language=[^&]*','')))
|
||||
#set ($formTarget = $utils.escapeHtmlAttribute($gui.target.replaceAll('&?language=[^&]*','')))
|
||||
<form id="$gui.name" name="$gui.name" method="POST" target="_self" action="$formTarget" autocomplete="off"
|
||||
accept-charset="UTF-8"
|
||||
class="flex flex-col flex-auto block ">
|
||||
#set ($emailInput = $gui.getGuiElem('email'))
|
||||
#set ($emailInput = $gui.getGuiElem('email'))
|
||||
<agov-input
|
||||
class="mb-4 sm:mb-40"
|
||||
data-label="$text.get("general.email.address")"
|
||||
data-placeholder="$text.get("general.email")"
|
||||
data-id="email"
|
||||
data-name="userInputValue_prompt.email"
|
||||
#if ($emailInput && $emailInput.value && $emailInput.value.length() > 0)
|
||||
#if ($emailInput && $emailInput.value && $emailInput.value.length() > 0)
|
||||
data-value="$utils.escapeHtmlAttribute($emailInput.value)"
|
||||
#else
|
||||
#else
|
||||
data-value=""
|
||||
#end
|
||||
#end
|
||||
data-type="text"
|
||||
data-autofocus="true"
|
||||
data-left_icon="fa-envelope"
|
||||
|
@ -35,14 +39,14 @@
|
|||
data-email_required="$text.get("user_input.invalid.email.required")">
|
||||
</agov-input>
|
||||
|
||||
#if ($gui.getGuiElem("X-ReCAPTCHA-Integration").value == "INVISIBLE")
|
||||
#set ($isCaptchaVisible = true)
|
||||
#else
|
||||
#set ($isCaptchaVisible = false)
|
||||
#end
|
||||
#if ($gui.getGuiElem("X-ReCAPTCHA-Integration").value == "INVISIBLE")
|
||||
#set ($isCaptchaVisible = true)
|
||||
#else
|
||||
#set ($isCaptchaVisible = false)
|
||||
#end
|
||||
|
||||
#if ($isCaptchaVisible)
|
||||
#set ($captcha = $gui.getGuiElem("captchaSettings.reCaptchaInvisibleSiteKey"))
|
||||
#if ($isCaptchaVisible)
|
||||
#set ($captcha = $gui.getGuiElem("captchaSettings.reCaptchaInvisibleSiteKey"))
|
||||
<input type="hidden" name="recaptcha_sitekey" value="$captcha.value"/>
|
||||
<input type="hidden" name="recaptcha_response" value="captcha">
|
||||
<script src="https://www.google.com/recaptcha/enterprise.js?render=$captcha.value"></script>
|
||||
|
@ -72,8 +76,8 @@
|
|||
btn.click()
|
||||
}
|
||||
</script>
|
||||
#else
|
||||
#set ($captcha = $gui.getGuiElem("captchaSettings.reCaptchaVisibleSiteKey"))
|
||||
#else
|
||||
#set ($captcha = $gui.getGuiElem("captchaSettings.reCaptchaVisibleSiteKey"))
|
||||
<input type="hidden" name="recaptcha_sitekey" value="$captcha.value"/>
|
||||
<input type="hidden" name="recaptcha_response" value="captcha">
|
||||
<script src="https://www.google.com/recaptcha/enterprise.js?onload=onloadCallback&render=explicit" async
|
||||
|
@ -97,22 +101,22 @@
|
|||
});
|
||||
};
|
||||
</script>
|
||||
#end
|
||||
#end
|
||||
|
||||
<div class="font-body text-body-l mb-4">
|
||||
#if ($isCaptchaVisible)
|
||||
#if ($isCaptchaVisible)
|
||||
<div class="text-disabled-grey dark:text-silver">
|
||||
$text.get("recovery_intro_email.siteProtectedWithRecaptcha")
|
||||
$text.get("recovery_intro_email.siteProtectedWithRecaptcha")
|
||||
</div>
|
||||
#else
|
||||
#else
|
||||
<div class="flex mt-8" id="captchaRender"></div>
|
||||
#end
|
||||
#end
|
||||
|
||||
</div>
|
||||
|
||||
<div class="w-full sm:static mt-auto mb-6 sm:mb-0">
|
||||
<div class="flex flex-col sm:flex-row-reverse gap-4">
|
||||
#if ($isCaptchaVisible)
|
||||
#if ($isCaptchaVisible)
|
||||
<agov-button
|
||||
class="block basis-full"
|
||||
data-name="submit"
|
||||
|
@ -123,7 +127,7 @@
|
|||
data-fullwidth="true"
|
||||
onclick="return emailCaptcha(event)">
|
||||
</agov-button>
|
||||
#else
|
||||
#else
|
||||
<agov-button
|
||||
class="block basis-full"
|
||||
data-name="submit"
|
||||
|
@ -134,7 +138,7 @@
|
|||
data-fullwidth="true"
|
||||
onclick="validateEmail.validateForm(event)">
|
||||
</agov-button>
|
||||
#end
|
||||
#end
|
||||
<agov-button
|
||||
class="block basis-full"
|
||||
data-style="secondary"
|
||||
|
|
|
@ -135,10 +135,10 @@ prompt.newpassword=Nuova Password
|
|||
prompt.newpassword.confirm=Conferma password
|
||||
prompt.password=Password
|
||||
prompt.userid=Nome utente
|
||||
pwreset.done.info=La password è stata modificata con successo. Fare clic su continua per accedere.
|
||||
pwreset.done.info=Your password was successfully changed. Please click on continue to log in.
|
||||
pwreset.email.sent=Se il vostro ID utente esiste, vi è stata inviata un'e-mail per reimpostare la password.
|
||||
pwreset.info.linktext=Password dimenticata
|
||||
pwreset.noticket=Il biglietto per la reimpostazione della password non è più valido. Si prega di generarne uno nuovo.
|
||||
pwreset.info.linktext=Password forgotten
|
||||
pwreset.noticket=Your password reset ticket is no longer valid. Please generate a new one.
|
||||
recovery_accessapp_auth.accessAppRegistered=App di accesso AGOV già registrata
|
||||
recovery_accessapp_auth.instruction1=Ha già registrato una nuova app di accesso AGOV !!!SECURITY_KEY_NAME!!! come parte del processo di recupero.
|
||||
recovery_accessapp_auth.instruction2=Si prega di usare !!!ACCESS_APP_NAME!!! per l'identificazione.
|
||||
|
@ -204,7 +204,7 @@ recovery_start_info.title=Il processo di ripristino sta per iniziare.
|
|||
title=NEVIS SSO Portal
|
||||
title.login=Login
|
||||
title.pwchange.label=Cambiare Password
|
||||
title.pwreset=Password Dimenticata
|
||||
title.pwreset=Password Forgotten
|
||||
user_input.invalid.email=Inserire un'e-mail valida.
|
||||
user_input.invalid.email.required=Campo obbligatorio
|
||||
user_input.invalid.email.tooLong=Il testo inserito è troppo lungo.
|
||||
|
|
|
@ -135,10 +135,10 @@ prompt.newpassword=Nuova Password
|
|||
prompt.newpassword.confirm=Conferma password
|
||||
prompt.password=Password
|
||||
prompt.userid=Nome utente
|
||||
pwreset.done.info=La password è stata modificata con successo. Fare clic su continua per accedere.
|
||||
pwreset.done.info=Your password was successfully changed. Please click on continue to log in.
|
||||
pwreset.email.sent=Se il vostro ID utente esiste, vi è stata inviata un'e-mail per reimpostare la password.
|
||||
pwreset.info.linktext=Password dimenticata
|
||||
pwreset.noticket=Il biglietto per la reimpostazione della password non è più valido. Si prega di generarne uno nuovo.
|
||||
pwreset.info.linktext=Password forgotten
|
||||
pwreset.noticket=Your password reset ticket is no longer valid. Please generate a new one.
|
||||
recovery_accessapp_auth.accessAppRegistered=App di accesso AGOV già registrata
|
||||
recovery_accessapp_auth.instruction1=Ha già registrato una nuova app di accesso AGOV !!!SECURITY_KEY_NAME!!! come parte del processo di recupero.
|
||||
recovery_accessapp_auth.instruction2=Si prega di usare !!!ACCESS_APP_NAME!!! per l'identificazione.
|
||||
|
@ -204,7 +204,7 @@ recovery_start_info.title=Il processo di ripristino sta per iniziare.
|
|||
title=NEVIS SSO Portal
|
||||
title.login=Login
|
||||
title.pwchange.label=Cambiare Password
|
||||
title.pwreset=Password Dimenticata
|
||||
title.pwreset=Password Forgotten
|
||||
user_input.invalid.email=Inserire un'e-mail valida.
|
||||
user_input.invalid.email.required=Campo obbligatorio
|
||||
user_input.invalid.email.tooLong=Il testo inserito è troppo lungo.
|
||||
|
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
@ -1,7 +1,7 @@
|
|||
#parse("${templatePath}/header.vm")
|
||||
|
||||
<agov-backdrop></agov-backdrop>
|
||||
<div id="fidoBackdrop" style="display: none">
|
||||
<div id="fidoBackdrop" class="hidden">
|
||||
<div class="fixed z-50 top-0 left-0 bottom-0 right-0 backdrop-blur-[10px]"></div>
|
||||
<div class="fixed z-50 top-0 left-0 bottom-0 right-0 bg-zinc-50 opacity-80"></div>
|
||||
</div>
|
||||
|
@ -15,16 +15,16 @@
|
|||
<h4 class="font-header text-h4 text-disabled-grey dark:text-silver">$text.get("general.securityKey")</h4>
|
||||
</div>
|
||||
|
||||
#set ($formTarget = $utils.escapeHtmlAttribute($gui.target.replaceAll('&?language=[^&]*','')))
|
||||
#set ($formTarget = $utils.escapeHtmlAttribute($gui.target.replaceAll('&?language=[^&]*','')))
|
||||
<form id="$gui.name" name="$gui.name" method="POST" target="_self" action="$formTarget" autocomplete="off"
|
||||
accept-charset="UTF-8">
|
||||
<div class="flex flex-row items-center justify-between">
|
||||
#set ($emailInput = $gui.getGuiElem('email'))
|
||||
#if ($emailInput && $emailInput.value && $emailInput.value.length() > 0)
|
||||
#set ($emailInput = $gui.getGuiElem('email'))
|
||||
#if ($emailInput && $emailInput.value && $emailInput.value.length() > 0)
|
||||
<p class="text-space-blue dark:text-white font-body-semi text-body-l truncate">$utils.escapeHtmlAttribute($emailInput.value)</p>
|
||||
#else
|
||||
#else
|
||||
<p class="text-space-blue dark:text-white font-body-semi text-body-l truncate"></p>
|
||||
#end
|
||||
#end
|
||||
<agov-button
|
||||
class="shrink-0"
|
||||
data-style="frameless"
|
||||
|
@ -40,11 +40,10 @@
|
|||
</form>
|
||||
<div class="mt-3 mb-6 w-full h-px bg-platinum rounded-full"></div>
|
||||
|
||||
<div style="display: none"
|
||||
class="error flex rounded-xl bg-error-background dark:bg-dark-error-background items-center p-4 mb-4">
|
||||
<div class="error flex rounded-xl bg-error-background dark:bg-dark-error-background items-center p-4 mb-4 hidden">
|
||||
<i class="fa-regular fa-exclamation-circle rounded-full p-3 text-error dark:text-dark-error bg-error/10 dark:bg-dark-error-icon mr-4 text-xl leading-none"></i>
|
||||
<p class="font-body text-body-l text-space-blue dark:text-white">
|
||||
$text.get("fido2_auth.cancel.fido")
|
||||
$text.get("fido2_auth.cancel.fido")
|
||||
</p>
|
||||
</div>
|
||||
|
||||
|
@ -53,21 +52,21 @@
|
|||
<span class="font-header text-h6 bg-royal-light-blue dark:bg-blueish-black w-12 h-12 flex flex-none items-center justify-center rounded-full
|
||||
text-space-blue dark:text-white leading-none">1</span>
|
||||
<p class="font-body-semi text-body-l text-space-blue dark:text-white ml-4">$text.get(
|
||||
"fido2_auth.instruction1")</p>
|
||||
"fido2_auth.instruction1")</p>
|
||||
</div>
|
||||
|
||||
<div class="flex mb-2 items-center">
|
||||
<span class="font-header text-h6 bg-royal-light-blue dark:bg-blueish-black w-12 h-12 flex flex-none items-center justify-center rounded-full
|
||||
text-space-blue dark:text-white leading-none">2</span>
|
||||
<p class="font-body-semi text-body-l text-space-blue dark:text-white ml-4">$text.get(
|
||||
"fido2_auth.instruction2")</p>
|
||||
"fido2_auth.instruction2")</p>
|
||||
</div>
|
||||
|
||||
<div class="flex mb-2 items-center">
|
||||
<span class="font-header text-h6 bg-royal-light-blue dark:bg-blueish-black w-12 h-12 flex flex-none items-center justify-center rounded-full
|
||||
text-space-blue dark:text-white leading-none">3</span>
|
||||
<p class="font-body-semi text-body-l text-space-blue dark:text-white ml-4">$text.get(
|
||||
"fido2_auth.instruction3")</p>
|
||||
"fido2_auth.instruction3")</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
@ -79,7 +78,7 @@
|
|||
</agov-checkbox>
|
||||
|
||||
<label for="skip" class="font-body text-body-l text-space-blue dark:text-white cursor-pointer">
|
||||
$text.get("fido2_auth.skipInstructions")
|
||||
$text.get("fido2_auth.skipInstructions")
|
||||
</label>
|
||||
</div>
|
||||
<div class="mt-auto mb-6 sm:mb-0">
|
||||
|
@ -94,7 +93,7 @@
|
|||
<div class="flex items-center mt-6 mb-4">
|
||||
<span class="h-px w-full bg-silver"></span>
|
||||
<span class="px-2 text-disabled-grey font-body-semi text-body-l whitespace-nowrap">
|
||||
$text.get("fido2_auth.switchLogin")
|
||||
$text.get("fido2_auth.switchLogin")
|
||||
</span>
|
||||
<span class="h-px w-full bg-silver"></span>
|
||||
</div>
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
$text.get("footer.text")
|
||||
<a target="_blank" class='text-hyperlink dark:text-dark-hyperlink underline' href='$text.get("footer.link")'>$text.get("footer.link.label")</a>
|
||||
</div>
|
||||
<p>1.5.3.51-20240709T140654Z</p>
|
||||
<p>1.6.0.2137-20240812T051256Z</p>
|
||||
</footer>
|
||||
<script src="${login.appDataPath}/static/bundle.js"></script>
|
||||
</body>
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
<!DOCTYPE html>
|
||||
## svh -> Small View Height. It's not taking the height of the search bar on mobile into account
|
||||
<html lang="$login.language" class="relative min-h-screen h-full mx-4 flex sm:block" style="min-height: 100svh">
|
||||
<html lang="$login.language" class="relative min-h-100 h-full mx-4 flex sm:block">
|
||||
<head>
|
||||
<title>AGOV</title>
|
||||
<meta charset="UTF-8">
|
||||
|
|
|
@ -10,15 +10,15 @@
|
|||
class="flex items-center rounded-xl gap-5 p-2 sm:p-0 sm:w-auto w-full hidden bg-pale-blue dark:bg-purple-black sm:bg-transparent">
|
||||
<div class="flex items-center p-2 bg-white rounded sm:rounded-xl w-16 h-16" id="logo"></div>
|
||||
<h1 class="font-header text-h6 sm:text-h4 text-space-blue dark:text-white">
|
||||
#if ($login.language =="en")
|
||||
#if ($login.language =="en")
|
||||
$utils.escapeHtmlAttribute($gui.getGuiElem('agov.appDisplayNameEN').value)
|
||||
#elseif ($login.language =="de")
|
||||
$utils.escapeHtmlAttribute($gui.getGuiElem('agov.appDisplayNameDE').value)
|
||||
#elseif ($login.language =="fr")
|
||||
$utils.escapeHtmlAttribute($gui.getGuiElem('agov.appDisplayNameFR').value)
|
||||
#else
|
||||
$utils.escapeHtmlAttribute($gui.getGuiElem('agov.appDisplayNameIT').value)
|
||||
#end
|
||||
$utils.escapeHtmlAttribute($gui.getGuiElem('agov.appDisplayNameDE').value)
|
||||
#elseif ($login.language =="fr")
|
||||
$utils.escapeHtmlAttribute($gui.getGuiElem('agov.appDisplayNameFR').value)
|
||||
#else
|
||||
$utils.escapeHtmlAttribute($gui.getGuiElem('agov.appDisplayNameIT').value)
|
||||
#end
|
||||
</h1>
|
||||
</div>
|
||||
|
||||
|
@ -28,7 +28,7 @@
|
|||
<h1 class="font-header text-h4 text-space-blue dark:text-white mb-8">$text.get("general.registration")</h1>
|
||||
|
||||
<h2 class="font-header text-h5 text-space-blue dark:text-white text-center mb-4">
|
||||
$text.get("mauth_usernameless.noAccount")
|
||||
$text.get("mauth_usernameless.noAccount")
|
||||
</h2>
|
||||
|
||||
<form id="$gui.name" name="$gui.name" method="POST" target="_self" action="$formTarget" autocomplete="off"
|
||||
|
@ -69,15 +69,15 @@
|
|||
<div class="flex items-center p-2 bg-white dark:bg-black rounded sm:rounded-xl w-16 h-16"
|
||||
id="logoMobile"></div>
|
||||
<h1 class="font-header text-h6 sm:text-h4 text-space-blue dark:text-white">
|
||||
#if ($login.language =="en")
|
||||
#if ($login.language =="en")
|
||||
$utils.escapeHtmlAttribute($gui.getGuiElem('agov.appDisplayNameEN').value)
|
||||
#elseif ($login.language =="de")
|
||||
$utils.escapeHtmlAttribute($gui.getGuiElem('agov.appDisplayNameDE').value)
|
||||
#elseif ($login.language =="fr")
|
||||
$utils.escapeHtmlAttribute($gui.getGuiElem('agov.appDisplayNameFR').value)
|
||||
#else
|
||||
$utils.escapeHtmlAttribute($gui.getGuiElem('agov.appDisplayNameIT').value)
|
||||
#end
|
||||
$utils.escapeHtmlAttribute($gui.getGuiElem('agov.appDisplayNameDE').value)
|
||||
#elseif ($login.language =="fr")
|
||||
$utils.escapeHtmlAttribute($gui.getGuiElem('agov.appDisplayNameFR').value)
|
||||
#else
|
||||
$utils.escapeHtmlAttribute($gui.getGuiElem('agov.appDisplayNameIT').value)
|
||||
#end
|
||||
</h1>
|
||||
</div>
|
||||
|
||||
|
@ -93,65 +93,65 @@
|
|||
<div id="accessAppModal" class="h-full">
|
||||
|
||||
<div class="desktopBanner" aria-live="assertive">
|
||||
<div style="display: none"
|
||||
class="info flex rounded-xl bg-info-background dark:bg-dark-info-background items-center p-4 mb-4">
|
||||
<div class="hidden info flex rounded-xl bg-info-background dark:bg-dark-info-background items-center p-4
|
||||
mb-4">
|
||||
<i class="fa-regular fa-info-circle rounded-full p-3 text-info dark:text-dark-info bg-info/10 dark:bg-dark-info-icon mr-4 text-xl leading-none"></i>
|
||||
<p class="font-body text-body-l text-space-blue dark:text-white">
|
||||
$text.get("mauth_usernameless.banner.info")
|
||||
$text.get("mauth_usernameless.banner.info")
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div style="display: none"
|
||||
class="success flex rounded-xl bg-success-background dark:bg-dark-success-background items-center p-4 mb-4">
|
||||
<div class="hidden success flex rounded-xl bg-success-background dark:bg-dark-success-background
|
||||
items-center p-4 mb-4">
|
||||
<i class="fa-regular fa-check-circle rounded-full p-3 text-success dark:text-dark-success bg-success/10 dark:bg-dark-success-icon mr-4 text-xl leading-none"></i>
|
||||
<div>
|
||||
<p class="font-body text-body-l text-space-blue dark:text-white">
|
||||
$text.get("mauth_usernameless.banner.success")
|
||||
$text.get("mauth_usernameless.banner.success")
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="display: none"
|
||||
class="error flex rounded-xl bg-error-background dark:bg-dark-error-background items-center p-4 mb-4">
|
||||
<div class="hidden error flex rounded-xl bg-error-background dark:bg-dark-error-background items-center
|
||||
p-4 mb-4">
|
||||
<i class="fa-regular fa-exclamation-circle rounded-full p-3 text-error dark:text-dark-error bg-error/10 dark:bg-dark-error-icon mr-4 text-xl leading-none"></i>
|
||||
<p class="font-body text-body-l text-space-blue dark:text-white">
|
||||
$text.get("mauth_usernameless.banner.error")
|
||||
$text.get("mauth_usernameless.banner.error")
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="relative flex flex-col h-full">
|
||||
<div id="blurBackdrop" class="absolute backdrop-blur-sm -top-1 -bottom-8 -left-4 -right-4 z-10"
|
||||
style="display:none "></div>
|
||||
<div id="blurBackdrop" class="hidden absolute backdrop-blur-sm -top-1 -bottom-8 -left-4 -right-4
|
||||
z-10"></div>
|
||||
<div class="mobileBanner relative z-20" aria-live="assertive">
|
||||
<div style="display: none"
|
||||
class="info flex rounded-xl bg-info-background dark:bg-dark-info-background items-center p-4 mb-4">
|
||||
<div class="hidden info flex rounded-xl bg-info-background dark:bg-dark-info-background items-center
|
||||
p-4 mb-4">
|
||||
<i class="fa-regular fa-info-circle rounded-full p-3 text-info dark:text-dark-info bg-info/10 dark:bg-dark-info-icon mr-4 text-xl leading-none"></i>
|
||||
<p class="font-body text-body-l text-space-blue dark:text-white">
|
||||
$text.get("mauth_usernameless.banner.info")
|
||||
$text.get("mauth_usernameless.banner.info")
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div style="display: none"
|
||||
class="success flex rounded-xl bg-success-background dark:bg-dark-success-background items-center p-4 mb-4">
|
||||
<div class="hidden success flex rounded-xl bg-success-background dark:bg-dark-success-background
|
||||
items-center p-4 mb-4">
|
||||
<i class="fa-regular fa-check-circle rounded-full p-3 text-success dark:text-dark-success bg-success/10 dark:bg-dark-success-icon mr-4 text-xl leading-none"></i>
|
||||
<div>
|
||||
<p class="font-body text-body-l text-space-blue dark:text-white">
|
||||
$text.get("mauth_usernameless.banner.success")
|
||||
$text.get("mauth_usernameless.banner.success")
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="display: none"
|
||||
class="error flex rounded-xl bg-error-background dark:bg-dark-error-background items-center p-4 mb-4">
|
||||
<div class="hidden error flex rounded-xl bg-error-background dark:bg-dark-error-background
|
||||
items-center p-4 mb-4">
|
||||
<i class="fa-regular fa-exclamation-circle rounded-full p-3 text-error dark:text-dark-error bg-error/10 dark:bg-dark-error-icon mr-4 text-xl leading-none"></i>
|
||||
<p class="font-body text-body-l text-space-blue dark:text-white">
|
||||
$text.get("mauth_usernameless.banner.error")
|
||||
$text.get("mauth_usernameless.banner.error")
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
<div id="agovLoginImageMobile" style="display: none"
|
||||
class="md:max-w-[520px] max-w-[350px] sm:max-w-[300px] w-full mx-auto mb-6">
|
||||
<div id="agovLoginImageMobile" class="hidden md:max-w-[520px] max-w-[350px] sm:max-w-[300px] w-full
|
||||
mx-auto mb-6">
|
||||
<img alt=""
|
||||
src="${login.appDataPath}/static/images/login.svg"
|
||||
class="block sm:hidden md:block dark:hidden w-full">
|
||||
|
@ -165,12 +165,12 @@
|
|||
<canvas role="img" aria-labelledby="labelQRCodeInstructions" id="mauth_qrcode"
|
||||
class="mb-6 mx-auto"></canvas>
|
||||
<div class="hidden" id="QRcodeHiddenLink"></div>
|
||||
<span id="spinner" class="absolute left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2 z-20"
|
||||
style="display: none">
|
||||
<span id="spinner" class="hidden absolute left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2
|
||||
z-20">
|
||||
<img src="${login.appDataPath}/static/images/spinner.svg" class="animate-spin block dark:hidden">
|
||||
<img src="${login.appDataPath}/static/images/spinner-dark.svg"
|
||||
class="animate-spin hidden dark:block">
|
||||
</span>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
<a id="accessAppLinkIpad" href="" class="hidden">
|
||||
|
@ -189,7 +189,7 @@
|
|||
dark:bg-purple-black">
|
||||
<img alt="" src="${login.appDataPath}/static/images/access-app.svg" class="h-12 mr-4">
|
||||
<p id="labelQRCodeInstructions" class="font-header text-h5 text-space-blue dark:text-white">
|
||||
$text.get("mauth_usernameless.instructions")
|
||||
$text.get("mauth_usernameless.instructions")
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -197,7 +197,7 @@
|
|||
<form id="$gui.name" name="$gui.name" method="POST" target="_self" action="$formTarget" autocomplete="off"
|
||||
accept-charset="UTF-8" class="w-full sm:static mt-auto mb-20 sm:mb-0">
|
||||
|
||||
<div id="mobileButtons" style="display: none" class="w-full">
|
||||
<div id="mobileButtons" class="hidden w-full">
|
||||
<div class="flex flex-col">
|
||||
<a id="accessAppLink" href="">
|
||||
<agov-button
|
||||
|
@ -218,21 +218,20 @@
|
|||
data-value="EID"
|
||||
data-id="EID"
|
||||
data-label="<i class='fa-regular fa-eye align-middle text-xl text-indigo dark:text-lilac mr-2'></i>$text.get(
|
||||
"mauth_usernameless.showQR")"
|
||||
"mauth_usernameless.showQR")"
|
||||
data-type="button"
|
||||
data-fullwidth="true">
|
||||
</agov-button>
|
||||
|
||||
<agov-button
|
||||
style="display: none"
|
||||
id="hideQR"
|
||||
class="block basis-full"
|
||||
class="hidden basis-full"
|
||||
data-style="frameless"
|
||||
data-name="EID"
|
||||
data-value="EID"
|
||||
data-id="EID"
|
||||
data-label="<i class='fa-regular fa-eye-slash align-middle text-xl text-indigo dark:text-lilac mr-2'></i>$text.get(
|
||||
"mauth_usernameless.hideQR")"
|
||||
"mauth_usernameless.hideQR")"
|
||||
data-type="button"
|
||||
data-fullwidth="true">
|
||||
</agov-button>
|
||||
|
@ -246,11 +245,11 @@
|
|||
<div id="securityKeyModal" class="hidden mt-16">
|
||||
|
||||
<h2 class="font-header text-h5 text-space-blue dark:text-white mt-4 text-center">
|
||||
$text.get("mauth_usernameless.useSecurityKey")
|
||||
$text.get("mauth_usernameless.useSecurityKey")
|
||||
</h2>
|
||||
|
||||
<p class="font-body text-body-l text-space-blue dark:text-white text-center my-6">
|
||||
$text.get("mauth_usernameless.useSecurityKeyInfo")
|
||||
$text.get("mauth_usernameless.useSecurityKeyInfo")
|
||||
</p>
|
||||
|
||||
<form id="$gui.name" name="$gui.name" method="POST" target="_self" action="$formTarget" autocomplete="off"
|
||||
|
@ -280,14 +279,14 @@
|
|||
<button class="hidden" id="onReload" name="onReload"></button>
|
||||
|
||||
<h2 class="font-header text-h5 text-space-blue dark:text-white mt-7 mb-4 text-center">
|
||||
$text.get("mauth_usernameless.cannotLogin")
|
||||
$text.get("mauth_usernameless.cannotLogin")
|
||||
</h2>
|
||||
<agov-button
|
||||
data-style="secondary"
|
||||
data-name="fallback"
|
||||
data-value="recovery"
|
||||
data-label="<i class='fa-regular fa-suitcase-medical text-indigo dark:text-lilac mr-2'></i>$text.get(
|
||||
"mauth_usernameless.startRecovery")"
|
||||
"mauth_usernameless.startRecovery")"
|
||||
data-type="submit"
|
||||
data-fullwidth="true"
|
||||
class="block">
|
||||
|
@ -300,7 +299,7 @@
|
|||
</div>
|
||||
</div>
|
||||
<form id="$gui.name" name="$gui.name" method="POST" target="_self" action="$formTarget" autocomplete="off"
|
||||
accept-charset="UTF-8" style="display: none" class="sm:hidden formDrawer">
|
||||
accept-charset="UTF-8" class="hidden sm:hidden formDrawer">
|
||||
<div class="w-full z-30 fixed left-0 pointer-events-none" id="drawerContainer">
|
||||
<div class="w-full bg-white dark:bg-surface-black px-4 pb-[130px] rounded-t-2xl pointer-events-auto" id="drawer">
|
||||
<div class="pt-2 pb-4 cursor-pointer">
|
||||
|
@ -309,12 +308,12 @@
|
|||
|
||||
<div class="flex items-center justify-center mb-6">
|
||||
<span class="px-2 text-disabled-grey dark:text-white font-body-semi text-body-l whitespace-nowrap">
|
||||
$text.get("general.otherOptions")
|
||||
$text.get("general.otherOptions")
|
||||
</span>
|
||||
</div>
|
||||
|
||||
<p class="font-body-semi text-body-l text-space-blue dark:text-white text-center mb-2">
|
||||
$text.get("mauth_usernameless.noAccount")
|
||||
$text.get("mauth_usernameless.noAccount")
|
||||
</p>
|
||||
|
||||
<agov-button
|
||||
|
@ -330,14 +329,14 @@
|
|||
<div class="flex items-center mt-6 mb-6">
|
||||
<span class="h-px w-full bg-silver"></span>
|
||||
<span class="px-2 text-disabled-grey dark:text-white font-body-semi text-body-l whitespace-nowrap">
|
||||
$text.get("general.or")</span>
|
||||
$text.get("general.or")</span>
|
||||
<span class="h-px w-full bg-silver"></span>
|
||||
</div>
|
||||
|
||||
<div class="flex flex-col flex-wrap justify-center items-center mb-6 gap-1">
|
||||
|
||||
<p class="font-body-semi text-body-l text-space-blue dark:text-white">
|
||||
$text.get("mauth_usernameless.cannotLogin")
|
||||
$text.get("mauth_usernameless.cannotLogin")
|
||||
</p>
|
||||
<agov-button
|
||||
data-style="frameless"
|
||||
|
@ -353,9 +352,9 @@
|
|||
|
||||
|
||||
<div class="font-body text-body-s text-disabled-grey dark:text-silver text-center">
|
||||
$text.get("footer.text")
|
||||
$text.get("footer.text")
|
||||
<a target="_blank" class='text-hyperlink dark:text-info underline' href='$text.get("footer.link")'>$text.get(
|
||||
"footer.link.label")</a>
|
||||
"footer.link.label")</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
<!DOCTYPE html>
|
||||
## svh -> Small View Height. It's not taking the height of the search bar on mobile into account
|
||||
<html lang="$login.language" class="relative min-h-screen h-full mx-4 flex sm:block" style="min-height: 100svh">
|
||||
## svh -> Small View Height. It's not taking the height of the search bar on mobile into account
|
||||
<html lang="$login.language" class="relative min-h-100 h-full mx-4 flex sm:block">
|
||||
<head>
|
||||
<title>AGOV Operations</title>
|
||||
<meta charset="UTF-8">
|
||||
|
@ -20,51 +20,53 @@
|
|||
<img alt="agov Logo" src="${login.appDataPath}/static/images/agov-logo.svg" class="h-5 sm:h-8 sm:mr-6 dark:hidden">
|
||||
<img alt="agov Logo" src="${login.appDataPath}/static/images/agov-logo-dark.svg" class="h-5 sm:h-8 sm:mr-6 hidden dark:block">
|
||||
<div class="flex items-center flex-1 sm:flex-initial justify-end">
|
||||
#set ($langMenu = '')
|
||||
#foreach ($locale in $login.locales)
|
||||
## find translated label of current locale
|
||||
#if ($text.contains("language.$locale"))
|
||||
#set ($langLabel = $text.get("language.$locale"))
|
||||
#elseif ($locale.length() > 2)
|
||||
#set ($langLabel = $text.get("language.${locale.substring(0,2).toLowerCase()}"))
|
||||
#else
|
||||
#set ($langLabel = $locale)
|
||||
#end
|
||||
## emit link or text for each language
|
||||
#set ($langTarget = $utils.escapeHtmlAttribute($gui.target('language', $locale)))
|
||||
#set ($langMenu = '')
|
||||
#foreach ($locale in $login.locales)
|
||||
## find translated label of current locale
|
||||
#if ($text.contains("language.$locale"))
|
||||
#set ($langLabel = $text.get("language.$locale"))
|
||||
#elseif ($locale.length() > 2)
|
||||
#set ($langLabel = $text.get("language.${locale.substring(0,2).toLowerCase()}"))
|
||||
#else
|
||||
#set ($langLabel = $locale)
|
||||
#end
|
||||
## emit link or text for each language
|
||||
#set ($langTarget = $utils.escapeHtmlAttribute($gui.target('language', $locale)))
|
||||
|
||||
#if ($login.localeCode != $locale && $login.language != $locale)
|
||||
#set ($langMenu = $langMenu + '<li><a
|
||||
#if ($login.localeCode != $locale && $login.language != $locale)
|
||||
#set ($langMenu = $langMenu + '<li><a
|
||||
class="block px-8 sm:px-4 py-3 hover:bg-lavender-blush dark:hover:bg-purple-black"
|
||||
aria-current="false"
|
||||
href="'+$langTarget+'">'+$langLabel+' - '+$locale.toUpperCase()
|
||||
+'</a></li>')
|
||||
#else
|
||||
#set ($langMenu = $langMenu + '<li><a
|
||||
+'</a></li>')
|
||||
#else
|
||||
#set ($langMenu = $langMenu + '<li><a
|
||||
class="flex items-center px-8 sm:px-4 justify-between w-full py-3 bg-indigo-light dark:bg-purple-black"
|
||||
aria-current="true"
|
||||
href="'+$langTarget+'"><span class="font-body-semi"
|
||||
>'+$langLabel+' - '+$locale.toUpperCase()+'</span><span class="fa-solid fa-check text-indigo dark:text-white text-body-l"></span></li>')
|
||||
#end
|
||||
#end ## end foreach
|
||||
>'+$langLabel+' - '+$locale.toUpperCase()+
|
||||
'</span><span class="fa-solid fa-check text-indigo dark:text-white text-body-l"></span></li>')
|
||||
#end
|
||||
#end ## end foreach
|
||||
|
||||
<agov-language
|
||||
class="hidden sm:inline-block"
|
||||
data-lang='$login.localeCode.toUpperCase()'
|
||||
data-links='$langMenu'
|
||||
data-aria_label='$text.get("languageDropdown.aria.label")'
|
||||
>
|
||||
>
|
||||
</agov-language>
|
||||
<a href="$text.get("general.help.link")" target="_blank" class="cursor-pointer hidden sm:inline-block">
|
||||
<div class="mx-6 flex items-center">
|
||||
<i class="text-xl pr-2 fa-regular fa-circle-question ml-auto text-space-blue dark:text-white transition-all"></i>
|
||||
<span class="text-space-blue dark:text-white font-body-semi text-body-l transition-colors">$text.get("general.help")</span>
|
||||
<span class="text-space-blue dark:text-white font-body-semi text-body-l transition-colors">$text.get(
|
||||
"general.help")</span>
|
||||
</div>
|
||||
</a>
|
||||
|
||||
<agov-darkmode
|
||||
class="hidden sm:inline-block"
|
||||
data-aria_label='$text.get("darkModeSwitch.aria.label")'>
|
||||
class="hidden sm:inline-block"
|
||||
data-aria_label='$text.get("darkModeSwitch.aria.label")'>
|
||||
</agov-darkmode>
|
||||
|
||||
<agov-mobile-menu
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
#parse("${templatePath}/header.vm")
|
||||
|
||||
<agov-backdrop></agov-backdrop>
|
||||
<div id="fidoBackdrop" style="display: none">
|
||||
<div id="fidoBackdrop" class="hidden">
|
||||
<div class="fixed z-50 top-0 left-0 bottom-0 right-0 backdrop-blur-[10px]"></div>
|
||||
<div class="fixed z-50 top-0 left-0 bottom-0 right-0 bg-zinc-50 opacity-80"></div>
|
||||
</div>
|
||||
|
@ -16,79 +16,73 @@
|
|||
</div>
|
||||
|
||||
<h3 class="font-header text-h5 text-space-blue dark:text-white mb-4">$text.get(
|
||||
"recovery_accessapp_auth.accessAppRegistered")</h3>
|
||||
"recovery_accessapp_auth.accessAppRegistered")</h3>
|
||||
|
||||
<p class="font-body text-body-l text-space-blue dark:text-white mb-2">
|
||||
${text.get("recovery_accessapp_auth.instruction1").replaceAll(
|
||||
"!!!ACCESS_APP_NAME!!!", "$utils.escapeHtmlAttribute($gui.getGuiElem('accessApp').value)")}
|
||||
${text.get("recovery_accessapp_auth.instruction1").replaceAll(
|
||||
"!!!ACCESS_APP_NAME!!!", "$utils.escapeHtmlAttribute($gui.getGuiElem('accessApp').value)")}
|
||||
</p>
|
||||
|
||||
<p class="font-body text-body-l text-space-blue dark:text-white mb-8">
|
||||
${text.get("recovery_accessapp_auth.instruction2").replaceAll(
|
||||
"!!!ACCESS_APP_NAME!!!", "$utils.escapeHtmlAttribute($gui.getGuiElem('accessApp').value)")}
|
||||
${text.get("recovery_accessapp_auth.instruction2").replaceAll(
|
||||
"!!!ACCESS_APP_NAME!!!", "$utils.escapeHtmlAttribute($gui.getGuiElem('accessApp').value)")}
|
||||
</p>
|
||||
|
||||
<div id="accessAppModal" class="h-full">
|
||||
<div class="desktopBanner" aria-live="assertive">
|
||||
<div style="display: none"
|
||||
class="info flex rounded-xl bg-info-background dark:bg-dark-info-background items-center p-4 mb-4">
|
||||
<div class="hidden info flex rounded-xl bg-info-background dark:bg-dark-info-background items-center p-4
|
||||
mb-4">
|
||||
<i class="fa-regular fa-info-circle rounded-full p-3 text-info dark:text-dark-info bg-info/10 dark:bg-dark-info-icon mr-4 text-xl leading-none"></i>
|
||||
<p class="font-body text-body-l text-space-blue dark:text-white">
|
||||
$text.get("mauth_usernameless.banner.info")
|
||||
$text.get("mauth_usernameless.banner.info")
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div style="display: none"
|
||||
class="success flex rounded-xl bg-success-background dark:bg-dark-success-background items-center p-4 mb-4">
|
||||
<div class="hidden success flex rounded-xl bg-success-background dark:bg-dark-success-background items-center p-4 mb-4">
|
||||
<i class="fa-regular fa-check-circle rounded-full p-3 text-success dark:text-dark-success bg-success/10 dark:bg-dark-success-icon mr-4 text-xl leading-none"></i>
|
||||
<div>
|
||||
<p class="font-body text-body-l text-space-blue dark:text-white">
|
||||
$text.get("mauth_usernameless.banner.success")
|
||||
$text.get("mauth_usernameless.banner.success")
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="display: none"
|
||||
class="error flex rounded-xl bg-error-background dark:bg-dark-error-background items-center p-4 mb-4">
|
||||
<div class="hidden error flex rounded-xl bg-error-background dark:bg-dark-error-background items-center p-4 mb-4">
|
||||
<i class="fa-regular fa-exclamation-circle rounded-full p-3 text-error dark:text-dark-error bg-error/10 dark:bg-dark-error-icon mr-4 text-xl leading-none"></i>
|
||||
<p class="font-body text-body-l text-space-blue dark:text-white">
|
||||
$text.get("mauth_usernameless.banner.error")
|
||||
$text.get("mauth_usernameless.banner.error")
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="relative flex flex-col h-full">
|
||||
<div id="blurBackdrop" class="absolute backdrop-blur-sm top-0 bottom-0 -left-4 -right-4 z-10"
|
||||
style="display:none "></div>
|
||||
<div id="blurBackdrop" class="hidden absolute backdrop-blur-sm top-0 bottom-0 -left-4 -right-4 z-10"></div>
|
||||
<div class="mobileBanner relative z-20" aria-live="assertive">
|
||||
<div style="display: none"
|
||||
class="info flex rounded-xl bg-info-background dark:bg-dark-info-background items-center p-4 mb-4">
|
||||
<div class="hidden info flex rounded-xl bg-info-background dark:bg-dark-info-background items-center p-4 mb-4">
|
||||
<i class="fa-regular fa-info-circle rounded-full p-3 text-info dark:text-dark-info bg-info/10 dark:bg-dark-info-icon mr-4 text-xl leading-none"></i>
|
||||
<p class="font-body text-body-l text-space-blue dark:text-white">
|
||||
$text.get("mauth_usernameless.banner.info")
|
||||
$text.get("mauth_usernameless.banner.info")
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div style="display: none"
|
||||
class="success flex rounded-xl bg-success-background dark:bg-dark-success-background items-center p-4 mb-4">
|
||||
<div class="hidden success flex rounded-xl bg-success-background dark:bg-dark-success-background items-center p-4 mb-4">
|
||||
<i class="fa-regular fa-check-circle rounded-full p-3 text-success dark:text-dark-success bg-success/10 dark:bg-dark-success-icon mr-4 text-xl leading-none"></i>
|
||||
<div>
|
||||
<p class="font-body text-body-l text-space-blue dark:text-white">
|
||||
$text.get("mauth_usernameless.banner.success")
|
||||
$text.get("mauth_usernameless.banner.success")
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="display: none"
|
||||
class="error flex rounded-xl bg-error-background dark:bg-dark-error-background items-center p-4 mb-4">
|
||||
<div class="hidden error flex rounded-xl bg-error-background dark:bg-dark-error-background items-center p-4 mb-4">
|
||||
<i class="fa-regular fa-exclamation-circle rounded-full p-3 text-error dark:text-dark-error bg-error/10 dark:bg-dark-error-icon mr-4 text-xl leading-none"></i>
|
||||
<p class="font-body text-body-l text-space-blue dark:text-white">
|
||||
$text.get("mauth_usernameless.banner.error")
|
||||
$text.get("mauth_usernameless.banner.error")
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
<div id="agovLoginImageMobile" style="display: none"
|
||||
class="md:max-w-[520px] max-w-[350px] sm:max-w-[300px] w-full basis-1/2 mx-auto mb-4">
|
||||
<div id="agovLoginImageMobile"
|
||||
class="hidden md:max-w-[520px] max-w-[350px] sm:max-w-[300px] w-full basis-1/2 mx-auto mb-4">
|
||||
<img alt=""
|
||||
src="${login.appDataPath}/static/images/recovery.svg"
|
||||
class="block sm:hidden md:block dark:hidden w-full">
|
||||
|
@ -102,8 +96,7 @@
|
|||
<canvas role="img" aria-labelledby="labelQRCodeInstructions" id="mauth_qrcode"
|
||||
class="mb-4 mx-auto"></canvas>
|
||||
<div class="hidden" id="QRcodeHiddenLink"></div>
|
||||
<span id="spinner" class="absolute left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2 z-20"
|
||||
style="display: none">
|
||||
<span id="spinner" class="hidden absolute left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2 z-20">
|
||||
<img src="${login.appDataPath}/static/images/spinner.svg" class="animate-spin block dark:hidden">
|
||||
<img src="${login.appDataPath}/static/images/spinner-dark.svg"
|
||||
class="animate-spin hidden dark:block">
|
||||
|
@ -125,16 +118,16 @@
|
|||
<div class="accessAppInstructions flex bg-indigo-light rounded-xl p-4 mb-4 items-center dark:bg-purple-black">
|
||||
<img alt="" src="${login.appDataPath}/static/images/access-app.svg" class="h-12 mr-4">
|
||||
<p id="labelQRCodeInstructions" class="font-header text-h5 text-space-blue dark:text-white">
|
||||
$text.get("mauth_usernameless.instructions")
|
||||
$text.get("mauth_usernameless.instructions")
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
#set ($formTarget = $utils.escapeHtmlAttribute($gui.target.replaceAll('&?language=[^&]*','')))
|
||||
#set ($formTarget = $utils.escapeHtmlAttribute($gui.target.replaceAll('&?language=[^&]*','')))
|
||||
<form id="$gui.name" name="$gui.name" method="POST" target="_self" action="$formTarget" autocomplete="off"
|
||||
accept-charset="UTF-8" class="w-full bottom-8 sm:static mt-auto mb-6 sm:mb-0">
|
||||
|
||||
<div id="mobileButtons" style="display: none" class="w-full bottom-8 sm:static mt-auto mb-16 sm:mb-0">
|
||||
<div id="mobileButtons" class="hidden w-full bottom-8 sm:static mt-auto mb-16 sm:mb-0">
|
||||
<div class="flex flex-col">
|
||||
<a id="accessAppLink" href="">
|
||||
<agov-button
|
||||
|
@ -155,21 +148,20 @@
|
|||
data-value="EID"
|
||||
data-id="EID"
|
||||
data-label="<i class='fa-regular fa-eye align-middle text-xl text-indigo dark:text-lilac mr-2'></i>$text.get(
|
||||
"mauth_usernameless.showQR")"
|
||||
"mauth_usernameless.showQR")"
|
||||
data-type="button"
|
||||
data-fullwidth="true">
|
||||
</agov-button>
|
||||
|
||||
<agov-button
|
||||
style="display: none"
|
||||
id="hideQR"
|
||||
class="block basis-full"
|
||||
class="hidden basis-full"
|
||||
data-style="frameless"
|
||||
data-name="EID"
|
||||
data-value="EID"
|
||||
data-id="EID"
|
||||
data-label="<i class='fa-regular fa-eye-slash align-middle text-xl text-indigo dark:text-lilac mr-2'></i>$text.get(
|
||||
"mauth_usernameless.hideQR")"
|
||||
"mauth_usernameless.hideQR")"
|
||||
data-type="button"
|
||||
data-fullwidth="true">
|
||||
</agov-button>
|
||||
|
|
|
@ -13,12 +13,12 @@
|
|||
</div>
|
||||
|
||||
<h4 id="modalTitle" class="font-header text-h4 text-space-blue dark:text-white mb-8">
|
||||
$text.get("recovery_check_code.noCodeAccess")
|
||||
$text.get("recovery_check_code.noCodeAccess")
|
||||
</h4>
|
||||
|
||||
<div id="modalDescription" class="mb-20">
|
||||
<p class="font-body text-body-l text-space-blue dark:text-white">
|
||||
$text.get("recovery_check_code.noCodeAccessInstructions")
|
||||
$text.get("recovery_check_code.noCodeAccessInstructions")
|
||||
</p>
|
||||
</div>
|
||||
|
||||
|
@ -51,27 +51,31 @@
|
|||
<div class="flex flex-col-reverse sm:flex-row justify-evenly items-center gap-5 w-full">
|
||||
<div class="flex flex-col sm:bg-white sm:dark:bg-surface-black rounded-[20px] sm:px-10 sm:py-10 max-w-[550px] w-full
|
||||
basis-full md:basis-1/2">
|
||||
|
||||
<span id="spinner" class="hidden absolute left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2 z-30">
|
||||
<img src="${login.appDataPath}/static/images/spinner.svg" class="animate-spin block dark:hidden">
|
||||
<img src="${login.appDataPath}/static/images/spinner-dark.svg" class="animate-spin hidden dark:block">
|
||||
</span>
|
||||
<div id="blurBackdrop" class="hidden absolute backdrop-blur-sm -top-1 -bottom-96 -left-4 -right-4 z-20"></div>
|
||||
<div class="flex mb-6 items-baseline">
|
||||
<h3 class="font-header text-h3 text-space-blue dark:text-white mr-3">$text.get("general.recovery")</h3>
|
||||
<h4 class="font-header text-h4 text-disabled-grey dark:text-silver">$text.get("general.entryCode")</h4>
|
||||
</div>
|
||||
|
||||
#set($error = $gui.getGuiElem("lasterror"))
|
||||
#if (($error.value && $error.value != ""))
|
||||
#set($error = $gui.getGuiElem("lasterror"))
|
||||
#if (($error.value && $error.value != ""))
|
||||
<div class="error flex rounded-xl bg-error-background dark:bg-dark-error-background items-center p-4 mb-6">
|
||||
<i class="fa-regular fa-exclamation-circle rounded-full p-3 text-error dark:text-dark-error bg-error/10 dark:bg-dark-error-icon mr-4 text-xl leading-none"></i>
|
||||
<p class="font-body text-body-l text-space-blue dark:text-white">
|
||||
$text.get("recovery_check_code.codeIncorrect")
|
||||
$text.get("recovery_check_code.codeIncorrect")
|
||||
</p>
|
||||
</div>
|
||||
#end
|
||||
#end
|
||||
|
||||
<p class="font-body text-body-l text-space-blue dark:text-white mb-2">
|
||||
$text.get("recovery_check_code.instruction")
|
||||
$text.get("recovery_check_code.instruction")
|
||||
</p>
|
||||
|
||||
#set ($formTarget = $utils.escapeHtmlAttribute($gui.target.replaceAll('&?language=[^&]*','')))
|
||||
#set ($formTarget = $utils.escapeHtmlAttribute($gui.target.replaceAll('&?language=[^&]*','')))
|
||||
<form id="$gui.name" name="$gui.name" method="POST" target="_self" action="$formTarget" autocomplete="off"
|
||||
accept-charset="UTF-8"
|
||||
class="flex flex-col flex-auto block ">
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
#parse("${templatePath}/header.vm")
|
||||
|
||||
<agov-backdrop></agov-backdrop>
|
||||
<div id="fidoBackdrop" style="display: none">
|
||||
<div id="fidoBackdrop" class="hidden">
|
||||
<div class="fixed z-50 top-0 left-0 bottom-0 right-0 backdrop-blur-[10px]"></div>
|
||||
<div class="fixed z-50 top-0 left-0 bottom-0 right-0 bg-zinc-50 opacity-80"></div>
|
||||
</div>
|
||||
|
@ -16,24 +16,23 @@
|
|||
</div>
|
||||
|
||||
<h3 class="font-header text-h5 text-space-blue dark:text-white mb-4">$text.get(
|
||||
"recovery_fidokey_auth.keyRegistered")</h3>
|
||||
"recovery_fidokey_auth.keyRegistered")</h3>
|
||||
|
||||
<p class="font-body text-body-l text-space-blue dark:text-white mb-2">
|
||||
${text.get("recovery_fidokey_auth.instruction1").replaceAll(
|
||||
"!!!SECURITY_KEY_NAME!!!", "$utils.escapeHtmlAttribute($gui.getGuiElem('securityKey').value)")}
|
||||
${text.get("recovery_fidokey_auth.instruction1").replaceAll(
|
||||
"!!!SECURITY_KEY_NAME!!!", "$utils.escapeHtmlAttribute($gui.getGuiElem('securityKey').value)")}
|
||||
</p>
|
||||
|
||||
<p class="font-body text-body-l text-space-blue dark:text-white mb-8">
|
||||
${text.get("recovery_fidokey_auth.instruction2").replaceAll(
|
||||
"!!!SECURITY_KEY_NAME!!!", "$utils.escapeHtmlAttribute($gui.getGuiElem('securityKey').value)")}
|
||||
${text.get("recovery_fidokey_auth.instruction2").replaceAll(
|
||||
"!!!SECURITY_KEY_NAME!!!", "$utils.escapeHtmlAttribute($gui.getGuiElem('securityKey').value)")}
|
||||
</p>
|
||||
|
||||
#set ($formTarget = $utils.escapeHtmlAttribute($gui.target.replaceAll('&?language=[^&]*','')))
|
||||
<div style="display: none"
|
||||
class="error flex rounded-xl bg-error-background dark:bg-dark-error-background items-center p-4 mb-4">
|
||||
#set ($formTarget = $utils.escapeHtmlAttribute($gui.target.replaceAll('&?language=[^&]*','')))
|
||||
<div class="hidden error flex rounded-xl bg-error-background dark:bg-dark-error-background items-center p-4 mb-4">
|
||||
<i class="fa-regular fa-exclamation-circle rounded-full p-3 text-error dark:text-dark-error bg-error/10 dark:bg-dark-error-icon mr-4 text-xl leading-none"></i>
|
||||
<p class="font-body text-body-l text-space-blue dark:text-white">
|
||||
$text.get("fido2_auth.cancel.fido")
|
||||
$text.get("fido2_auth.cancel.fido")
|
||||
</p>
|
||||
</div>
|
||||
|
||||
|
@ -42,21 +41,21 @@
|
|||
<span class="font-header text-h6 bg-royal-light-blue dark:bg-blueish-black w-12 h-12 flex flex-none items-center justify-center rounded-full
|
||||
text-space-blue dark:text-white leading-none">1</span>
|
||||
<p class="font-body-semi text-body-l text-space-blue dark:text-white ml-4">$text.get(
|
||||
"recovery_fidokey_auth.fidoInstruction")</p>
|
||||
"recovery_fidokey_auth.fidoInstruction")</p>
|
||||
</div>
|
||||
|
||||
<div class="flex mb-2 items-center">
|
||||
<span class="font-header text-h6 bg-royal-light-blue dark:bg-blueish-black w-12 h-12 flex flex-none items-center justify-center rounded-full
|
||||
text-space-blue dark:text-white leading-none">2</span>
|
||||
<p class="font-body-semi text-body-l text-space-blue dark:text-white ml-4">$text.get(
|
||||
"fido2_auth.instruction2")</p>
|
||||
"fido2_auth.instruction2")</p>
|
||||
</div>
|
||||
|
||||
<div class="flex mb-2 items-center">
|
||||
<span class="font-header text-h6 bg-royal-light-blue dark:bg-blueish-black w-12 h-12 flex flex-none items-center justify-center rounded-full
|
||||
text-space-blue dark:text-white leading-none">3</span>
|
||||
<p class="font-body-semi text-body-l text-space-blue dark:text-white ml-4">$text.get(
|
||||
"fido2_auth.instruction3")</p>
|
||||
"fido2_auth.instruction3")</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
|
|
@ -2,6 +2,11 @@
|
|||
|
||||
<agov-backdrop></agov-backdrop>
|
||||
<div id="mainContent" class="container mx-auto sm:mt-32 sm:max-w-full flex flex-auto sm:block">
|
||||
<span id="spinner" class="hidden absolute left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2 z-30">
|
||||
<img src="${login.appDataPath}/static/images/spinner.svg" class="animate-spin block dark:hidden">
|
||||
<img src="${login.appDataPath}/static/images/spinner-dark.svg" class="animate-spin hidden dark:block">
|
||||
</span>
|
||||
<div id="blurBackdrop" class="hidden absolute backdrop-blur-sm -top-1 -bottom-96 -left-4 -right-4 z-20"></div>
|
||||
<div class="flex flex-col-reverse sm:flex-row justify-evenly items-center gap-5 w-full">
|
||||
<div class="flex flex-col sm:bg-white sm:dark:bg-surface-black rounded-[20px] sm:px-10 sm:py-10 max-w-[550px] w-full
|
||||
basis-full md:basis-1/2">
|
||||
|
@ -13,43 +18,43 @@
|
|||
<div class="info flex rounded-xl bg-info-background dark:bg-dark-info-background items-center p-4 mb-4">
|
||||
<i class="fa-regular fa-info-circle rounded-full p-3 text-info dark:text-dark-info bg-info/10 dark:bg-dark-info-icon mr-4 text-xl leading-none"></i>
|
||||
<p class="font-body text-body-l text-space-blue dark:text-white">
|
||||
$text.get("recovery_intro_email.banner.info")
|
||||
$text.get("recovery_intro_email.banner.info")
|
||||
</p>
|
||||
</div>
|
||||
|
||||
#set($error = $gui.getGuiElem("lasterror"))
|
||||
#if (($error.value && $error.value != ""))
|
||||
#set($error = $gui.getGuiElem("lasterror"))
|
||||
#if (($error.value && $error.value != ""))
|
||||
<div class="error flex rounded-xl bg-error-background dark:bg-dark-error-background items-center p-4 mb-4">
|
||||
<i class="fa-regular fa-exclamation-circle rounded-full p-3 text-error dark:text-dark-error bg-error/10 dark:bg-dark-error-icon mr-4 text-xl leading-none"></i>
|
||||
<p class="font-body text-body-l text-space-blue dark:text-white">
|
||||
$text.get("recovery_intro_email.banner.error")
|
||||
$text.get("recovery_intro_email.banner.error")
|
||||
</p>
|
||||
</div>
|
||||
#end
|
||||
#end
|
||||
|
||||
<div id="captchaNotFilled" style="display: none"
|
||||
class="error flex rounded-xl bg-error-background dark:bg-dark-error-background items-center p-4 mb-4">
|
||||
<div id="captchaNotFilled"
|
||||
class="hidden error flex rounded-xl bg-error-background dark:bg-dark-error-background items-center p-4 mb-4">
|
||||
<i class="fa-regular fa-exclamation-circle rounded-full p-3 text-error dark:text-dark-error bg-error/10 dark:bg-dark-error-icon mr-4 text-xl leading-none"></i>
|
||||
<p class="font-body text-body-l text-space-blue dark:text-white">
|
||||
$text.get("recovery_intro_email.captchaUnchecked")
|
||||
$text.get("recovery_intro_email.captchaUnchecked")
|
||||
</p>
|
||||
</div>
|
||||
|
||||
#set ($formTarget = $utils.escapeHtmlAttribute($gui.target.replaceAll('&?language=[^&]*','')))
|
||||
#set ($formTarget = $utils.escapeHtmlAttribute($gui.target.replaceAll('&?language=[^&]*','')))
|
||||
<form id="$gui.name" name="$gui.name" method="POST" target="_self" action="$formTarget" autocomplete="off"
|
||||
accept-charset="UTF-8"
|
||||
class="mt-4 flex flex-col flex-auto block ">
|
||||
#set ($emailInput = $gui.getGuiElem('email'))
|
||||
#set ($emailInput = $gui.getGuiElem('email'))
|
||||
<agov-input
|
||||
data-label="$text.get("general.email.address")"
|
||||
data-placeholder="$text.get("general.email")"
|
||||
data-id="email"
|
||||
data-name="email"
|
||||
#if ($emailInput && $emailInput.value && $emailInput.value.length() > 0)
|
||||
#if ($emailInput && $emailInput.value && $emailInput.value.length() > 0)
|
||||
data-value="$utils.escapeHtmlAttribute($emailInput.value)"
|
||||
#else
|
||||
#else
|
||||
data-value=""
|
||||
#end
|
||||
#end
|
||||
data-type="text"
|
||||
data-autofocus="true"
|
||||
data-left_icon="fa-envelope"
|
||||
|
@ -60,16 +65,16 @@
|
|||
|
||||
<p class="font-body text-body-l text-space-blue dark:text-white mb-2 sm:mb-8">
|
||||
<span class="font-body-semi">$text.get("recovery_intro_email.important")</span>
|
||||
$text.get("recovery_intro_email.process")
|
||||
$text.get("recovery_intro_email.process")
|
||||
</p>
|
||||
#if ($utils.escapeHtmlAttribute($gui.getGuiElem("X-ReCAPTCHA-Integration").value) == "INVISIBLE")
|
||||
#set ($isCaptchaVisible = true)
|
||||
#else
|
||||
#set ($isCaptchaVisible = false)
|
||||
#end
|
||||
#if ($utils.escapeHtmlAttribute($gui.getGuiElem("X-ReCAPTCHA-Integration").value) == "INVISIBLE")
|
||||
#set ($isCaptchaVisible = true)
|
||||
#else
|
||||
#set ($isCaptchaVisible = false)
|
||||
#end
|
||||
|
||||
#if ($isCaptchaVisible)
|
||||
#set ($captcha = $gui.getGuiElem("captchaSettings.reCaptchaInvisibleSiteKey"))
|
||||
#if ($isCaptchaVisible)
|
||||
#set ($captcha = $gui.getGuiElem("captchaSettings.reCaptchaInvisibleSiteKey"))
|
||||
<input type="hidden" name="recaptcha_sitekey" value="$captcha.value"/>
|
||||
<input type="hidden" name="recaptcha_response" value="captcha">
|
||||
<script src="https://www.google.com/recaptcha/enterprise.js?render=$captcha.value"></script>
|
||||
|
@ -99,8 +104,8 @@
|
|||
btn.click()
|
||||
}
|
||||
</script>
|
||||
#else
|
||||
#set ($captcha = $gui.getGuiElem("captchaSettings.reCaptchaVisibleSiteKey"))
|
||||
#else
|
||||
#set ($captcha = $gui.getGuiElem("captchaSettings.reCaptchaVisibleSiteKey"))
|
||||
<input type="hidden" name="recaptcha_sitekey" value="$captcha.value"/>
|
||||
<input type="hidden" name="recaptcha_response" value="captcha">
|
||||
<script src="https://www.google.com/recaptcha/enterprise.js?onload=onloadCallback&render=explicit" async
|
||||
|
@ -124,22 +129,22 @@
|
|||
});
|
||||
};
|
||||
</script>
|
||||
#end
|
||||
#end
|
||||
|
||||
<div class="font-body text-body-l mb-4">
|
||||
#if ($isCaptchaVisible)
|
||||
#if ($isCaptchaVisible)
|
||||
<div class="text-disabled-grey dark:text-silver">
|
||||
$text.get("recovery_intro_email.siteProtectedWithRecaptcha")
|
||||
$text.get("recovery_intro_email.siteProtectedWithRecaptcha")
|
||||
</div>
|
||||
#else
|
||||
#else
|
||||
<div class="flex mt-8" id="captchaRender"></div>
|
||||
#end
|
||||
#end
|
||||
|
||||
</div>
|
||||
|
||||
<div class="w-full sm:static mt-auto mb-6 sm:mb-0">
|
||||
<div class="flex flex-col sm:flex-row-reverse gap-4">
|
||||
#if ($isCaptchaVisible)
|
||||
#if ($isCaptchaVisible)
|
||||
<agov-button
|
||||
class="block basis-full"
|
||||
data-name="continue"
|
||||
|
@ -150,7 +155,7 @@
|
|||
data-fullwidth="true"
|
||||
onclick="return emailCaptcha(event)">
|
||||
</agov-button>
|
||||
#else
|
||||
#else
|
||||
<agov-button
|
||||
class="block basis-full"
|
||||
data-name="continue"
|
||||
|
@ -161,7 +166,7 @@
|
|||
data-fullwidth="true"
|
||||
onclick="validateEmail.validateForm(event, true)">
|
||||
</agov-button>
|
||||
#end
|
||||
#end
|
||||
<agov-button
|
||||
class="block basis-full"
|
||||
data-style="secondary"
|
||||
|
|
|
@ -2,6 +2,11 @@
|
|||
|
||||
<agov-backdrop></agov-backdrop>
|
||||
<div id="mainContent" class="container mx-auto sm:mt-32 sm:max-w-full flex flex-auto sm:block">
|
||||
<span id="spinner" class="hidden absolute left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2 z-30">
|
||||
<img src="${login.appDataPath}/static/images/spinner.svg" class="animate-spin block dark:hidden">
|
||||
<img src="${login.appDataPath}/static/images/spinner-dark.svg" class="animate-spin hidden dark:block">
|
||||
</span>
|
||||
<div id="blurBackdrop" class="hidden absolute backdrop-blur-sm -top-1 -bottom-96 -left-4 -right-4 z-20"></div>
|
||||
<div class="flex flex-col-reverse sm:flex-row justify-evenly items-center gap-5 w-full">
|
||||
<div class="flex flex-col sm:bg-white sm:dark:bg-surface-black rounded-[20px] sm:px-10 sm:py-10 max-w-[550px] w-full
|
||||
basis-full md:basis-1/2">
|
||||
|
@ -14,12 +19,12 @@
|
|||
<i class="fa-regular fa-check-circle rounded-full p-3 text-success dark:text-dark-success bg-success/10 dark:bg-dark-success-icon mr-4 text-xl leading-none"></i>
|
||||
<div>
|
||||
<p class="font-body text-body-l text-space-blue dark:text-white">
|
||||
$text.get("recovery_intro_email_sent.banner.success")
|
||||
$text.get("recovery_intro_email_sent.banner.success")
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
#set ($formTarget = $utils.escapeHtmlAttribute($gui.target.replaceAll('&?language=[^&]*','')))
|
||||
#set ($formTarget = $utils.escapeHtmlAttribute($gui.target.replaceAll('&?language=[^&]*','')))
|
||||
<form id="$gui.name" name="$gui.name" method="POST" target="_self" action="$formTarget" autocomplete="off"
|
||||
accept-charset="UTF-8"
|
||||
class="flex flex-col flex-auto block ">
|
||||
|
|
|
@ -2,31 +2,35 @@
|
|||
|
||||
<agov-backdrop></agov-backdrop>
|
||||
<div id="mainContent" class="container mx-auto sm:mt-32 sm:max-w-full flex flex-auto sm:block">
|
||||
<span id="spinner" class="hidden absolute left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2 z-30">
|
||||
<img src="${login.appDataPath}/static/images/spinner.svg" class="animate-spin block dark:hidden">
|
||||
<img src="${login.appDataPath}/static/images/spinner-dark.svg" class="animate-spin hidden dark:block">
|
||||
</span>
|
||||
<div id="blurBackdrop" class="hidden absolute backdrop-blur-sm -top-1 -bottom-96 -left-4 -right-4 z-20"></div>
|
||||
<div class="flex flex-col-reverse sm:flex-row justify-evenly items-center gap-5 w-full">
|
||||
<div class="flex flex-col sm:bg-white sm:dark:bg-surface-black rounded-[20px] sm:px-10 sm:py-10 max-w-[550px] w-full
|
||||
basis-full md:basis-1/2">
|
||||
|
||||
<div class="flex mb-6 items-baseline">
|
||||
<h3 class="font-header text-h3 text-space-blue dark:text-white mr-3">$text.get("general.login")</h3>
|
||||
<h4 class="font-header text-h4 text-disabled-grey dark:text-silver">$text.get("general.securityKey")</h4>
|
||||
</div>
|
||||
|
||||
#set ($formTarget = $utils.escapeHtmlAttribute($gui.target.replaceAll('&?language=[^&]*','')))
|
||||
#set ($formTarget = $utils.escapeHtmlAttribute($gui.target.replaceAll('&?language=[^&]*','')))
|
||||
<form id="$gui.name" name="$gui.name" method="POST" target="_self" action="$formTarget" autocomplete="off"
|
||||
accept-charset="UTF-8"
|
||||
class="flex flex-col flex-auto block ">
|
||||
#set ($emailInput = $gui.getGuiElem('email'))
|
||||
#set ($emailInput = $gui.getGuiElem('email'))
|
||||
<agov-input
|
||||
class="mb-4 sm:mb-40"
|
||||
data-label="$text.get("general.email.address")"
|
||||
data-placeholder="$text.get("general.email")"
|
||||
data-id="email"
|
||||
data-name="userInputValue_prompt.email"
|
||||
#if ($emailInput && $emailInput.value && $emailInput.value.length() > 0)
|
||||
#if ($emailInput && $emailInput.value && $emailInput.value.length() > 0)
|
||||
data-value="$utils.escapeHtmlAttribute($emailInput.value)"
|
||||
#else
|
||||
#else
|
||||
data-value=""
|
||||
#end
|
||||
#end
|
||||
data-type="text"
|
||||
data-autofocus="true"
|
||||
data-left_icon="fa-envelope"
|
||||
|
@ -35,14 +39,14 @@
|
|||
data-email_required="$text.get("user_input.invalid.email.required")">
|
||||
</agov-input>
|
||||
|
||||
#if ($gui.getGuiElem("X-ReCAPTCHA-Integration").value == "INVISIBLE")
|
||||
#set ($isCaptchaVisible = true)
|
||||
#else
|
||||
#set ($isCaptchaVisible = false)
|
||||
#end
|
||||
#if ($gui.getGuiElem("X-ReCAPTCHA-Integration").value == "INVISIBLE")
|
||||
#set ($isCaptchaVisible = true)
|
||||
#else
|
||||
#set ($isCaptchaVisible = false)
|
||||
#end
|
||||
|
||||
#if ($isCaptchaVisible)
|
||||
#set ($captcha = $gui.getGuiElem("captchaSettings.reCaptchaInvisibleSiteKey"))
|
||||
#if ($isCaptchaVisible)
|
||||
#set ($captcha = $gui.getGuiElem("captchaSettings.reCaptchaInvisibleSiteKey"))
|
||||
<input type="hidden" name="recaptcha_sitekey" value="$captcha.value"/>
|
||||
<input type="hidden" name="recaptcha_response" value="captcha">
|
||||
<script src="https://www.google.com/recaptcha/enterprise.js?render=$captcha.value"></script>
|
||||
|
@ -72,8 +76,8 @@
|
|||
btn.click()
|
||||
}
|
||||
</script>
|
||||
#else
|
||||
#set ($captcha = $gui.getGuiElem("captchaSettings.reCaptchaVisibleSiteKey"))
|
||||
#else
|
||||
#set ($captcha = $gui.getGuiElem("captchaSettings.reCaptchaVisibleSiteKey"))
|
||||
<input type="hidden" name="recaptcha_sitekey" value="$captcha.value"/>
|
||||
<input type="hidden" name="recaptcha_response" value="captcha">
|
||||
<script src="https://www.google.com/recaptcha/enterprise.js?onload=onloadCallback&render=explicit" async
|
||||
|
@ -97,22 +101,22 @@
|
|||
});
|
||||
};
|
||||
</script>
|
||||
#end
|
||||
#end
|
||||
|
||||
<div class="font-body text-body-l mb-4">
|
||||
#if ($isCaptchaVisible)
|
||||
#if ($isCaptchaVisible)
|
||||
<div class="text-disabled-grey dark:text-silver">
|
||||
$text.get("recovery_intro_email.siteProtectedWithRecaptcha")
|
||||
$text.get("recovery_intro_email.siteProtectedWithRecaptcha")
|
||||
</div>
|
||||
#else
|
||||
#else
|
||||
<div class="flex mt-8" id="captchaRender"></div>
|
||||
#end
|
||||
#end
|
||||
|
||||
</div>
|
||||
|
||||
<div class="w-full sm:static mt-auto mb-6 sm:mb-0">
|
||||
<div class="flex flex-col sm:flex-row-reverse gap-4">
|
||||
#if ($isCaptchaVisible)
|
||||
#if ($isCaptchaVisible)
|
||||
<agov-button
|
||||
class="block basis-full"
|
||||
data-name="submit"
|
||||
|
@ -123,7 +127,7 @@
|
|||
data-fullwidth="true"
|
||||
onclick="return emailCaptcha(event)">
|
||||
</agov-button>
|
||||
#else
|
||||
#else
|
||||
<agov-button
|
||||
class="block basis-full"
|
||||
data-name="submit"
|
||||
|
@ -134,7 +138,7 @@
|
|||
data-fullwidth="true"
|
||||
onclick="validateEmail.validateForm(event)">
|
||||
</agov-button>
|
||||
#end
|
||||
#end
|
||||
<agov-button
|
||||
class="block basis-full"
|
||||
data-style="secondary"
|
||||
|
|
|
@ -135,10 +135,10 @@ prompt.newpassword=Nuova Password
|
|||
prompt.newpassword.confirm=Conferma password
|
||||
prompt.password=Password
|
||||
prompt.userid=Nome utente
|
||||
pwreset.done.info=La password è stata modificata con successo. Fare clic su continua per accedere.
|
||||
pwreset.done.info=Your password was successfully changed. Please click on continue to log in.
|
||||
pwreset.email.sent=Se il vostro ID utente esiste, vi è stata inviata un'e-mail per reimpostare la password.
|
||||
pwreset.info.linktext=Password dimenticata
|
||||
pwreset.noticket=Il biglietto per la reimpostazione della password non è più valido. Si prega di generarne uno nuovo.
|
||||
pwreset.info.linktext=Password forgotten
|
||||
pwreset.noticket=Your password reset ticket is no longer valid. Please generate a new one.
|
||||
recovery_accessapp_auth.accessAppRegistered=App di accesso AGOV già registrata
|
||||
recovery_accessapp_auth.instruction1=Ha già registrato una nuova app di accesso AGOV !!!SECURITY_KEY_NAME!!! come parte del processo di recupero.
|
||||
recovery_accessapp_auth.instruction2=Si prega di usare !!!ACCESS_APP_NAME!!! per l'identificazione.
|
||||
|
@ -204,7 +204,7 @@ recovery_start_info.title=Il processo di ripristino sta per iniziare.
|
|||
title=NEVIS SSO Portal
|
||||
title.login=Login
|
||||
title.pwchange.label=Cambiare Password
|
||||
title.pwreset=Password Dimenticata
|
||||
title.pwreset=Password Forgotten
|
||||
user_input.invalid.email=Inserire un'e-mail valida.
|
||||
user_input.invalid.email.required=Campo obbligatorio
|
||||
user_input.invalid.email.tooLong=Il testo inserito è troppo lungo.
|
||||
|
|
|
@ -28,25 +28,20 @@ spec:
|
|||
management:
|
||||
httpGet:
|
||||
path: "/liveness"
|
||||
periodSeconds: 5
|
||||
initialDelaySeconds: 40
|
||||
periodSeconds: 30
|
||||
timeoutSeconds: 6
|
||||
readinessProbe:
|
||||
management:
|
||||
httpGet:
|
||||
path: "/readiness"
|
||||
periodSeconds: 5
|
||||
initialDelaySeconds: 40
|
||||
periodSeconds: 30
|
||||
timeoutSeconds: 6
|
||||
startupProbe:
|
||||
management:
|
||||
httpGet:
|
||||
path: "/readiness"
|
||||
periodSeconds: 5
|
||||
timeoutSeconds: 6
|
||||
failureThreshold: 50
|
||||
podDisruptionBudget:
|
||||
maxUnavailable: "50%"
|
||||
git:
|
||||
tag: "r-90c0ddd9c0c4d9011252ef186298ca61c939e952"
|
||||
tag: "r-5560b9df58bc00fcf3fc92f29f5f7840af9dbf26"
|
||||
dir: "DEFAULT-ADN-AGOV-PROJECT/DEFAULT-ADN-AGOV-INV/proxy-idp"
|
||||
credentials: "git-credentials"
|
||||
keystores:
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
<!-- source: pattern://0ceb05c56644a59d648c13b9 -->
|
||||
<Timer periodicity="60"/>
|
||||
<!-- source: pattern://0ceb05c56644a59d648c13b9 -->
|
||||
<Server User="nevis" Group="root" ServerName="proxy-idp" Timeout="30" MaxClients="600" MaxRequestsPerChild="0" KeepAlive="on" KeepAliveTimeout="5" MaxKeepAliveRequests="100" LimitRequestLine="5120" LimitRequestBody="512000" LimitRequestFields="50" LimitRequestFieldsize="5120" ServerRoot="/var/opt/nevisproxy/default" CoreDumpDirectory="" ErrorLog=""|/bin/sed -u s/^/[apache.log]\ /g"" LogLevel="notice" TransferLog=""|/bin/stdbuf -oL /bin/egrep -v GET./.....?ness"" LogFormat=""[access.log] %h %l %u %t \"%r\" %>s %b %{content-length}i %T %v \"%{Referer}i\" \"%{User-Agent}i\" trID=%{UNIQUE_ID}e"" SSLPassPhraseDialog="builtin" SSLSessionCache="shmcb:/var/opt/nevisproxy/default/run/apache_shmcb"/>
|
||||
<Server User="nevis" Group="root" ServerAdmin="admin@company.com" ServerName="proxy-idp" Timeout="30" MaxClients="600" MaxRequestsPerChild="0" KeepAlive="on" KeepAliveTimeout="5" MaxKeepAliveRequests="100" LimitRequestLine="5120" LimitRequestBody="512000" LimitRequestFields="50" LimitRequestFieldsize="5120" ServerRoot="/var/opt/nevisproxy/default" CoreDumpDirectory="" ErrorLog=""|/bin/sed -u s/^/[apache.log]\ /g"" Loglevel="notice" TransferLog=""|/bin/stdbuf -oL /bin/egrep -v GET./.....?ness"" LogFormat=""[access.log] %h %l %u %t \"%r\" %>s %b %{content-length}i %T %v \"%{Referer}i\" \"%{User-Agent}i\" trID=%{UNIQUE_ID}e"" SSLPassPhraseDialog="builtin" SSLSessionCache="shmcb:/var/opt/nevisproxy/default/run/apache_shmcb"/>
|
||||
<!-- source: pattern://0ceb05c56644a59d648c13b9 -->
|
||||
<Connector port="11080" name="management" listen="0.0.0.0:11080"/>
|
||||
<!-- source: pattern://1f0702aaabef60a615abf41f -->
|
||||
|
|
|
@ -61,7 +61,7 @@
|
|||
<!-- source: pattern://4fcfadb4a5c946ead7e6e995 -->
|
||||
<init-param>
|
||||
<param-name>RenewIdentification</param-name>
|
||||
<param-value>none</param-value>
|
||||
<param-value>false</param-value>
|
||||
</init-param>
|
||||
<!-- source: pattern://4fcfadb4a5c946ead7e6e995 -->
|
||||
<init-param>
|
||||
|
@ -463,7 +463,7 @@
|
|||
trace = request:getTracer()
|
||||
if request:getHeader("Origin") then
|
||||
if not response:getHeader("Access-Control-Allow-Origin") then
|
||||
domains = {"trustbroker.agov-w.azure.adnovum.net", "trustbroker.agov-d.azure.adnovum.net", "auth.agov-w.azure.adnovum.net"}
|
||||
domains = {"trustbroker.agov-d.azure.adnovum.net", "auth.agov-w.azure.adnovum.net"}
|
||||
for k, v in pairs(domains) do
|
||||
trace:info("Accepted domains="..v)
|
||||
end
|
||||
|
@ -652,8 +652,8 @@
|
|||
</init-param>
|
||||
<!-- source: pattern://cb8c63274fe346280de0ffd5 -->
|
||||
<init-param>
|
||||
<param-name>StoreInterceptedRequest</param-name>
|
||||
<param-value>false</param-value>
|
||||
<param-name>StateKey</param-name>
|
||||
<param-value>Auth_Realm_Mobile_FIDO_UAF</param-value>
|
||||
</init-param>
|
||||
</filter>
|
||||
<!-- source: pattern://06aeae2d799e492f5580d03b -->
|
||||
|
@ -692,8 +692,8 @@
|
|||
</init-param>
|
||||
<!-- source: pattern://06aeae2d799e492f5580d03b -->
|
||||
<init-param>
|
||||
<param-name>StoreInterceptedRequest</param-name>
|
||||
<param-value>false</param-value>
|
||||
<param-name>StateKey</param-name>
|
||||
<param-value>NotUsed_Auth_Realm</param-value>
|
||||
</init-param>
|
||||
</filter>
|
||||
<!-- source: pattern://0d3511bed6798a78cc3237f6 -->
|
||||
|
@ -1142,7 +1142,7 @@
|
|||
<!-- source: pattern://cdbb957d49fdc6695a978265#backends -->
|
||||
<init-param>
|
||||
<param-name>InetAddress</param-name>
|
||||
<param-value>connect-application-billing.adn-agov-connect-01-uat:8082</param-value>
|
||||
<param-value>connect-application-billing.adn-agov-connect-01-dev:8082</param-value>
|
||||
</init-param>
|
||||
<!-- source: pattern://cdbb957d49fdc6695a978265#backends -->
|
||||
<init-param>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
<!DOCTYPE html>
|
||||
<!-- If you change something here, make sure all the pages are modified accordingly -->
|
||||
<!-- svh -> Small View Height. It's not taking the height of the search bar on mobile into account -->
|
||||
<html class="relative min-h-screen h-full mx-4 flex sm:block" lang="$login.language" style="min-height: 100svh">
|
||||
<html class="relative h-full mx-4 flex sm:block min-h-100" lang="$login.language">
|
||||
<head>
|
||||
<title>AGOV</title>
|
||||
<meta charset="UTF-8">
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
<!DOCTYPE html>
|
||||
<!-- If you change something here, make sure all the pages are modified accordingly -->
|
||||
<!-- svh -> Small View Height. It's not taking the height of the search bar on mobile into account -->
|
||||
<html class="relative min-h-screen h-full mx-4 flex sm:block" lang="$login.language" style="min-height: 100svh">
|
||||
<html class="relative min-h-100 h-full mx-4 flex sm:block" lang="$login.language">
|
||||
<head>
|
||||
<title>AGOV</title>
|
||||
<meta charset="UTF-8">
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
<!DOCTYPE html>
|
||||
<!-- If you change something here, make sure all the pages are modified accordingly -->
|
||||
<!-- svh -> Small View Height. It's not taking the height of the search bar on mobile into account -->
|
||||
<html class="relative min-h-screen h-full mx-4 flex sm:block" lang="$login.language" style="min-height: 100svh">
|
||||
<html class="relative min-h-100 h-full mx-4 flex sm:block" lang="$login.language">
|
||||
<head>
|
||||
<title>AGOV</title>
|
||||
<meta charset="UTF-8">
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
<!DOCTYPE html>
|
||||
<!-- If you change something here, make sure all the pages are modified accordingly -->
|
||||
<!-- svh -> Small View Height. It's not taking the height of the search bar on mobile into account -->
|
||||
<html class="relative min-h-screen h-full mx-4 flex sm:block" lang="$login.language" style="min-height: 100svh">
|
||||
<html class="relative min-h-100 h-full mx-4 flex sm:block" lang="$login.language">
|
||||
<head>
|
||||
<title>AGOV</title>
|
||||
<meta charset="UTF-8">
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
<!DOCTYPE html>
|
||||
<!-- If you change something here, make sure all the pages are modified accordingly -->
|
||||
<!-- svh -> Small View Height. It's not taking the height of the search bar on mobile into account -->
|
||||
<html class="relative min-h-screen h-full mx-4 flex sm:block" lang="$login.language" style="min-height: 100svh">
|
||||
<html class="relative min-h-100 h-full mx-4 flex sm:block" lang="$login.language">
|
||||
<head>
|
||||
<title>AGOV Operations</title>
|
||||
<meta charset="UTF-8">
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
<!DOCTYPE html>
|
||||
<!-- If you change something here, make sure all the pages are modified accordingly -->
|
||||
<!-- svh -> Small View Height. It's not taking the height of the search bar on mobile into account -->
|
||||
<html class="relative min-h-screen h-full mx-4 flex sm:block" lang="$login.language" style="min-height: 100svh">
|
||||
<html class="relative min-h-100 h-full mx-4 flex sm:block" lang="$login.language">
|
||||
<head>
|
||||
<title>AGOV</title>
|
||||
<meta charset="UTF-8">
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
<!DOCTYPE html>
|
||||
<!-- If you change something here, make sure all the pages are modified accordingly -->
|
||||
<!-- svh -> Small View Height. It's not taking the height of the search bar on mobile into account -->
|
||||
<html class="relative min-h-screen h-full mx-4 flex sm:block" lang="$login.language" style="min-height: 100svh">
|
||||
<html class="relative min-h-100 h-full mx-4 flex sm:block" lang="$login.language">
|
||||
<head>
|
||||
<title>AGOV</title>
|
||||
<meta charset="UTF-8">
|
||||
|
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
Loading…
Reference in New Issue