| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192 |
- <!DOCTYPE html>
- <html xmlns:layout="http://www.ultraq.net.nz/thymeleaf/layout" layout:decorate="~{layout}">
- <head>
- <meta http-equiv="X-UA-Compatible" content="IE=edge"/>
- <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"/>
- <title th:text="#{screen.logout.header}">Propagate Logout View</title>
- <link href="../../static/css/cas.css" rel="stylesheet" th:remove="tag" />
- <link href="https://use.fontawesome.com/releases/v5.0.6/css/all.css" rel="stylesheet">
- <script th:src="@{#{webjars.poppermin.js}}"></script>
- <script>
- $(function () {
- $('[data-toggle="tooltip"]').tooltip();
- });
- </script>
- <script th:inline="javascript">
- /*<![CDATA[*/
- function redirectToApp() {
- window.location = [[${logoutRedirectUrl}]];
- }
- function handleCallback(index, status) {
- if (status == 200) {
- $('#service' + index).addClass('fa-check').removeClass('fa-question');
- $('#service' + index).prop('title', 'Logout request was successfully received.');
- } else {
- $('#service' + index).addClass('fa-warning').removeClass('fa-question');
- $('#service' + index).prop('title', 'Logout notification could not be sent.');
- }
- }
- /*]]>*/
- </script>
- </head>
- <body>
- <main role="main" class="container mt-3 mb-3">
- <div layout:fragment="content">
- <div class="alert alert-success">
- <h2 th:utext="#{screen.logout.header}">Logout successful</h2>
- <p th:utext="#{screen.logout.fc.success}">You have successfully logged out of the Central Authentication
- Service. Given single logout is enabled with CAS, \
- the following list of applications are <strong> only notified</strong> to log you out and destroy your
- user session. Remember that this \
- is just a notification, not a guarantee. It is up the application itself to honor these notifications
- and properly take action to log you \
- out.</p>
- <ol start="a">
- <li th:each="entry,iterStat : ${logoutUrls}">
- <script type="text/javascript" th:inline="javascript">
- /*<![CDATA[*/
- $.ajax({
- url: [[${entry.key.logoutUrl.toExternalForm()}]],
- dataType: 'jsonp',
- async: true,
- contentType: [[${entry.value.contentType}]]
- , data: [[${entry.value.message}]]
- , success: function (data) {
- var index = [[${iterStat.index}]];
- handleCallback(index, 200);
- },
- error: function (err, textStatus, errorThrown) {
- var index = [[${iterStat.index}]];
- handleCallback(index, err.status);
- }
- });
- /*]]>*/
- </script>
- <p>
- <i data-toggle="tooltip" data-placement="top" class="fa fa-question"
- th:id="${'service'+iterStat.index}" title="Logout request pending..."> </i>
- <kbd th:text="${entry.key.service.id}">entry.key.service.id</kbd>
- </p>
- </li>
- </ol>
- <p th:utext="#{screen.logout.security}">For security reasons, exit your web browser.</p>
- <input type="button" th:if="${logoutRedirectUrl}"
- class="btn btn-primary btn-success" onclick="redirectToApp();"
- th:value="${'Go to ' + logoutRedirectUrl}" value="Go to...">
- </div>
- </div>
- </main>
- </body>
- </html>
|