login.blade.php 3.1KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. @include('admin.uc.head')
  5. </head>
  6. <body class="signin">
  7. @if ($errors->any())
  8. <div class="alert alert-danger">
  9. <ul>
  10. @foreach ($errors->all() as $error)
  11. <li>{{ $error }}</li>
  12. @endforeach
  13. </ul>
  14. </div>
  15. @endif
  16. <section>
  17. <div class="signinpanel">
  18. <div class="row">
  19. <div class="col-md-3"></div>
  20. <div class="col-md-6">
  21. <!-- 登入表單段 -->
  22. <form id="loginForm" method="post" action="login">
  23. @csrf
  24. <h4 class="nomargin">{{ config('app.name') }}</h4>
  25. <input id="qusername" name="email" placeholder="Username" class="form-control uname" maxlength="100" type="text" />
  26. <label class="error" for="email"></label>
  27. <input id="qpassword" name="password" placeholder="Password" class="form-control pword" maxlength="20" type="password" />
  28. <label class="error" for="password"></label>
  29. <br>
  30. <div>
  31. <div id="recaptcha" class="g-recaptcha" data-sitekey="6LfkEvohAAAAAIrMkOF5y9EHYQ9u14p3us0rTimb"></div> <!--// reCaptcha apiKey-->
  32. </div>
  33. <input id="btnSignIn" name="btnSignIn" value="Login" class="btn btn-block btn-success" type="submit" onclick="submitForm();" />
  34. </form>
  35. </div>
  36. <div class="col-md-3"></div>
  37. </div>
  38. <div class="signup-footer">
  39. <div class="pull-left">
  40. <?php echo env('COPY_RIGHT')?>
  41. </div>
  42. <div class="pull-right">
  43. <?php echo env('CREATOR')?>
  44. </div>
  45. </div>
  46. </div>
  47. </section>
  48. @include('admin.uc.foot')
  49. <!-- 表單JS -->
  50. <script src="https://www.google.com/recaptcha/api.js" async defer></script>
  51. <script>
  52. //逐個偵錯
  53. $(function () {
  54. //初始化需要偵錯的表格
  55. $('#loginForm').validate();
  56. //正規表達驗證初始化
  57. $.validator.addMethod(
  58. "regex",
  59. function (value, element, regexp) {
  60. var re = new RegExp(regexp);
  61. return this.optional(element) || re.test(value);
  62. }
  63. );
  64. //各欄位
  65. $('#qusername').rules("add", {
  66. required: true,
  67. email: true,
  68. minlength: 1,
  69. maxlength: 100,
  70. messages: {
  71. required: "Username length must between 1-100",
  72. email: "Username must be an email address",
  73. minlength: "Username length must between 1-100",
  74. maxlength: "Username length must between 1-100"
  75. }
  76. });
  77. $('#qpassword').rules("add", {
  78. required: true,
  79. minlength: 1,
  80. maxlength: 20,
  81. messages: {
  82. required: "Password length must between 1-20",
  83. minlength: "Password length must between 1-20",
  84. maxlength: "Password length must between 1-20"
  85. }
  86. });
  87. });
  88. //提交與取消按鈕
  89. function submitForm() {
  90. if (!!($("#loginForm").valid()) === false) {
  91. return false;
  92. } else {
  93. $(document).ready(function() {
  94. $.blockUI({ css: {
  95. border: 'none',
  96. padding: '15px',
  97. backgroundColor: '#000',
  98. '-webkit-border-radius': '10px',
  99. '-moz-border-radius': '10px',
  100. opacity: .5,
  101. color: '#fff'
  102. }});
  103. });
  104. }
  105. }
  106. function cancelValidate() {
  107. $("#loginForm").validate().cancelSubmit = true;
  108. }
  109. </script>
  110. </body>
  111. </html>