js.blade2.php 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160
  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. }
  93. },
  94. ],
  95. "ordering": true
  96. });
  97. @endforeach
  98. </script>
  99. <script type="text/javascript">
  100. function delete_data(id){
  101. $('#form-delete').attr('action', "{{url('program/metadata_program')}}/"+id+"/delete");
  102. }
  103. function edit_data(id){
  104. var id_template_program_detail = $('#btn-edit-'+id).attr('data-id-template-program-detail');
  105. $('#edit_id_template_program_detail_'+id_template_program_detail).val(id_template_program_detail);
  106. var id_tahun_program_detail = $('#btn-edit-'+id).attr('data-id-tahun-program-detail');
  107. $('#edit_id_tahun_program_detail_'+id_template_program_detail).val(id_tahun_program_detail);
  108. @foreach($template as $key => $row_template)
  109. @foreach($row_template->itemProgram->sortBy('order_by') as $row)
  110. var value = $('#btn-edit-'+id).attr('data-{{$row->kolom}}');
  111. if(value!='-'){
  112. $('#edit_{{$row->kolom}}_'+id_template_program_detail).val(value);
  113. }
  114. @endforeach
  115. @endforeach
  116. //periode
  117. var value = $('#btn-edit-'+id).attr('data-periode');
  118. $('#edit_periode').text();
  119. $('#edit_periode').text(value);
  120. //target
  121. var value = $('#btn-edit-'+id).attr('data-target-periode');
  122. $('#edit_target_periode').text();
  123. $('#edit_target_periode').text(value);
  124. $('#form-edit-'+id_template_program_detail).attr('action', "{{url('program/metadata_program')}}/"+id+"/update");
  125. }
  126. </script>
  127. @include('dev.helpers.jquery')
  128. <script src="{{asset('templates/assets/js/jquery-confirm.js') }}"></script>
  129. <script>
  130. $('input[type=number]').on('input', function() {
  131. $(this).val($(this).val().replace(/[^a-z0-9]/gi, ''));
  132. });
  133. $('.fileUpload').on("change",function () {
  134. var fileExtension = ['pdf'];
  135. if (($.inArray($(this).val().split('.').pop().toLowerCase(), fileExtension) == -1) || (this.files[0].size > 5000000)) {
  136. alert("*Maksimal upload file 5 MB dengan format PDF");
  137. $(this).val('');
  138. }
  139. })
  140. </script>