show-reports.blade.php 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. <div>
  2. <div id="datatable-config"
  3. data-datatable-name="{{ $datatableName }}"
  4. data-datatable-columns-config='@json($datatableColumnsConfig)'
  5. data-datatable-headers-config='@json($datatableHeadersConfig)'
  6. data-datatable-buttons-config='@json($datatableButtonsConfig)'
  7. data-datatable-column-defs-config='@json($datatableColumnDefsConfig)'>
  8. </div>
  9. <table id="{{$datatableName}}-table" class="bg-white border border-gray-300">
  10. <thead>
  11. <tr>
  12. @foreach($datatableHeadersConfig as $headerConfig)
  13. <th wire:key="{{$headerConfig['header']}}" class="border border-gray-300 px-4 py-2">{{$headerConfig['header']}}</th>
  14. @endforeach
  15. </tr>
  16. <tr>
  17. @foreach($datatableHeadersConfig as $index=>$headerConfig)
  18. <th wire:key="{{$headerConfig['header']}}" class="border border-gray-300 px-4 py-2">
  19. @if($headerConfig['searchable'] === true)
  20. @switch($headerConfig['searchtype'])
  21. @case("text")
  22. <input type="text" id="{{str_replace(" ", "-", $headerConfig['header'])}}Filter" oninput="getFilterInput(this.value, {{$index}},'text', null)" placeholder="{{$headerConfig['header']}} Search" />
  23. @break
  24. @case("date")
  25. <input type="date" id="{{str_replace(" ", "-", $headerConfig['header'])}}FilterStartDate" onchange="getFilterInput(this.value, {{$index}},'date', 'start')" placeholder="{{$headerConfig['header']}} Start Date" />
  26. -
  27. <input type="date" id="{{str_replace(" ", "-", $headerConfig['header'])}}FilterEndDate" onchange="getFilterInput(this.value, {{$index}},'date', 'end')" placeholder="{{$headerConfig['header']}} End Date" />
  28. @break
  29. @case("dropdown")
  30. <select id="{{str_replace(" ", "-", $headerConfig['header'])}}FilterDropdown" onchange="getFilterInput(this.value, {{$index}},'dropdown', null)">
  31. </select>
  32. @break
  33. @endswitch
  34. @endif
  35. </th>
  36. @endforeach
  37. </tr>
  38. </thead>
  39. <tbody></tbody>
  40. </table>
  41. </div>