Esempio n. 1
0
 /**
  * Mengambil record surat dengan urutan descending (terbaru berada paling
  * awal) plus pagination.
  * Juga mereturn data lain yang diperlukan baik untuk form ataupun tabel.
  */
 public static function index_surat($pagination_locked = false)
 {
     // mengambil value dari table "konfigurasi"
     $cfg_kode_surat = Konfigurasi::find(3)->config_value;
     $cfg_tahun_surat = Konfigurasi::find(4)->config_value;
     $cfg_jmlbaris_suratkeluar = Konfigurasi::find(6)->config_value;
     // Menampilkan daftar surat terakhir (order DESC) dengan pagination
     $filter = Input::get('filter');
     // gunakan limit apabila pagination dikunci, misal untuk display table di beranda
     if ($pagination_locked) {
         $sk = Suratkeluar::order_by('id', 'desc')->take($cfg_jmlbaris_suratkeluar)->get();
     } else {
         $sk = Suratkeluar::where('jenis_surat', 'LIKE', Suratkeluar::clean_id_jenis($filter))->order_by('id', 'desc')->paginate($cfg_jmlbaris_suratkeluar);
         // last surat
         $last_id = DB::table('surat_keluar')->order_by('id', 'desc')->only('id');
         // bind data lainnya
         $sk->last_surat = Suratkeluar::find($last_id);
         $sk->filter = $filter;
         $sk->daftar_disposisi = Disposisi::order_by('nama')->get();
         $sk->daftar_jenis = Jenissurat::order_by('jenis_surat')->get();
         $sk->kode_surat = $cfg_kode_surat;
         $sk->tahun_surat = $cfg_tahun_surat;
     }
     return $sk;
 }