edit.html.php 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116
  1. <?php
  2. /**
  3. * The edit view file of lieu module of Ranzhi.
  4. *
  5. * @copyright Copyright 2009-2018 青岛易软天创网络科技有限公司(QingDao Nature Easy Soft Network Technology Co,LTD, www.cnezsoft.com)
  6. * @license ZPL (http://zpl.pub/page/zplv12.html)
  7. * @author Tingting Dai <daitingting@xirangit.com>
  8. * @package lieu
  9. * @version $Id$
  10. * @link http://www.ranzhi.org
  11. */
  12. ?>
  13. <?php include '../../common/view/header.modal.html.php';?>
  14. <?php include $app->getModuleRoot() . 'common/view/datepicker.html.php';?>
  15. <?php include $app->getModuleRoot() . 'common/view/chosen.html.php';?>
  16. <?php js::set('signIn', $config->attend->signInLimit)?>
  17. <?php js::set('signOut', $config->attend->signOutLimit)?>
  18. <?php js::set('workingHours', $config->attend->workingHours)?>
  19. <form id='ajaxForm' method='post' action="<?php echo $this->createLink('lieu', 'edit', "id=$lieu->id")?>">
  20. <table class='table table-form table-condensed'>
  21. <tr>
  22. <th class='w-60px'><?php echo $lang->lieu->begin?></th>
  23. <td>
  24. <div class='input-group'>
  25. <span class='input-group-addon'><?php echo $lang->lieu->date;?></span>
  26. <?php echo html::input('begin', $lieu->begin, "class='form-control form-date date-picker-down'")?>
  27. <span class='input-group-addon fix-border'><?php echo $lang->lieu->time;?></span>
  28. <?php echo html::input('start', $lieu->start, "class='form-control form-time date-picker-down'")?>
  29. </div>
  30. </td>
  31. <td></td>
  32. </tr>
  33. <tr>
  34. <th><?php echo $lang->lieu->end?></th>
  35. <td>
  36. <div class='input-group'>
  37. <span class='input-group-addon'><?php echo $lang->lieu->date;?></span>
  38. <?php echo html::input('end', $lieu->end, "class='form-control form-date date-picker-down'")?>
  39. <span class='input-group-addon fix-border'><?php echo $lang->lieu->time;?></span>
  40. <?php echo html::input('finish', $lieu->finish, "class='form-control form-time date-picker-down'")?>
  41. </div>
  42. </td>
  43. <td></td>
  44. </tr>
  45. <tr>
  46. <th><?php echo $lang->lieu->hours;?></th>
  47. <td><?php echo html::input('hours', $lieu->hours, "class='form-control'")?></td>
  48. <td></td>
  49. </tr>
  50. <tr>
  51. <th><?php echo $lang->lieu->overtime;?></th>
  52. <td><?php echo html::select('overtime[]', $overtimes, $lieu->overtime, "class='form-control chosen' multiple")?></td>
  53. <td></td>
  54. </tr>
  55. <tr>
  56. <th><?php echo $lang->lieu->trip;?></th>
  57. <td><?php echo html::select('trip[]', $trips, $lieu->trip, "class='form-control chosen' multiple")?></td>
  58. <td></td>
  59. </tr>
  60. <tr>
  61. <th><?php echo $lang->lieu->desc;?></th>
  62. <td><?php echo html::textarea('desc', $lieu->desc, "class='form-control'")?></td>
  63. <td></td>
  64. </tr>
  65. <tr>
  66. <th></th>
  67. <td><?php echo baseHTML::submitButton();?></td>
  68. <td></td>
  69. </tr>
  70. </table>
  71. </form>
  72. <script>
  73. $(document).ready(function()
  74. {
  75. $('#begin, #start, #end, #finish').change(function()
  76. {
  77. var begin = $('#begin').val();
  78. var end = $('#end').val();
  79. var start = $('#start').val();
  80. var finish = $('#finish').val();
  81. if(!begin || !end || !start || !finish) return false;
  82. begin = begin.replace(/-/g, '/');
  83. end = end.replace(/-/g, '/');
  84. var hours = 0;
  85. var beginTime = Date.parse(new Date(begin + ' ' + start));
  86. var endTime = Date.parse(new Date(end + ' ' + finish));
  87. if(beginTime > endTime) return false;
  88. if(begin == end)
  89. {
  90. hours = Math.round((endTime - beginTime)/(3600*1000)*100)/100;
  91. if(hours > workingHours) hours = parseFloat(workingHours);
  92. }
  93. else
  94. {
  95. var signOutTime = Date.parse(new Date(begin + ' ' + signOut));
  96. var signInTime = Date.parse(new Date(end + ' ' + signIn));
  97. var hoursStart = 0;
  98. var hoursEnd = 0;
  99. var hoursContent = 0;
  100. if(beginTime < signOutTime) hoursStart = Math.round((signOutTime - beginTime)/(3600*1000)*100)/100;
  101. if(endTime > signInTime) hoursEnd = Math.round((endTime - signInTime)/(3600*1000)*100)/100;
  102. if(workingHours && hoursStart > workingHours) hoursStart = parseFloat(workingHours);
  103. if(workingHours && hoursEnd > workingHours) hoursEnd = parseFloat(workingHours);
  104. var days = Math.floor((Date.parse(new Date(end)) - Date.parse(new Date(begin)))/(24*3600*1000));
  105. if(days > 1) hoursContent = (days - 1) * workingHours;
  106. hours = hoursStart + hoursEnd + hoursContent;
  107. }
  108. $('#hours').val(hours);
  109. });
  110. })
  111. </script>
  112. <?php include '../../common/view/footer.modal.html.php';?>