OSDN Git Service

implement /newuser/password API
[newslash/newslash.git] / src / newslash_web / templates / login / activation.html.tt2
1 [% WRAPPER common/layout %]
2
3 <script type="text/x-template" id="message">
4   <div class="alert-error"      v-if="target == 'PASSWORD_NOT_MATCH'">パスワードが一致しません</div>
5   <div class="alert-error" v-else-if="target == 'INVALID_PASSWORD'">不適切なパスワードです</div>
6   <div class="alert-error" v-else-if="target == 'BLANK_PASSWORD'">パスワードを入力してください</div>
7   <div class="alert-error" v-else-if="target == 'SERVER_ERROR'">サーバーエラーが発生しました。</div>
8   <div class="alert-error" v-else-if="target != ''">サーバーエラーが発生しました。</div>
9 </script>
10
11 [%- IF activation_succeed -%]
12 <div class="main-contents" id="update-password">
13   <div class="panel">
14     <h3>パスワード設定</h3>
15     <form id="password-update-form" action="/my/activation" method="POST">
16       <input type="hidden" name="nickname" value="[% prefs.nickname %]" v-model="nickname">
17       <input type="hidden" name="token" value="[% prefs.token %]" v-model="token">
18       <div>
19         ユーザー「[% prefs.nickname %]」で使用するパスワードを入力してください。
20       </div>
21       <label>パスワード:
22         [%- IF prefs.password_error %]
23         <div class="alert-error">
24           [%- IF prefs.password_error == "PASSWORD_NOT_MATXH" -%]パスワードが一致しません。
25           [%- ELSE %]エラー[% END -%]
26         </div>
27         [%- END %]
28         <message :target="passwordError"></message>
29         <input id="password"  type="password" name="password" v-model="password"
30                :disabled="state != ''"
31                value="[% prefs.password %]"/>
32       </label>
33
34       <label>パスワード(再入力):
35         <input id="password2"  type="password" name="password2" v-model="password2"
36                :disabled="state != ''"
37                value="[% prefs.password2 %]"/>
38       </label>
39
40       <input class="btn btn-primary" :disabled="formError || state != ''" type="submit" @click.prevent.stop:="doPost" value="パスワードを設定する" />
41     </form>
42     <div class="alert-info" v-if="state == 'SUCCEED'">
43       パスワードを設定しました。<a href="/login">ログインページ</a>からこのパスワードでログインできます。
44     </div>
45   </div><!-- .panel -->
46 </div>
47
48 [% helpers.load_js("activation.js") %]
49 <script>
50   updatePassword.run({ el: '#update-password', token: '[% prefs.token %]', nickname: '[% prefs.nickname %]' });
51 </script>
52
53 [%- ELSE #activation_succeed -%]
54 <div class="main-contents" id="update-password">
55   <div class="panel">
56     <h3>認証エラー</h3>
57     [%- IF error == "TOKEN_EXPIRED" %]
58     <p class="alert-error">
59       認証期限が過ぎています。パスワード再設定ページから再度認証メールを送信してください。
60     </p>
61     [%- ELSIF error == "CANCEL_ACTIVATION" %]
62     <p class="alert-error">
63       パスワード設定リクエストをキャンセルしました。
64     </p>
65     [%- ELSE %]
66     <p class="alert-error">
67       認証に失敗しました。認証URLを確認してください。
68     </p>
69     [%- END %]
70   </div>
71 </div>
72
73 [%- END #activation_succeed -%]
74 [%- END #INCLUDE -%]