js.blade.php 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168
  1. <script src="http://code.highcharts.com/highcharts.js"></script>
  2. <script src="http://code.highcharts.com/maps/modules/map.js"></script>
  3. <script src="http://code.highcharts.com/maps/modules/exporting.js"></script>
  4. <script src="http://code.highcharts.com/mapdata/countries/us/us-all.js"></script>
  5. <script type="text/javascript" src="https://cdn.datatables.net/1.10.20/js/jquery.dataTables.min.js"></script>
  6. <?php
  7. $end = explode('/', url()->current());
  8. $end = end($end);
  9. ?>
  10. <script type="text/javascript">
  11. @foreach($tahunProgramDetail as $row)
  12. var j = jQuery.noConflict();
  13. function trimNull(data)
  14. {
  15. if (data != null) {
  16. return data;
  17. }
  18. return '';
  19. }
  20. var table = j('#server-side-{{$row->id}}').DataTable({
  21. "order": [[ 0, "DESC" ]],
  22. "lengthChange": true,
  23. orderCellsTop: true,
  24. fixedHeader: true,
  25. "processing": true,
  26. "serverSide": true,
  27. "ajax": {
  28. "type": "GET",
  29. "url": "{{ url('program/metadata_program/list/'.$row->id) }}{{ $end == 'filter-data' ? '/filter-data' : null }}",
  30. "data": function (d) {
  31. console.log(d);
  32. return j.extend({}, d, {
  33. "type": "WEB",
  34. <?php
  35. if (!empty($_GET['dari'])) {
  36. ?>
  37. "dari": "{{ $_GET['dari'] }}",
  38. <?php
  39. }
  40. ?>
  41. <?php
  42. if (!empty($_GET['sampai'])) {
  43. ?>
  44. "sampai": "{{ $_GET['sampai'] }}",
  45. <?php
  46. }
  47. ?>
  48. <?php
  49. if (!empty($_GET['upt'])) {
  50. ?>
  51. "upt": "{{ $_GET['upt'] }}",
  52. <?php
  53. }
  54. ?>
  55. });
  56. },
  57. },
  58. "columns": [
  59. {
  60. "data":"periode",
  61. },
  62. @if(!empty($row->templateProgramDetail->itemProgram))
  63. @foreach($row->templateProgramDetail->itemProgram->sortBy('order_by') as $item)
  64. {
  65. "data": "{{$item->kolom}}",
  66. },
  67. @endforeach
  68. @endif
  69. {
  70. "data":"upt",
  71. },
  72. {
  73. "data": null,
  74. "render": function (data, type, row, meta) {
  75. var attr = '';
  76. @if(!empty($row->templateProgramDetail->itemProgram))
  77. @foreach($row->templateProgramDetail->itemProgram->sortBy('order_by') as $opt)
  78. if("{{$opt->tipe_kolom}}"!="file"){
  79. attr += 'data-{{$opt->kolom}}="'+data['{{$opt->kolom}}']+'" ';
  80. }
  81. @endforeach
  82. //for periode & target
  83. attr += 'data-id-template-program-detail="{{$row->id_template_program_detail}}" ';
  84. attr += 'data-id-tahun-program-detail="{{$row->id}}" ';
  85. attr += 'data-periode="'+data['periode']+'" ';
  86. attr += 'data-target-periode="'+data['targetPeriode']+'" ';
  87. @endif
  88. return '<a href="#" data-toggle="modal" id="btn-edit-'+data.id+'" data-target="#editModal{{$row->id_template_program_detail}}" class="btn btn-warning btn-sm"' +
  89. 'onclick="edit_data(' + trimNull(data.id) + ')"'+
  90. attr+
  91. '><i class="fa fa-edit"></i></a>'+
  92. '<a class="btn btn-danger btn-sm" '+
  93. 'id="getDelete"' +
  94. 'data-toggle="modal"' +
  95. 'data-target="#deleteModal"' +
  96. 'data-id="' + trimNull(data.id) + '"' +
  97. 'onclick="delete_data(' + trimNull(data.id) + ')"'+
  98. '><i class="fa fa-trash"></i>' +
  99. '</a>';
  100. }
  101. },
  102. ],
  103. "ordering": true
  104. });
  105. @endforeach
  106. </script>
  107. <script type="text/javascript">
  108. function delete_data(id){
  109. $('#form-delete').attr('action', "{{url('program/metadata_program')}}/"+id+"/delete");
  110. }
  111. function edit_data(id){
  112. var id_template_program_detail = $('#btn-edit-'+id).attr('data-id-template-program-detail');
  113. $('#edit_id_template_program_detail_'+id_template_program_detail).val(id_template_program_detail);
  114. var id_tahun_program_detail = $('#btn-edit-'+id).attr('data-id-tahun-program-detail');
  115. $('#edit_id_tahun_program_detail_'+id_template_program_detail).val(id_tahun_program_detail);
  116. @foreach($template as $key => $row_template)
  117. @foreach($row_template->itemProgram->sortBy('order_by') as $row)
  118. var value = $('#btn-edit-'+id).attr('data-{{$row->kolom}}');
  119. if(value!='-'){
  120. $('#edit_{{$row->kolom}}_'+id_template_program_detail).val(value);
  121. }
  122. @endforeach
  123. @endforeach
  124. //periode
  125. var value = $('#btn-edit-'+id).attr('data-periode');
  126. $('#edit_periode').text();
  127. $('#edit_periode').text(value);
  128. //target
  129. var value = $('#btn-edit-'+id).attr('data-target-periode');
  130. $('#edit_target_periode').text();
  131. $('#edit_target_periode').text(value);
  132. $('#form-edit-'+id_template_program_detail).attr('action', "{{url('program/metadata_program')}}/"+id+"/update");
  133. }
  134. </script>
  135. @include('dev.helpers.jquery')
  136. <script src="{{asset('templates/assets/js/jquery-confirm.js') }}"></script>
  137. <script>
  138. $('input[type=number]').on('input', function() {
  139. $(this).val($(this).val().replace(/[^a-z0-9]/gi, ''));
  140. });
  141. $('.fileUpload').on("change",function () {
  142. var fileExtension = ['pdf','rar','jpg','jpeg','png','zip','xls','xlsx','doc','docx'];
  143. if (($.inArray($(this).val().split('.').pop().toLowerCase(), fileExtension) == -1) || (this.files[0].size > 50000000)) {
  144. alert("*Maksimal upload file 20 MB");
  145. $(this).val('');
  146. }
  147. })
  148. </script>