Cara Mengatasi Masalah Flatpickr pada Modal Bootstrap

Ketika flatpickr digunakan di modal bootstrap, ternyata fungsi dropdown bulan, dan input tahun ataupun jam, menit tidak berfungsi. Hal ini disebabkan oleh efek dari bootstrap yang menghandle event focus. Cara mengatasinya cukup mudah, yaitu tinggal tambahkan data-bs-focus=”false”.

<div class="modal fade" data-bs-focus="false">
     <div class="modal-dialog">
          <div class="modal-content">
               <div class="modal-header">
               ...
               </div>
               <div class="modal-body">
               ...
               </div>
          </div>
     </div>
</div>

Semoga bermanfaat. Tetap Sehat, Tetap Semangat, agar dapat Tetap dalam Perdjoeangan!!

Cara Setting SweetAlert2 untuk Modal Konfirmasi Hapus Data

Berikut cara menggunakan SweetAlert2 untuk Modal Konfirmasi Hapus Data

swal.fire({title: "Konfirmasi", text: "Yakin hapus data?", icon: "warning", showCancelButton: true})
    .then(result => {
         if (result.isConfirmed) {
            alert("deleted");
         }
    });

Semoga Bermanfaat!! Tetap Sehat, Tetap Semangat, agar dapat Tetap dalam Perdjoeangan!!

Cara Return Response 422 (Unprocessable Entity / Content) di Laravel

Berikut contoh custom validasi yang return response 422, untuk mengecek apakah nilai pada array nominal_bayar kosong (null / empty) semua atau tidak.

$nominal_bayar = $request->nominal_bayar;
if (!array_filter($nominal_bayar)) {
    return response()->json(["errors" => ["nominal_bayar" => "Silakan input nominal pembayaran."]], 422);
}

Semoga bermanfaat. Tetap Sehat, Tetap Semangat, Tetap dalam Perdjoeangan!!

Repositori Git Project Laravel : Include Folder Vendor Apa Tidak?

Ada 2 kondisi :

1. Bisa Akses SSH / Terminal

Untuk kondisi ini, lebih baik folder vendor di-ignore saja. Karena kita bisa run composer install / update.

2. Hanya Punya Akses Cpanel / FTP

Kalau ini, menurutku lebih baik di-include, agar lebih mudah me-track dependency mana saja yang perlu di-upload. Lebih amannya, versi php yang digunakan di server local disamakan dengan versi php di server web, agar waktu diupload tidak terjadi masalah karena beda versi php.

Semoga bermanfaat. Tetap Sehat, Tetap Semangat, Tetap dalam Perdjoeangan!!

Cara Transfer Pulsa Indosat

Syarat Transfer Pulsa Indosat:

  • Masa aktif kartu Indosat harus lebih dari 180 hari.
  • Nomor yang hendak dikirimi pulsa harus dalam keadaan aktif.
  • Transfer pulsa minimal dengan nominal Rp 5000 dan maksimal Rp 100 ribu.
  • Batas transfer pulsa per hari Rp 200 ribu.

Berikut cara transfer pulsa:

  1. Buka menu panggilan
  2. Ketik *123*151#
  3. Masukkan nomor tujuan transfer
  4. Masukkan jumlah pulsa yang akan ditransfer
  5. Akan muncul notif konfirmasi transfer pulsa, reply 1 (ya)
  6. Bila berhasil, akan ada sms notifikasi transfer pulsa berhasil (biaya Rp 600)

    Semoga bermanfaat. Tetap Sehat, Tetap Semangat, Tetap dalam Perdjoeangan!!

    Referensi: https://narasi.tv/read/narasi-daily/3-cara-transfer-pulsa-indosat-dengan-mudah-dan-cepat

    Cara Setting Redis untuk menyimpan Laravel Session

    1. Install package predis/predis

    composer require predis/predis

    2. Edit config berikut pada file .env

    CACHE_DRIVER=redis
    CACHE_PREFIX=cache    # akan digabung dengan REDIS_PREFIX
    SESSION_DRIVER=redis
    SESSION_LIFETIME=120
    
    REDIS_CLIENT=predis   # default pakai phpredis
    REDIS_HOST=127.0.0.1
    REDIS_PASSWORD=null
    REDIS_PORT=6379
    REDIS_PREFIX=simrs_   # akan digabung dengan CACHE_PREFIX

    3. Run php artisan optimize

    php artisan optimize

    4. Hasil dilihat pakai RedisInsight

    RedisInsight untuk menampilkan data session Laravel yang disimpan di server Redis

    Semoga Bermanfaat. Tetap Sehat, Tetap Semangat, Tetap dalam Perdjoeangan!!

    Cara Menggunakan Laravel Pagination dengan Distinct

    Masalah: ketika menggunakan distinct pada fungsi paginate, ternyata hasil querynya sudah benar hanya tampil 2 data (fungsi distinct berhasil), namun total data/count-nya masih 12 (tanpa distinct).

    $data = InputTindakan::join("tindakan AS t", "input_tindakan.tindakan_id", "t.id")
            ->whereRaw("rawat_jalan_id=?", [$kunjungan_id])
            ->selectRaw("tindakan_id AS id,t.nama as text")
            ->orderByRaw("t.nama")
            ->distinct()
            ->paginate(request('per_page', 10));

    Solusi: ganti distinct() dengan groupBy()

    $data = InputTindakan::join("tindakan AS t", "input_tindakan.tindakan_id", "t.id")
            ->whereRaw("rawat_jalan_id=?", [$kunjungan_id])
            ->selectRaw("tindakan_id AS id,t.nama as text")
            ->orderByRaw("t.nama")
            ->groupBy("tindakan_id")
            ->paginate(request('per_page', 10));

    Semoga bermanfaat. Tetap Sehat, Tetap Semangat, Tetap dalam Perdjoeangan!!