invited.html 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111
  1. {% extends 'layout-growi/base/layout.html' %}
  2. {% block html_title %}Registration · {% endblock %}
  3. {% block content_main %}
  4. <h1 class="login-page">
  5. {% if config.crowi['app:title'] == 'Crowi' %}
  6. <img src="/images/logo/135x32.png" alt="Crowi">
  7. {% else %}
  8. {{ config.crowi['app:title'] }}<br>
  9. <img src="/images/logo/100x11_w.png" alt="powered by Crowi">
  10. {% endif %}
  11. </h1>
  12. <div class="login-dialog-container col-md-5">
  13. <div class="login-dialog" id="login-dialog">
  14. <div class="login-dialog-inner front">
  15. <h2>ユーザー情報入力</h2>
  16. <p>
  17. ようこそ!<br>
  18. はじめに、あなたのことを教えて下さい。
  19. </p>
  20. <div id="login-form-errors">
  21. {% set message = req.flash('warningMessage') %}
  22. {% if message.length %}
  23. <div class="alert alert-danger">
  24. {{ message }}
  25. </div>
  26. {% endif %}
  27. {% if req.form.errors.length > 0 %}
  28. <div class="alert alert-danger">
  29. <ul>
  30. {% for error in req.form.errors %}
  31. <li>{{ error }}</li>
  32. {% endfor %}
  33. </ul>
  34. </div>
  35. {% endif %}
  36. </div>
  37. <form role="form" id="invited-form" action="/login/activateInvited" method="post">
  38. <label>メールアドレス</label>
  39. <div class="input-group">
  40. <span class="input-group-addon"><i class="fa fa-envelope"></i></span>
  41. <input type="text" class="form-control" disabled value="{{ user.email }}">
  42. </div>
  43. <p class="help-block">
  44. このメールアドレスで招待を受け取っています。
  45. </p>
  46. <label>ユーザーID</label>
  47. <div class="input-group" id="input-group-username">
  48. <span class="input-group-addon"><strong>@</strong></span>
  49. <input type="text" class="form-control" placeholder="記入例: taroyama" name="invitedForm[username]" value="{{ req.body.invitedForm.username }}" required>
  50. </div>
  51. <p class="help-block">
  52. <span id="help-block-username" class="text-danger"></span>
  53. ユーザーIDは、ユーザーページのURLなどに利用されます。半角英数字と一部の記号のみ利用できます。
  54. </p>
  55. <label>名前</label>
  56. <div class="input-group">
  57. <span class="input-group-addon"><i class="fa fa-user"></i></span>
  58. <input type="text" class="form-control" placeholder="記入例: 山田 太郎" name="invitedForm[name]" value="{{ req.body.invitedForm.name }}" required>
  59. </div>
  60. <label>パスワード</label>
  61. <div class="input-group">
  62. <span class="input-group-addon"><i class="fa fa-key"></i></span>
  63. <input type="password" class="form-control" placeholder="Password" name="invitedForm[password]" required>
  64. </div>
  65. <p class="help-block">
  66. 現在、仮パスワードでログインしています。新しいパスワードを決定してください。<br>
  67. パスワードは6文字以上の半角英数字または記号
  68. </p>
  69. <input type="hidden" name="_csrf" value="{{ csrf() }}">
  70. <input type="submit" class="btn btn-primary btn-lg btn-block" value="登録を完了">
  71. </form>
  72. <hr>
  73. </div>
  74. </div>
  75. <script>
  76. $(function() {
  77. $('#invited-form input[name="invitedForm[username]"]').change(function(e) {
  78. var username = $(this).val();
  79. $('#input-group-username').removeClass('has-error');
  80. $('#help-block-username').html("");
  81. $.getJSON('/_api/check_username', {username: username}, function(json) {
  82. if (!json.valid) {
  83. $('#help-block-username').html('<i class="fa fa-warning"></i>このユーザーIDは利用できません。<br>');
  84. $('#input-group-username').addClass('has-error');
  85. }
  86. });
  87. });
  88. });
  89. </script>
  90. </div>
  91. {% endblock %}