JSlip  1.0
account_edit.tmplt
Go to the documentation of this file.
1 <?php
2 /**
3  * @link https://datagram.co.jp/source/bksj for the canonical source repository
4  * @copyright Copyright (c) 2006-2019 Datagram Ltd. (https://datagram.co.jp)
5  * @license https://datagram.co.jp/source/bksj/license.txt
6  */
7 
8 $view = $ctrl->view;
9 $dat = $ctrl->dat;
10 
11 $aid = $view->str($dat['aid']);
12 $mid = $view->str($dat['mid']);
13 $name = $view->str($dat['name']);
14 $login_id = $view->str($dat['login_id']);
15 $role = $view->str($dat['role']);
16 $email = $view->str($dat['email']);
17 $tel = $view->str($dat['tel']);
18 ?>
19 <script type="text/javascript">
20 
21  var my = {
22 
23  errmsg: null,
24  ans: null,
25  next: null,
26  func: null,
27  act: null,
28  v_name: null,
29  v_login_id: null,
30  v_passwd0: null,
31  v_passwd1: null,
32  v_role: null,
33  v_email: null,
34  v_tel: null,
35 
36  gotoNext: function(func, act) {
37  this.func.val(func);
38  this.act.val(act);
39  this.next.submit();
40  return false;
41  },
42 
43  check: function() {
44 
45  $.ajax({
46  url: '<?= $base ?>',
47  type: 'post',
48  async: false,
49  data: {
50  'func': 'Account',
51  'act': 'check',
52  'insert': 0,
53  'name': this.v_name.val(),
54  'role': this.v_role.val(),
55  'email': this.v_email.val(),
56  'tel': this.v_tel.val(),
57  'login_id': this.v_login_id.val(),
58  'passwd0': this.v_passwd0.val(),
59  'passwd1': this.v_passwd1.val(),
60  'eod': ''
61  }
62  })
63  .done((data) => {
64  eval("this.ans = " + data);
65  })
66  .fail((data) => {
67  this.ans = {"sts": "NG", "err": "ajax error"};
68  });
69 
70  return this.ans.sts;
71  },
72 
73  regist: function() {
74 
75  var msg = '';
76 
77  if (!confirm("登録しますか?")) {
78  return false;
79  }
80 
81  if (this.check() == 'NG') {
82 
83  for (var i in this.ans.err) {
84  msg += this.ans.err[i] + '<br>';
85  }
86 
87  this.errmsg.html(msg);
88  return false;
89  }
90 
91  $.ajax({
92  url: '<?= $base ?>',
93  type: 'post',
94  async: false,
95  data: {
96  'func': 'Account',
97  'act': 'regist',
98  'aid': '<?= $aid ?>',
99  'mid': '<?= $mid ?>',
100  'insert': 0,
101  'name': this.v_name.val(),
102  'role': this.v_role.val(),
103  'email': this.v_email.val(),
104  'tel': this.v_tel.val(),
105  'login_id': this.v_login_id.val(),
106  'passwd0': this.v_passwd0.val(),
107  'passwd1': this.v_passwd1.val(),
108  'eod': ''
109  }
110  })
111  .done((data) => {
112  eval("this.ans = " + data);
113  })
114  .fail((data) => {
115  this.ans = {"sts": "NG", "err": "ajax error"};
116  });
117 
118  if (this.ans.sts == 'NG') {
119  this.errmsg.html(this.ans.err);
120  return false;
121  }
122 
123  this.gotoNext('Account', 'remember');
124 
125  return false;
126  },
127 
128  init: function() {
129  this.errmsg = $('#errmsg');
130  this.next = $('#next');
131  this.func = $('#func');
132  this.act = $('#act');
133  this.v_name = $('#v_name');
134  this.v_login_id = $('#v_login_id');
135  this.v_passwd0 = $('#v_passwd0');
136  this.v_passwd1 = $('#v_passwd1');
137  this.v_role = $('#v_role');
138  this.v_email = $('#v_email');
139  this.v_tel = $('#v_tel');
140  }
141  }
142 
143  $(function(){
144  my.init();
145  });
146 
147 </script>
148 
149 <form method="post" name="next" id="next" action="<?= $base ?>">
150  <input type="hidden" name="func" id="func">
151  <input type="hidden" name="act" id="act">
152 </form>
153 
154 <table id="my_header" width="100%">
155  <tr>
156  <td>
157  &nbsp;<a onclick="return my.gotoNext('RootMenu', '');">root用メニュー</a>
158  &nbsp;&gt;&nbsp;<a onclick="return my.gotoNext('Account', 'remember');">アカウント</a>
159  &nbsp;&gt;&nbsp;編集
160  </td>
161  <td style="text-align: right;">
162  <button type="button" class="my_magenta" style="width: 120px;" onclick="return my.gotoNext('Login', '');">ログアウト</button>
163  </td>
164  </tr>
165 </table>
166 
167 <div style="height: 5px;">&nbsp;</div>
168 
169 <table width="100%">
170  <tr>
171  <td align="center">
172  <table class="my_table" width="100%">
173  <tr>
174  <th class="my_border">アカウント・編集</th>
175  </tr>
176  </table>
177 
178  <div style="height: 1px;">&nbsp;</div><hr>
179 
180  <table>
181  <tr>
182  <td align="center">
183  <table>
184  <tr>
185  <td style="padding: 8px;">
186  <button type="button" class="my_cyan" style="width: 100px;" onclick="return my.regist();">登録</button>
187  </td>
188  <td style="width: 80px;">&nbsp;</td>
189  <td>
190  <button type="button" class="my_magenta" style="width: 100px;" onclick="return my.gotoNext('Account', 'remember');">戻る</button>
191  </td>
192  </tr>
193  </table>
194  </td>
195  </tr>
196  </table>
197 
198  <div style="height: 1px;">&nbsp;</div><hr>
199 
200  <div style="height: 8px;">&nbsp;</div>
201 
202  <table class="my_table">
203  <tr>
204  <td colspan="2"><div id="errmsg" class="my_red"></div></td>
205  </tr>
206  <tr>
207  <td colspan="2">・パスワード確認が空白ですとパスワードは更新されません。</td>
208  </tr>
209  <tr>
210  <th class="my_border" style="width: 100px; text-align: right;">
211  メンバー名
212  </th>
213  <td class="my_border">
214  <input style="width: 400px; text-align: left;" maxlength="80" type="text" id="v_name" value="<?= $name ?>">
215  </td>
216  </tr>
217  <tr>
218  <th class="my_border" style="width: 100px; text-align: right;">
219  アカウント
220  </th>
221  <td class="my_border">
222  <input style="width: 400px; text-align: left;" maxlength="80" type="text" id="v_login_id" value="<?= $login_id ?>">
223  </td>
224  </tr>
225  <tr>
226  <th class="my_border" style="width: 100px; text-align: right;">
227  パスワード<br>パスワード確認
228  </th>
229  <td class="my_border">
230  <input style="width: 400px; text-align: left;" maxlength="80" type="password" id="v_passwd0" value="">
231  <br>
232  <input style="width: 400px; text-align: left;" maxlength="80" type="password" id="v_passwd1" value="">
233  </td>
234  </tr>
235  <tr>
236  <th class="my_border" style="width: 100px; text-align: right;">
237  ロール
238  </th>
239  <td class="my_border">
240  <select id="v_role">
241 <?php
242 foreach (ROLE as $r) {
243  $slct = ($r == $role) ? ' selected' : '';
244  echo '<option value="' . $r . '"' . $slct . '>' . $r . '</option>' . "\n";
245 }
246 ?>
247  </select>
248  </td>
249  </tr>
250  <tr>
251  <th class="my_border" style="width: 100px; text-align: right;">
252  電子メール
253  </th>
254  <td class="my_border">
255  <input style="width: 400px; text-align: left;" maxlength="80" type="text" id="v_email" value="<?= $email ?>">
256  </td>
257  </tr>
258  <tr>
259  <th class="my_border" style="width: 100px; text-align: right;">
260  電話番号
261  </th>
262  <td class="my_border">
263  <input style="width: 400px; text-align: left;" maxlength="80" type="text" id="v_tel" value="<?= $tel ?>">
264  </td>
265  </tr>
266  </table>
267  </td>
268  </tr>
269 </table>