casInterruptView.html 2.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. <!DOCTYPE html>
  2. <html xmlns:layout="http://www.ultraq.net.nz/thymeleaf/layout" layout:decorate="~{layout}">
  3. <head>
  4. <meta http-equiv="X-UA-Compatible" content="IE=edge"/>
  5. <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"/>
  6. <title th:text="#{cas.login.pagetitle}">CAS Interrupt View</title>
  7. <link href="../../static/css/cas.css" rel="stylesheet" th:remove="tag" />
  8. <script th:inline="javascript" th:if="${interrupt.autoRedirect}">
  9. /*<![CDATA[*/
  10. var autoRedirect = /*[[${interrupt.autoRedirect}]]*/;
  11. var emptyLinks = /*[[${#maps.isEmpty(interrupt.links)}]]*/;
  12. if (autoRedirect && !emptyLinks) {
  13. var link = /*[[${interrupt.links.values().iterator().next()}]]*/;
  14. var redirectTimeout = /*[[${interrupt.autoRedirectAfterSeconds}]]*/;
  15. setTimeout(function () {
  16. window.location = link;
  17. }, redirectTimeout <= 0 ? 0 : redirectTimeout * 1000);
  18. }
  19. /*]]>*/
  20. </script>
  21. </head>
  22. <body>
  23. <main role="main" class="container mt-3 mb-3">
  24. <div layout:fragment="content">
  25. <h1 th:text="#{screen.interrupt.title}">Authentication Interrupt</h1>
  26. <p th:utext="#{screen.interrupt.message(${principal.id})}">The authentication flow has been interrupted. CAS has
  27. not yet established a single sign-on session for <strong>{0}</strong>.</p>
  28. <div th:if="${interrupt.message}" class="alert alert-info">
  29. <p th:utext="${interrupt.message}">interrupt.message</p>
  30. <br/>
  31. <div th:if="${interrupt.links}">
  32. <a class="btn btn-success"
  33. th:each="link : ${interrupt.links}"
  34. th:text="${link.key}"
  35. th:href="${link.value}">link.key</a>
  36. </div>
  37. </div>
  38. <form method="post" id="fm1" th:if="${not interrupt.block}">
  39. <div class="form-group text-center">
  40. <div class="col-12">
  41. <input type="hidden" name="execution" th:value="${flowExecutionKey}"/>
  42. <input type="hidden" name="_eventId" value="proceed"/>
  43. <input class="btn btn-primary"
  44. name="proceed"
  45. accesskey="l"
  46. th:value="#{screen.interrupt.btn.proceed}"
  47. value="Proceed"
  48. type="submit"/>
  49. &nbsp;<a class="btn btn-primary" id="login" name="login"
  50. th:href="${service?.id} ?: @{/login}" th:text="#{screen.error.page.loginagain}">Login Again</a>
  51. </div>
  52. </div>
  53. </form>
  54. <div th:if="${interrupt.block}" class="text-center">
  55. <a class="btn btn-warning" id="cancel" name="cancel" th:href="@{/login}"
  56. th:text="#{screen.interrupt.btn.cancel}">Cancel</a>
  57. </div>
  58. </div>
  59. </main>
  60. </body>
  61. </html>