| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154 |
- <!DOCTYPE html>
- <html lang="en">
- <head>
- <meta charset="UTF-8">
- <meta http-equiv="X-UA-Compatible" content="IE=edge"/>
- <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"/>
- <title>Login Form Fragment</title>
- <link href="../../static/css/cas.css" rel="stylesheet" th:remove="tag" />
- </head>
- <body>
- <main role="main" class="container mt-3 mb-3">
- <div class="row">
- <div class="col-md">
- <!-- Login form template begins here -->
- <div th:fragment="loginform" class="card">
- <div class="card-header text-center">
- <h2 th:text="#{cas.login.pagetitle}">Login</h2>
- <span class="fa-stack fa-2x hidden-xs">
- <i class="fa fa-circle fa-stack-2x"></i>
- <i class="fa fa-lock fa-stack-1x fa-inverse"></i>
- </span>
- </div>
- <div class="card-body">
- <form method="post" id="fm1" th:object="${credential}" action="login">
- <div class="alert alert-danger" th:if="${#fields.hasErrors('*')}">
- <span th:each="err : ${#fields.errors('*')}" th:utext="${err}">Example error</span>
- </div>
- <h3 th:utext="#{screen.welcome.instructions}">Enter your Username and Password</h3>
- <section class="form-group">
- <label for="username" th:utext="#{screen.welcome.label.netid}">Username</label>
- <div th:if="${openIdLocalId}">
- <strong>
- <span th:utext="${openIdLocalId}"/>
- </strong>
- <input type="hidden"
- id="username"
- name="username"
- th:value="${openIdLocalId}"/>
- </div>
- <div th:unless="${openIdLocalId}">
- <input class="form-control required"
- id="username"
- size="25"
- tabindex="1"
- type="text"
- th:disabled="${guaEnabled}"
- th:field="*{username}"
- th:accesskey="#{screen.welcome.label.netid.accesskey}"
- autocomplete="off"/>
- </div>
- </section>
- <section class="form-group">
- <label for="password" th:utext="#{screen.welcome.label.password}">Password</label>
- <div>
- <input class="form-control required"
- type="password"
- id="password"
- size="25"
- tabindex="2"
- th:accesskey="#{screen.welcome.label.password.accesskey}"
- th:field="*{password}"
- autocomplete="off"/>
- <span id="capslock-on" style="display:none;">
- <p>
- <i class="fa fa-exclamation-circle"></i>
- <span th:utext="#{screen.capslock.on}"/>
- </p>
- </span>
- </div>
- </section>
- <section class="form-check" th:if="${passwordManagementEnabled && param.doChangePassword != null}">
- <p>
- <input type="checkbox" name="doChangePassword" id="doChangePassword"
- value="true" th:checked="${param.doChangePassword != null}" tabindex="4"/>
- <label for="doChangePassword" th:text="#{screen.button.changePassword}">Change Password</label>
- </p>
- </section>
- <section class="form-check" th:if="${rememberMeAuthenticationEnabled}">
- <p>
- <input type="checkbox" name="rememberMe" id="rememberMe" value="true" tabindex="5"/>
- <label for="rememberMe" th:text="#{screen.rememberme.checkbox.title}">Remember Me</label>
- </p>
- </section>
- <section class="row" th:if="${recaptchaSiteKey != null AND recaptchaInvisible != null AND recaptchaSiteKey != null AND !recaptchaInvisible}">
- <div class="g-recaptcha" th:attr="data-sitekey=${recaptchaSiteKey}"/>
- </section>
- <input type="hidden" name="execution" th:value="${flowExecutionKey}"/>
- <input type="hidden" name="_eventId" value="submit"/>
- <input type="hidden" name="geolocation"/>
- <input class="btn btn-block btn-submit"
- th:unless="${recaptchaSiteKey != null AND recaptchaInvisible != null AND recaptchaSiteKey != null AND recaptchaInvisible}"
- name="submit"
- accesskey="l"
- th:value="#{screen.welcome.button.login}"
- tabindex="6"
- type="submit"
- value="Login3"
- />
- <button class="btn btn-block btn-submit g-recaptcha"
- th:if="${recaptchaSiteKey != null AND recaptchaInvisible != null AND recaptchaSiteKey != null AND recaptchaInvisible}"
- th:attr="data-sitekey=${recaptchaSiteKey}, data-badge=${recaptchaPosition}"
- data-callback="onSubmit"
- name="submitBtn"
- accesskey="l"
- th:text="#{screen.welcome.button.login}"
- tabindex="6"
- />
- </form>
- <form th:if="${passwordManagementEnabled}" method="post" id="passwordManagementForm">
- <input type="hidden" name="execution" th:value="${flowExecutionKey}"/>
- <input type="hidden" name="_eventId" value="resetPassword"/>
- <span class="fa fa-unlock"></span>
- <a th:utext="#{screen.pm.button.resetPassword}" href="javascript:void(0)" onclick="$('#passwordManagementForm').submit();"/>
- <p/>
- </form>
- <div th:unless="${passwordManagementEnabled}">
- <span class="fa fa-question-circle"></span>
- <span th:utext="#{screen.pm.button.forgotpwd}">Forgot your password?</span>
- <p/>
- </div>
- <script type="text/javascript" th:inline="javascript">
- var i = [[#{screen.welcome.button.loginwip}]]
- $( document ).ready(function() {
- $("#fm1").submit(function () {
- $(":submit").attr("disabled", true);
- $(":submit").attr("value", i);
- console.log(i);
- return true;
- });
- });
- </script>
- <div th:replace="fragments/loginsidebar :: loginsidebar" />
- </div>
- </div>
- </div>
- </div>
- </main>
- </body>
- </html>
|