#* The server uses this HTML page to perform SLO with WS-Federation and OpenID Connect partners. This template is used when the SLO was initiated by a partner. It is "invisible" in the sense that it displays only a spinner and no additional status information. For WS-Federation sessions, the partner's logout endpoint is loaded in a hidden iframe. For OpenID Connect sessions, if OAuth client's logout mode is Ping Front-Channel, then a small image is loaded for each of the OAuth client's logout endpoints. For OpenID Connect sessions, if OAuth client's logout mode is OIDC Front-Channel, then the OAuth client's logout endpoint is loaded in a hidden iframe. Before redirecting, the page waits until $minTimeToWaitMillis elapses and the window's onload event fires. However, logout endpoint redirects may cause the window's onload event to fire before the logout is complete for a given endpoint. If sessions are not being cleared correctly, it may be necessary to increase the $minTimeToWaitMillis timeout value. If logout endpoints are delayed in loading and the window's onload event has not fired, the page redirects after $maxTimeToWaitMillis. Velocity variables (identified by the $ character) are generated at runtime by the server. The following variables are available on this page, but not used by default: $utils - The utility method to display JSON String arrays $escape - The utility class that can be used to escape String variables $HttpServletResponse - The details of HTTP response $HttpServletRequest - The details of HTTP request $TrackingId - The user's session tracking ID $TransactionId - The unique ID for the SSO or SLO transaction. $PingFedBaseURL - The URL containing full hostname and port on which the PingFederate deployment runs on $CurrentPingFedBaseURL - The base URL used in the current request. This URL may differ from $PingFedBaseURL when using a virtual host name $locale - The user's country and language $templateMessages - The set of messages that is used to localize messages based on the user's locale Change text or formatting as needed. Modifying Velocity statements is not recommended as it may interfere with expected server behavior. It is recommended to sanitize the values that are displayed using $escape.escape(), for example $escape.escape($client_id). *# #set( $messageKeyPrefix = "sourceid-wsfed-idp-signout-cleanup-invisible-template." ) #set( $minTimeToWaitMillis = 1000 ) #set( $maxTimeToWaitMillis = 3000 ) #set( $imgSrcList = "") #foreach ($oidcEndpoint in $oidcEndpointList) #set( $imgSrcList = "${imgSrcList} $escape.escape($oidcEndpoint.value)" ) #end #set( $frameSrcList = "") #foreach( $idpEntityId in $wsfIdpList.keySet() ) #set( $frameSrcList = "${frameSrcList} $escape.escape($wsfIdpList.get($idpEntityId))" ) #end #foreach( $spEntityId in $spList.keySet() ) #set( $frameSrcList = "${frameSrcList} $escape.escape($spList.get($spEntityId))" ) #end #foreach ($oidcFcEndpoint in $oidcFCLogoutEndpointList) #set( $frameSrcList = "${frameSrcList} $escape.escape($oidcFcEndpoint.value)" ) #end