9 [%- INCLUDE 'common/flash.html' %]
 
  11 <form method="post" action="controller.pl" id="form">
 
  12   [% P.hidden_tag('id',       SELF.time_recording.id) %]
 
  13   [% L.hidden_tag('callback', FORM.callback) %]
 
  16    [%- IF SELF.use_duration %]
 
  18       <th align="right">[% 'Date' | $T8 %]</th>
 
  20         [% P.date_tag('time_recording.date_as_date', SELF.time_recording.date_as_date, "data-validate"="required", "data-title"=LxERP.t8('Date')) %]<br>
 
  24       <th align="right">[% 'Duration' | $T8 %]</th>
 
  26         [% P.input_tag('duration_h', SELF.time_recording.duration_as_hours   || '', size=4, class='numeric',
 
  27            "data-validate"="number", "data-title"=LxERP.t8('h'),   "placeholder"=LxERP.format_amount(0.00, 2)) %] [% 'h'   | $T8 %]<sup>(1)</sup>
 
  28         [% P.input_tag('duration_m', SELF.time_recording.duration_as_minutes || '', size=4, class='numeric',
 
  29            "data-validate"="number", "data-title"=LxERP.t8('min'), "placeholder"="0"                         ) %] [% 'min' | $T8 %]
 
  34       <th align="right">[% 'Start' | $T8 %]</th>
 
  36         [% P.date_tag('start_date',  SELF.start_date, "data-validate"="required", "data-title"=LxERP.t8('Start date'), onchange='kivi.TimeRecording.set_end_date()') %]
 
  37         [% P.input_tag('start_time', SELF.start_time, type="time", "data-validate"="required", "data-title"=LxERP.t8('Start time')) %]
 
  38         [% P.button_tag('kivi.TimeRecording.set_current_date_time("start")', LxERP.t8('now')) %]
 
  42       <th align="right">[% 'End' | $T8 %]</th>
 
  44         [% P.date_tag('end_date',  SELF.end_date) %]
 
  45         [% P.input_tag('end_time', SELF.end_time, type="time") %]
 
  46         [% P.button_tag('kivi.TimeRecording.set_current_date_time("end")', LxERP.t8('now')) %]
 
  52       <th align="right">[% 'Sales Order' | $T8 %]</th>
 
  53       <td>[% P.select_tag('time_recording.order_id', SELF.all_orders, default=SELF.time_recording.order_id, with_empty=1, style='width: 300px', onchange='kivi.TimeRecording.order_changed(this.value)') %]</td>
 
  56       <th align="right">[% 'Customer' | $T8 %]</th>
 
  57       <td>[% P.customer_vendor.picker('time_recording.customer_id', SELF.time_recording.customer_id, type='customer', style='width: 300px', "data-validate"="required", "data-title"=LxERP.t8('Customer')) %]</td>
 
  60       <th align="right">[% 'Project' | $T8 %]</th>
 
  61       <td>[% P.project.picker('time_recording.project_id', SELF.time_recording.project_id, description_style='both', style='width: 300px') %]</td>
 
  65       <th align="right">[% 'Article' | $T8 %]</th>
 
  66       <td>[% P.select_tag('time_recording.part_id', SELF.all_time_recording_articles, default=SELF.time_recording.part_id, with_empty=1, value_key='id', title_key='description', style='width: 300px') %]</td>
 
  69       <th align="right">[% 'Description' | $T8 %]</th>
 
  70       <td>[% L.textarea_tag('time_recording.description', SELF.time_recording.description, wrap="soft", style="width: 300px; height: 150px", class="texteditor", "data-validate"="required", "data-title"=LxERP.t8('Description')) %]</td>
 
  73       <th align="right">[% 'Mitarbeiter' | $T8 %]</th>
 
  75        [%- IF SELF.can_edit_all -%]
 
  76         [% L.select_tag('time_recording.staff_member_id', SELF.all_employees,
 
  77                         default    => SELF.time_recording.staff_member_id,
 
  78                         title_key  => 'safe_name',
 
  80                         style      => 'width: 300px') %]
 
  82         [% SELF.time_recording.staff_member.safe_name | html %]
 
  88   [%- IF SELF.use_duration %]
 
  91     [% 'Valid are integer values and floating point numbers, e.g. 4.75h = 4 hours and 45 minutes.' | $T8 %]
 
  97 <script type="text/javascript">
 
  99   [% FOREACH i = inputs_to_disable %]
 
 100     kivi.TimeRecording.inputs_to_disable.push("[% i %]");