JSlip  1.0
user_basic_info_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 $rlist = $ctrl->round;
11 $bid = $ctrl->bid;
12 
13 $name = $view->str($dat['name']);
14 $disp_name = $view->str($dat['disp_name']);
15 $term_year = $view->str($dat['term_year']);
16 $term_begin = $view->strDate($dat['term_begin']);
17 $term_end = $view->strDate($dat['term_end']);
18 $round = $view->str($dat['round']);
19 $calendar = $view->str($dat['calendar']);
20 ?>
21 <script type="text/javascript">
22 
23  var my = {
24 
25  errmsg: null,
26  ans: null,
27  next: null,
28  func: null,
29  act: null,
30  v_disp_name: null,
31  v_term_year: null,
32  v_term_begin: null,
33  v_term_end: null,
34  v_round: null,
35  v_calendar: null,
36  v_valid_flg: null,
37 
38  gotoNext: function(func, act) {
39  this.func.val(func);
40  this.act.val(act);
41  this.next.submit();
42  return false;
43  },
44 
45  check: function() {
46 
47  $.ajax({
48  url: '<?= $base ?>',
49  type: 'post',
50  async: false,
51  data: {
52  'func': 'UserBasicInfo',
53  'act': 'check',
54  'disp_name': this.v_disp_name.val(),
55  'term_year': this.v_term_year.val(),
56  'term_begin': this.v_term_begin.val(),
57  'term_end': this.v_term_end.val(),
58  'round': this.v_round.val(),
59  'calendar': this.v_calendar.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': 'UserBasicInfo',
97  'act': 'regist',
98  'bid': '<?= $bid ?>',
99  'disp_name': this.v_disp_name.val(),
100  'term_year': this.v_term_year.val(),
101  'term_begin': this.v_term_begin.val(),
102  'term_end': this.v_term_end.val(),
103  'round': this.v_round.val(),
104  'calendar': this.v_calendar.val(),
105  'eod': ''
106  }
107  })
108  .done((data) => {
109  eval("this.ans = " + data);
110  })
111  .fail((data) => {
112  this.ans = {"sts": "NG", "err": "ajax error"};
113  });
114 
115  if (this.ans.sts == 'NG') {
116  this.errmsg.html(this.ans.err);
117  return false;
118  }
119 
120  this.gotoNext('UserMenu', '');
121 
122  return false;
123  },
124 
125  init: function() {
126  this.errmsg = $('#errmsg');
127  this.next = $('#next');
128  this.func = $('#func');
129  this.act = $('#act');
130  this.v_disp_name = $('#v_disp_name');
131  this.v_term_year = $('#v_term_year');
132  this.v_term_begin = $('#v_term_begin');
133  this.v_term_end = $('#v_term_end');
134  this.v_round = $('#v_round');
135  this.v_calendar = $('#v_calendar');
136 
137  this.v_term_begin.datepicker();
138  this.v_term_end.datepicker();
139  this.v_term_begin.val('<?= $term_begin ?>');
140  this.v_term_end.val('<?= $term_end ?>');
141  this.v_round.val('<?= $round ?>');
142  this.v_calendar.val('<?= $calendar ?>');
143  }
144  }
145 
146  $(function(){
147  my.init();
148  });
149 
150 </script>
151 
152 <form method="post" name="next" id="next" action="<?= $base ?>">
153  <input type="hidden" name="func" id="func">
154  <input type="hidden" name="act" id="act">
155  <input type="hidden" name="bid" id="bid" value="<?= $bid ?>">
156 </form>
157 
158 <table id="my_header" width="100%">
159  <tr>
160  <td>
161  &nbsp;<a onclick="return my.gotoNext('UserMenu', '');">メニュー</a>
162  &nbsp;&gt;&nbsp;基本情報
163  </td>
164  <td style="text-align: right;">
165  <button type="button" class="my_magenta" style="width: 120px;" onclick="return my.gotoNext('Login', '');">ログアウト</button>
166  </td>
167  </tr>
168 </table>
169 
170 <div style="height: 5px;">&nbsp;</div>
171 
172 <table width="100%">
173  <tr>
174  <td align="center">
175  <table class="my_table" width="100%">
176  <tr>
177  <th class="my_border">基本情報</th>
178  </tr>
179  </table>
180 
181  <div style="height: 1px;">&nbsp;</div><hr>
182 
183  <table>
184  <tr>
185  <td align="center">
186  <table>
187  <tr>
188  <td style="padding: 8px;">
189  <button type="button" class="my_cyan" style="width: 100px;" onclick="return my.regist();">登録</button>
190  </td>
191  <td style="width: 80px;">&nbsp;</td>
192  <td>
193  <button type="button" class="my_magenta" style="width: 100px;" onclick="return my.gotoNext('UserMenu', '');">戻る</button>
194  </td>
195  </tr>
196  </table>
197  </td>
198  </tr>
199  </table>
200 
201  <div style="height: 1px;">&nbsp;</div><hr>
202 
203  <div style="height: 8px;">&nbsp;</div>
204 
205  <table class="my_table">
206  <tr>
207  <td colspan="2"><div id="errmsg" class="my_red"></div></td>
208  </tr>
209  <tr>
210  <td colspan="2">&nbsp;</td>
211  </tr>
212  <tr>
213  <th class="my_border" style="width: 100px; text-align: right;">
214  <div class="my_required">名称</div>
215  </th>
216  <td class="my_border">
217  <?= $name ?>
218  </td>
219  </tr>
220  <tr>
221  <th class="my_border" style="width: 100px; text-align: right;">
222  <div class="my_required">表示名称</div>
223  </th>
224  <td class="my_border">
225  <input style="width: 400px; text-align: left;" maxlength="80" type="text" id="v_disp_name" value="<?= $disp_name ?>">
226  </td>
227  </tr>
228  <tr>
229  <th class="my_border" style="text-align: right;">
230  <div class="my_required">年度</div>
231  </th>
232  <td class="my_border">
233  <input style="width: 50px; text-align: right;" maxlength="4" type="text" id="v_term_year" value="<?= $term_year ?>">
234  </td>
235  </tr>
236  <tr>
237  <th class="my_border" style="text-align: right;">
238  <div class="my_required">期首</div>
239  </th>
240  <td class="my_border">
241  <input type="text" id="v_term_begin">
242  </td>
243  </tr>
244  <tr>
245  <th class="my_border" style="text-align: right;">
246  <div class="my_required">期末</div>
247  </th>
248  <td class="my_border">
249  <input type="text" id="v_term_end">
250  </td>
251  </tr>
252  <tr>
253  <th class="my_border" style="text-align: right;">
254  <div class="my_required">まるめ</div>
255  </th>
256  <td class="my_border">
257  <select id="v_round">
258 <?php
259 foreach ($rlist as $d) {
260  echo '<option value="' . $view->str($d['c0']) . '">' . $view->str($d['name']) . '</option>';
261 }
262 ?>
263  </select>
264  </td>
265  </tr>
266  <tr>
267  <th class="my_border" style="text-align: right;">
268  <div class="my_required">歴</div>
269  </th>
270  <td class="my_border">
271  <select id="v_calendar"><?php echo $view->calendarOption(); ?></select>
272  </td>
273  </tr>
274  </table>
275  </td>
276  </tr>
277 </table>