list.pt 5.04 KB
<html metal:use-macro="load: ../base.pt">
  <div metal:fill-slot="content">
    <div class="jarviswidget jarviswidget-color-blueLight"> <!-- jarviswidget -->
      <header role="heading" class="txt-color-grayDark">
        <h2>
          <i class="fa fa-fw fa-table"></i>
          ${request.title}
        </h2>
      </header>
      <div role="content">
        <div class="widget-body">
          <div class="dataTables_wrapper form-inline no-footer">
            <table id="table1" class="table table-bordered table-hover table-condensed">
                <thead>
                    <tr>
                        <th>ID</th>
                        <th>Kode</th>
                        <th>Nama</th>
                    </tr>
                </thead>
                <tbody>
                </tbody>
            </table>
          </div>
        </div> <!-- widget-body -->
      </div>
    </div>
  </div> <!-- metal:content -->
  <div metal:fill-slot="scripts">
    <script>
      var mID;
      var oTable;
      var oTableUri = "/pbbm/kecamatan"
      var oTableUrl = oTableUri+"/grid/act";

      $(document).ready(function () {
        oTable = $('#table1').DataTable({
          dom           : '<"row"<"col-md-8"<"toolbar">Bl><"col-md-4"fr>>tip',
          processing    : true,
          serverSide    : true,
          ajax          : oTableUrl,
          stateSave     : true,
          scrollCollapse: true,
          sort          : true,
          info          : false,
          filter        : true,
          autoWidth     : false,
          paginate      : true,
          paginationType: "full_numbers",

          lengthMenu: [
              [10, 25, 50, 100],
              [10, 25, 50, 100]
          ],
          columnDefs: [{
                        searchable: false,
                        visible: false,
                        targets: [0]
                    }],
          columns: [
              { "data": "id" },
              { "data": "kode", "width": "200px", "class":"left"},
              { "data": "nama" },
          ],
          "language": {
                "search"  : "Cari: ",
                "paginate":{
                    "first"   : "Pertama ",
                    "last"    : "Akhir ",
                    "previous": false,
                    "next"    : false,
                },
                "lengthMenu": "Tampil _MENU_ baris "
            },
        });

        var tb_array = [
          '<div class="btn-group pull-left">',
          '	<button id="btn_add"    class="btn btn btn-success" type="button"><i class="fa fa-fw fa-plus"></i>&nbsp;Tambah</button>',
          '	<button id="btn_edit"   class="btn btn btn-warning" type="button"><i class="fa fa-fw fa-edit"></i>&nbsp;Edit</button>',
          '	<button id="btn_delete" class="btn btn btn-danger"  type="button"><i class="fa fa-fw fa-trash-o"></i>&nbsp;Hapus</button>',
          '	<button id="btn_csv"  class="btn btn btn-primary" type="button"><i class="fa fa-fw fa-file"></i>&nbsp;CSV</button>',
          '	<button id="btn_pdf"  class="btn btn btn-primary" type="button"><i class="fa fa-fw fa-file"></i>&nbsp;PDF</button>',
          '	<button id="btn_close"  class="btn btn btn-warning" type="button"><i class="fa fa-fw fa-undo"></i>&nbsp;Tutup</button>',
          '	&nbsp;',
          '</div>',
        ];

        var tb = tb_array.join(' ');
        $("div.toolbar").html(tb);
        $("div.toolbar").attr('style', 'display:block; float: left; margin-bottom:6px; line-height:16px;');
        $('#table1 tbody').on('click', 'tr', function () {
            if ($(this).hasClass('selected')) {
                $(this).removeClass('selected');
            } else {
                var aData = oTable.row( this ).data();
                oTable.$('tr.selected').removeClass('selected');
                $(this).addClass('selected');
                mID = aData.id;
                console.log(mID);
                oTable.$('tr.row_selected').removeClass('row_selected');
                $(this).addClass('row_selected');
                /*oTable2.fnReloadAjax("egaji/grid2?id=" + mID);*/
            }
        });

        $('#btn_add').click(function () {
            window.location = oTableUri+'/add';
        });

        $('#btn_edit').click(function () {
            if (mID) window.location = oTableUri+'/'+mID+'/edt';
            else alert('Pilih Baris yang akan di edit');
        });

        $('#btn_delete').click(function () {
            if (mID) window.location = oTableUri+'/'+mID+'/del';
            else alert('Pilih Baris yang akan di hapus');
        });

        $('#btn_csv').click(function () {
            url = oTableUri+"/csv/rpt";
            window.open(url);
        });

        $('#btn_pdf').click(function () {
            url = oTableUri+"/pdf/rpt";
            window.open(url);
        });

        $("#btn_close").click(function () {
            window.location = '/pbbm';
            return false;
        });

        });
    </script>
  </div>
</html>