tasks.tpl 5.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110
  1. <ul class="breadcrumb">
  2. <li><a href="addonmodules.php?module=DNSManager2"><i class="fa fa-home"></i></a></li>
  3. <li class="active">{$MGLANG->absoluteT('addonAA', 'pagesLabels', 'tools', 'tasks')}</li>
  4. </ul>
  5. <div id="table-filters" class="hide">
  6. <select name="filter[serverid]">
  7. <option value=""></option>
  8. </select>
  9. </div>
  10. <table class="table table-hover table-striped" id="tastklist">
  11. <thead>
  12. <tr>
  13. <th>{$MGLANG->T('table','name')}</th>
  14. <th style="width:5%;">{$MGLANG->T('table','status')}</th>
  15. <th style="width:10%;">{$MGLANG->T('table','Progress')}</th>
  16. <th>{$MGLANG->T('table','lastrun')}</th>
  17. {*<th>{$MGLANG->T('table','nextrun')}</th>*}
  18. <th>{$MGLANG->T('table','created_at')}</th>
  19. <th class="action-cell"></th>
  20. </tr>
  21. </thead>
  22. <tbody>
  23. </tbody>
  24. </table>
  25. {literal}
  26. <script data-cfasync="false" type="text/javascript">
  27. function refreshTable() {
  28. jQuery('#tastklist ').DataTable().ajax.reload();
  29. }
  30. function removeTaskCallback(data, $obj) { refreshTable();}
  31. function taskRunNowCallback(data, $obj) { refreshTable();}
  32. jQuery(document).ready(function(){
  33. var last;
  34. jQuery('#table-filters').change(function() {
  35. jQuery('#tastklist').DataTable().ajax.reload();
  36. });
  37. jQuery('#tastklist').dataTable({
  38. drawCallback: replaceEmptyRowDataTable,
  39. serverSide: true,
  40. // searching: true,
  41. searchDelay: 800,
  42. autoWidth: false,
  43. ajax: function(data, callback, settings){
  44. if(last != data.length) {
  45. data.start = 0;
  46. }
  47. last = data.length;
  48. var filters = $('#table-filters :input').serializeArray();
  49. JSONParser.request(
  50. 'refreshTasksTable'
  51. , $.merge(filters, [
  52. {name: 'order[column]', value: data.columns[data.order[0].column].name},
  53. {name: 'order[dir]', value: data.order[0].dir},
  54. {name: 'limit', value: data.length},
  55. {name: 'offset', value: data.start},
  56. {name: 'search', value: data.search.value},
  57. ])
  58. , function(data) {
  59. callback(data);
  60. jQuery('.mg-wrapper [title]').bstooltip();
  61. }
  62. );
  63. },
  64. columns: [
  65. {name: 'name'}
  66. ,{name: 'status'}
  67. ,{name: 'progress'}
  68. ,{name: 'lastrun'}
  69. // ,{name: 'nextrun'}
  70. ,{name: 'date'}
  71. ,{ orderable: false, targets: 0}
  72. ],
  73. order: [[4, "desc"]],
  74. pagingType: "simple_numbers",
  75. aLengthMenu: [
  76. [5, 10, 25, 50, 75, 100],
  77. [5, 10, 25, 50, 75, 100]
  78. ],
  79. iDisplayLength: 10,
  80. //sDom: 't<"table-bottom"<"row"<"col-sm-6"p><"col-sm-6"L>>>',
  81. "oLanguage": {
  82. "oPaginate" : {
  83. "sNext": "{/literal}{$MGLANG->absoluteT('addonAA','datatables','sNext')}{literal}",
  84. "sFirst": "{/literal}{$MGLANG->absoluteT('addonAA','datatables','sFirst')}{literal}",
  85. "sLast ": "{/literal}{$MGLANG->absoluteT('addonAA','datatables','sLast')}{literal}",
  86. "sPrevious": "{/literal}{$MGLANG->absoluteT('addonAA','datatables','sPrevious')}{literal}",
  87. },
  88. "sEmptyTable": "{/literal}{$MGLANG->absoluteT('addonAA','datatables','sEmptyTable')}{literal}",
  89. "sPrevious": "{/literal}{$MGLANG->absoluteT('addonAA','datatables','sPrevious')}{literal}",
  90. "sNext": "{/literal}{$MGLANG->absoluteT('addonAA','datatables','sNext')}{literal}",
  91. "sZeroRecords": "{/literal}{$MGLANG->absoluteT('addonAA','datatables','sZeroRecords')}{literal}",
  92. "sInfoEmpty": "{/literal}{$MGLANG->absoluteT('addonAA','datatables','sInfoEmpty')}{literal}",
  93. "sSearch": "{/literal}{$MGLANG->absoluteT('addonAA','datatables','sSearch')}{literal}",
  94. "sLengthMenu": "{/literal}{$MGLANG->absoluteT('addonAA','datatables','sLengthMenu')}{literal}",
  95. "sInfoFiltered": "{/literal}{$MGLANG->absoluteT('addonAA','datatables','sInfoFiltered')}{literal}",
  96. "sInfo": "{/literal}{$MGLANG->absoluteT('addonAA','datatables','sInfo')}{literal}",
  97. }
  98. });
  99. });
  100. </script>
  101. {/literal}