<?php
defined('BASEPATH') or exit('No direct script access allowed');

class ControllerDataKelompokMotor extends CI_Controller
{

    public function __construct()
    {
        parent::__construct();
        check_not_login();
        if ($this->session->userdata('level') != 4) {
            redirect();
        }
        $this->load->library('encrypt');
        $this->load->library('mycustom');
        $this->load->model('notifikasi_arisan');
        $this->load->model('bagian_arisan/insert_model');
        $this->load->model('bagian_arisan/select_model');
        $this->load->model('bagian_arisan/update_model');
        $this->load->library('form_validation');
        $this->set_timezone();
    }
    public function set_timezone()
    {
        date_default_timezone_set("Asia/Jakarta");
    }

    public function index()
    {
        // Notifikasi
        $jml_pengajuan        = count($this->notifikasi_arisan->Notifikasi_pengajuan());
        // End_notifikasi
        // Data Login Identitas
        $data_login           = $this->userlogin->user_login('isloggedin');
        $data_id_login        = $this->session->userdata('isloggedin');
        // Data Konten
        $data_arisan          = $this->select_model->getDataArisanMotor();
        $aktif_anggota        = $this->select_model->getDataJmlAnggota();
        $pengajuan_anggota    = $this->select_model->getDataJmlPengajuanAnggota();
        $data = array(
            // Untuk memanggil halaman sesuai menu
            'folder'            => 'keloladata/arisanmotor',
            'page'              => 'index',
            'judul'             => 'Kelola Data Arisan Motor || Bagian Arisan',
            'data_id_login'     => $data_id_login,
            'data_login'        => $data_login,
            // Isi data
            'data_arisanmotor'  => $data_arisan,
            'data_pengajuan'    => $pengajuan_anggota,
            'anggota_aktif'     => $aktif_anggota,
            'jml_pengajuan'       => $jml_pengajuan
        );
        $this->load->view('arisan/index', $data);
    }
    public function kelompok($id)
    {
        // Notifikasi
        $jml_pengajuan        = count($this->notifikasi_arisan->Notifikasi_pengajuan());
        $data_kotkab            = $this->select_model->vd_kotkab();
        // End_notifikasi
        $regist_arisan        = $this->encrypt->decode($id);
        // Data Login Identitas Karyawan
        $data_login           = $this->userlogin->user_login('isloggedin');
        $data_id_login        = $this->session->userdata('isloggedin');
        // Menampilkan Data Konten  
        $data_arisan          = $this->select_model->getDataKelompokArisanMotor($regist_arisan); //Data Identitas Arisan
        $anggota_arisan       = $this->select_model->getDataAnggotaArisanMotor($regist_arisan); // Data Anggota Arisan Heboh
        $anggota_aktif        = $this->select_model->getDataAnggotaArisanMotorAktif($regist_arisan); // Data Anggota Aktif Arisan
        // echo '<pre>';
        // var_dump($jml_pengajuan);
        // die;
        $ttl_aktif            = count($anggota_aktif); // Total Jumlah Anggota Arisan Aktif
        $realisasi_tagihan    = $this->select_model->getDataRealisasiTagihan($regist_arisan); // Data Realisasi Tagihan bulan dan tahun berjalan 
        $data_saldo           = $this->select_model->getDataSaldoKelompok($regist_arisan); // Data Saldo Kelompok
        if ($data_saldo > 0) :
            $saldo_kelompok = $data_saldo['saldo_akhir'];
        else :
            $saldo_kelompok = 0;
        endif;
        // Halaman Konten 
        $data = array(
            // Untuk memanggil halaman sesuai menu
            'folder'            => 'keloladata/arisanmotor',
            'page'              => 'detail',
            'judul'             => 'Kelola Data Arisan Motor || Bagian Arisan',
            'data_id_login'     => $data_id_login,
            'data_login'        => $data_login,
            // Isi data
            'identitas_arisan'  => $data_arisan,
            'anggota_arisan'    => $anggota_arisan,
            'anggota_aktif'     => $anggota_aktif,
            'ttl_aktif'         => $ttl_aktif,
            'saldo_kelompok'    => $saldo_kelompok,
            'realisasi'         => $realisasi_tagihan,
            'data_kota'         => $data_kotkab,
            'jml_pengajuan'     => $jml_pengajuan
        );
        $this->load->view('arisan/index', $data);
    }
    public function crud()
    {
        // Simpan Data Arisan Motor - DONE
        if (isset($_POST['simpanArisanMotor'])) {
            $cek_kelompokmotor = $this->select_model->getKelompokMotorTerakhir();
            $kelompok_terakhir = $cek_kelompokmotor['nm_kelompok'];
            $kelompok_berikutnya = $kelompok_terakhir + 1;
            $this->insert_model->simpanArisanMotor($kelompok_berikutnya);
            redirect('arisan/data/kelompok_motor');
        }
        // Merubah Detail Arisan Motor - DONE
        if (isset($_POST['ubahDataArisan'])) {
            $regist_arisan = htmlspecialchars($this->input->post('regist_arisan'));
            $this->update_model->ubahDataArisanMotor($regist_arisan);
            $this->session->set_flashdata('pesan_berhasil', '<div class="alert alert-success" id="pesan_berhasil" role="alert">Berhasil Ubah Data Kelompok Arisan Motor!</div>');
            redirect('arisan/data/kelompok_motor');
        }
        // Hapus Data Arisan Motor - DONE
        if (isset($_POST['hapusDataArisan'])) {
            $regist_arisan = htmlspecialchars($this->input->post('regist_arisan'));
            $this->update_model->hapusDataArisan($regist_arisan);
            $this->session->set_flashdata('pesan_berhasil', '<div class="alert alert-success" id="pesan_berhasil" role="alert">Berhasil Hapus Kelompok Arisan Motor!</div>');
            redirect('arisan/data/kelompok_motor');
        }
        // Aktifasi Detail Arisan Motor - DONE
        if (isset($_POST['aktifDataArisan'])) {
            $tanggal_undian   = htmlspecialchars($this->input->post('tgl_undian'));
            $regist_arisan    = htmlspecialchars($this->input->post('regist_arisan'));
            $this->_vAnggotaTarget($regist_arisan);
            $this->_vTanggalArisan($tanggal_undian);
            $data_tanggal = date('Y-m');
            $tgl_asli    = $data_tanggal . '-' . $tanggal_undian;
            $tgl_undian  = date('Y-m-d', strtotime('+1 month', strtotime($tgl_asli)));
            $cek_jadwal  = $this->select_model->getDataJadwalMotor($regist_arisan);
            $undian      = $cek_jadwal['undian_ke'];
            $undian_ke   = $undian + 1;
            $this->update_model->aktifDataArisanMotor($regist_arisan, $tgl_undian, $undian_ke);
            $this->session->set_flashdata('pesan_berhasil', '<div class="alert alert-success" id="pesan_berhasil" role="alert">Berhasil Aktivasi Kelompok Arisan Motor!</div>');
            redirect('arisan/data/kelompok_motor');
        }
        // Simpan Data Anggota Arisan Motor - DONE
        if (isset($_POST['simpanAnggotaArisanMotor'])) {
            $buat_noUndian  = $this->_mNoUndian();
            $alamat_id      = $this->_cekDataAlamat();
            $data_inputan   = $this->_inputanDaftarAnggota($alamat_id);
            $anggota_terdaftar = htmlspecialchars($this->input->post('anggota_terdaftar'));
            if ($anggota_terdaftar == 'ok') :
                $this->_vNIK16Karakter();
                $this->_vNoHP();
                $this->insert_model->tambahCalonAnggotaKoperasiMotor($alamat_id);
                $anggota = $this->db->get_where('anggota', ['nik' => htmlspecialchars($this->input->post('nik_tambah'))])->row_array();
                $this->insert_model->tambahAnggotaArisanMotor($anggota, $buat_noUndian);
            else :
                $anggota = $this->db->get_where('anggota', ['nik' => htmlspecialchars($this->input->post('nik_tambah'))])->row_array();
                $this->insert_model->tambahAnggotaArisanMotor($anggota, $buat_noUndian);
            endif;
            redirect('arisan/data/kelompok_motor/kelompok/' . $this->encrypt->encode(htmlspecialchars($this->input->post('regist_arisan'))));
        }
        // DONE
        if (isset($_POST['gantiAnggotaArisanMotor'])) {
            $produk_id = 22;
            // Inputan
            $data_inputan = $this->_inpuranDaftarAnggota();
            // Cek apakah inputan sudah memenuhi persyaratan atau belum (Ketikan dan EYD)
            $this->_inputanAnggotaBaru($data_inputan); // Cek apakah inputan sudah memenuhi persyaratan atau belum (Ketikan dan EYD)
            // Cek apakah nik dan nomor telepon sudah sesuai standard pengisian
            $cek_nik_hp   = $this->_cekDataAnggotaBaru($data_inputan); // Cek apakah nik dan nomor telepon sudah sesuai standard pengisian
            // Cek apakah alamat ada didalam database atau tidak
            $cek_alamat   = $this->_cekDataAlamat($data_inputan); // Cek apakah alamat ada didalam database atau tidak
            $alamat_id    = $cek_alamat;
            // Membuat nomor registrasi undian dan nomor undian
            $regist_undian = htmlspecialchars($this->input->post('regist_undian'));
            if ($cek_nik_hp['nik_hp'] == '2') :
                // Input semua data
                $this->update_model->gantiAnggotaArisanHebohBaru($data_inputan, $alamat_id, $regist_undian, $produk_id);
            else :
                if ($cek_nik_hp['nik_hp'] == '1') :
                    // Update data yang sudah ada
                    $anggota_id = $cek_nik_hp['anggota_id'];
                    // Mengubah data anggota arisan
                    $data_anggota_baru = array(
                        'anggota_id' => $anggota_id,
                        'status'     => 'AKTIF'
                    );
                    $this->db->where('regist_undian', $regist_undian);
                    $this->db->update('p_arisan_anggota', $data_anggota_baru);
                    // Tambah Nomor Cadangan
                    $data_cadangan = array(
                        'anggota_id'   => $anggota_id,
                        'no_hp'        => $data_inputan['no_hp'],
                        'ket_cadangan' => 'Nomor ' . $data_inputan['no_hp'] . ' di daftarkan sebagai nomor Cadangan Anggota Arisan Heboh ' . $regist_undian
                    );
                    $this->db->insert('anggota_hp_cadangan', $data_cadangan);
                else :
                    // Updata data yang sudah ada di tambah masukkan nomor cadangan
                    $anggota_id = $cek_nik_hp['anggota_id'];
                    // Mengubah data anggota arisan
                    $data_anggota_baru = array(
                        'anggota_id' => $anggota_id,
                        'status'     => 'AKTIF'
                    );
                    $this->db->where('regist_undian', $regist_undian);
                    $this->db->update('p_arisan_anggota', $data_anggota_baru);
                    // Tambah Nomor Cadangan
                    $data_cadangan = array(
                        'anggota_id'   => $anggota_id,
                        'no_hp'        => $data_inputan['no_hp'],
                        'ket_cadangan' => 'Nomor ' . $data_inputan['no_hp'] . ' di daftarkan sebagai nomor Cadangan Anggota Arisan Heboh ' . $regist_undian
                    );
                    $this->db->insert('anggota_hp_cadangan', $data_cadangan);
                endif;
            endif;
            $this->session->set_flashdata('pesan_berhasil', '<div class="alert alert-success" id="pesan_berhasil" role="alert">Berhasil Merubah Anggota Kelompok Arisan Heboh!</div>');
            redirect('arisan/data/kelompok_motor/kelompok/' . $this->encrypt->encode($data_inputan['arisan_id']));
        }
    }
    // Anggota tidak jadi mengikuti arisan - DONE
    public function hapus_anggota($id)
    {
        $regist_undian = $this->encrypt->decode($id);
        $cek_data = $this->db->get_where('p_arisan_anggota', ['regist_undian' => $regist_undian])->row_array();
        $regist_arisan = $cek_data['regist_arisan'];
        $this->update_model->anggotaKoperasiMundurHapus($regist_undian);
        $this->session->set_flashdata('pesan_berhasil', '<div class="alert alert-success" id="pesan_berhasil" role="alert">Berhasil Hapus Data Anggota Kelompok Arisan Motor!</div>');
        redirect('arisan/data/kelompok_motor/kelompok/' . $this->encrypt->encode($regist_arisan));
    }
    // Anggota mundur arisan - DONE
    public function anggota_mundur($id)
    {
        $regist_undian = $this->encrypt->decode($id);
        $cek_data = $this->db->get_where('p_arisan_anggota', ['regist_undian' => $regist_undian])->row_array();
        $regist_arisan = $cek_data['regist_arisan'];
        $this->update_model->anggotaKoperasiMundur($regist_undian);
        $this->session->set_flashdata('pesan_berhasil', '<div class="alert alert-success" id="pesan_berhasil" role="alert">Berhasil Merubah Status Anggota Kelompok Arisan Motor!</div>');
        redirect('arisan/data/kelompok_motor/kelompok/' . $this->encrypt->encode($regist_arisan));
    }
    // Bagian Private Function
    // Validasi Tambah Anggota
    private function _inputanDaftarAnggota($alamat_id)
    {
        $regist_arisan     = htmlspecialchars($this->input->post('regist_arisan'));
        $login_id          = htmlspecialchars($this->input->post('login_id'));
        $nik               = htmlspecialchars($this->input->post('nik_tambah'));
        $nm_anggota        = htmlspecialchars($this->input->post('nm_anggota'));
        $jk                = htmlspecialchars($this->input->post('jk'));
        $alamat_lengkap    = htmlspecialchars($this->input->post('alamat_lengkap'));
        $kode_pos          = htmlspecialchars($this->input->post('kode_pos'));
        $nm_rt             = htmlspecialchars($this->input->post('tambah_nm_rt'));
        $nm_rw             = htmlspecialchars($this->input->post('tambah_nm_rw'));
        $tempat_lahir      = htmlspecialchars($this->input->post('tempat_lahir'));
        $tgl_lahir         = htmlspecialchars($this->input->post('tgl_lahir'));
        $no_hp             = htmlspecialchars($this->input->post('no_hp'));
        $pekerjaan         = htmlspecialchars($this->input->post('pekerjaan'));
        $suami_istri       = htmlspecialchars($this->input->post('suami_istri'));
        $foto_ktp          = htmlspecialchars($this->input->post('foto_ktp'));
        $foto_ktplama      = htmlspecialchars($this->input->post('foto_ktplama'));
        $data_inputan = array(
            'regist_arisan'  => $regist_arisan,
            'login_id'       => $login_id,
            'nik'            => $nik,
            'nm_anggota'     => $nm_anggota,
            'jk'             => $jk,
            'alamat_lengkap' => $alamat_lengkap,
            'kode_pos'       => $kode_pos,
            'nm_rt'          => $nm_rt,
            'nm_rw'          => $nm_rw,
            'id_alamat'      => $alamat_id,
            'tempat_lahir'   => $tempat_lahir,
            'tgl_lahir'      => $tgl_lahir,
            'no_hp'          => $no_hp,
            'pekerjaan'      => $pekerjaan,
            'suami_istri'    => $suami_istri,
            'foto_ktp'       => $foto_ktp,
            'foto_ktplama'   => $foto_ktplama
        );
        return $data_inputan;
    }
    // Validasi ganti anggota
    private function _inpuranDaftarAnggota()
    {
        $id_arisan         = htmlspecialchars($this->input->post('id_arisan'));
        $nik               = htmlspecialchars($this->input->post('nik'));
        $nm_anggota        = htmlspecialchars($this->input->post('nm_anggota'));
        $login_id          = htmlspecialchars($this->input->post('login_id'));
        $jk                = htmlspecialchars($this->input->post('jk'));
        $alamat_lengkap    = htmlspecialchars($this->input->post('alamat_lengkap'));
        $kode_pos          = htmlspecialchars($this->input->post('kode_pos'));
        $nm_rt             = htmlspecialchars($this->input->post('nm_rt'));
        $nm_rw             = htmlspecialchars($this->input->post('nm_rw'));
        $nm_desa           = htmlspecialchars($this->input->post('nm_desa'));
        $nm_kecamatan      = htmlspecialchars($this->input->post('nm_kecamatan'));
        $kot_kab           = htmlspecialchars($this->input->post('kot_kab'));
        $prov              = htmlspecialchars($this->input->post('prov'));
        $tempat_lahir      = htmlspecialchars($this->input->post('tempat_lahir'));
        $tgl_lahir         = htmlspecialchars($this->input->post('tgl_lahir'));
        $no_hp             = htmlspecialchars($this->input->post('no_hp'));
        $pekerjaan         = htmlspecialchars($this->input->post('pekerjaan'));
        $suami_istri       = htmlspecialchars($this->input->post('suami_istri'));
        $foto_ktp          = htmlspecialchars($this->input->post('foto_ktp'));
        $foto_ktplama      = htmlspecialchars($this->input->post('foto_ktplama'));
        $data_inputan = array(
            'arisan_id'      => $id_arisan,
            'nik'            => $nik,
            'nm_anggota'     => $nm_anggota,
            'login_id'       => $login_id,
            'jk'             => $jk,
            'alamat_lengkap' => $alamat_lengkap,
            'kode_pos'       => $kode_pos,
            'nm_rt'          => $nm_rt,
            'nm_rw'          => $nm_rw,
            'nm_desa'        => $nm_desa,
            'nm_kecamatan'   => $nm_kecamatan,
            'kot_kab'        => $kot_kab,
            'prov'           => $prov,
            'tempat_lahir'   => $tempat_lahir,
            'tgl_lahir'      => $tgl_lahir,
            'no_hp'          => $no_hp,
            'pekerjaan'      => $pekerjaan,
            'suami_istri'    => $suami_istri,
            'foto_ktp'       => $foto_ktp,
            'foto_ktplama'   => $foto_ktplama
        );
        return $data_inputan;
    }
    // Melihat alamat lengkap
    private function _inputanAnggotaBaru($data_inputan)
    {
        // Cek NIK
        if (strlen($data_inputan['nik']) < 16 && strlen($data_inputan['nik']) > 16) :
            $this->session->set_flashdata('pesan_gagal', '<div class="alert alert-danger" id="pesan_gagal" role="alert">NIK Harus berisi 16 karakter!</div>');
            redirect('arisan/data/kelompok_motor/kelompok/' . $this->encrypt->encode($data_inputan['arisan_id']));
        endif;
        // Cek Jenis Kelamin
        if ($data_inputan['jk'] == 'ok') :
            $this->session->set_flashdata('pesan_gagal', '<div class="alert alert-danger" id="pesan_gagal" role="alert">Pilih Jenis Kelamin Dengan Benar!</div>');
            redirect('arisan/data/kelompok_motor/kelompok/' . $this->encrypt->encode($data_inputan['arisan_id']));
        endif;
        // Cek RT
        if ($data_inputan['nm_rt'] == 'ok') :
            $this->session->set_flashdata('pesan_gagal', '<div class="alert alert-danger" id="pesan_gagal" role="alert">Pilih RT Dengan Benar!</div>');
            redirect('arisan/data/kelompok_motor/kelompok/' . $this->encrypt->encode($data_inputan['arisan_id']));
        endif;
        // Cek RW
        if ($data_inputan['nm_rw'] == 'ok') :
            $this->session->set_flashdata('pesan_gagal', '<div class="alert alert-danger" id="pesan_gagal" role="alert">Pilih RW Dengan Benar!</div>');
            redirect('arisan/data/kelompok_motor/kelompok/' . $this->encrypt->encode($data_inputan['arisan_id']));
        endif;
        // Cek Nomor HP substr($data_inputan['no_hp'])
        if (substr($data_inputan['no_hp'], 0, 1) != '0') :
            $this->session->set_flashdata('pesan_gagal', '<div class="alert alert-danger" id="pesan_gagal" role="alert">Nomor HP diawali dengan 0!</div>');
            redirect('arisan/data/kelompok_motor/kelompok/' . $this->encrypt->encode($data_inputan['arisan_id']));
        endif;
    }
    private function _cekDataAnggotaBaru($data_inputan)
    {
        // Cek data NIK
        $cek_nik = $this->db->get_where('anggota', ['nik' => $data_inputan['nik']])->row_array();
        if ($cek_nik > 0) :
            $cek_nomor = $this->db->get_where('anggota', ['no_hp' => $data_inputan['no_hp']])->row_array();
            if ($cek_nomor > 0) :
                if ($cek_nomor['no_hp'] == $cek_nik['no_hp']) :
                    $data_info = array(
                        'nik_hp' => 1,
                        'anggota_id' => $cek_nik['id']
                    );
                // NIK terdaftar dan nomor HP sama
                else :
                    $this->session->set_flashdata('pesan_gagal', '<div class="alert alert-danger" id="pesan_gagal" role="alert">Nomor HP sudah ada terdaftar pada anggota lain!</div>');
                    redirect('arisan/data/kelompok_motor/kelompok/' . $this->encrypt->encode($data_inputan['arisan_id']));
                endif;
            else :
                $data_info = array(
                    'nik_hp' => 3,
                    'anggota_id' => $cek_nik['id']
                );
            // NIK terdaftar namun nomor HP berbeda dan nomor HP tidak ada yang memakai
            endif;
        else :
            $cek_nomor = $this->db->get_where('anggota', ['no_hp' => $data_inputan['no_hp']])->row_array();
            if ($cek_nomor > 0) :
                redirect('arisan/data/kelompok_motor/kelompok/' . $this->encrypt->encode($data_inputan['arisan_id']));
            endif;
            $data_info = array(
                'nik_hp' => 2
            );
        endif;
        return $data_info;
    }
    private function _cekDataAlamat()
    {
        $cek_alamat = $this->db->get_where('sistem_alamat', ['nm_desa' => htmlspecialchars($this->input->post('tambah_dk_ds')), 'nm_kecamatan' => htmlspecialchars($this->input->post('tambah_kecamatan_baru')), 'kot_kab' => htmlspecialchars($this->input->post('tambah_kota_kabupaten'))])->row_array();
        if ($cek_alamat > 0) :
            $alamat_id = $cek_alamat['id'];
            return $alamat_id;
        else :
            $this->session->set_flashdata('pesan_gagal', '<div class="alert alert-danger" id="pesan_gagal" role="alert">Alamat Tidak di Temukan, silahkan hubungi developer!</div>');
            redirect('arisan/data/kelompok_motor/kelompok/' . $this->encrypt->encode(htmlspecialchars($this->input->post('regist_arisan'))));
        endif;
    }
    // Tambah Anggota Arisan
    // Membuat Nomor Undian dan No Urut
    private function _mNoUndian()
    {
        $regist_arisan  = htmlspecialchars($this->input->post('regist_arisan'));
        $no_undian    = $this->select_model->getDataNomorUndian($regist_arisan);
        $no_undian_selanjutnya = $no_undian['no_urut'] + 1;
        $total_huruf = strlen($no_undian_selanjutnya);
        if ($total_huruf == 1) :
            $regist_undian = $regist_arisan . '00' . $no_undian_selanjutnya;
            $no_urut = $no_undian_selanjutnya;
        elseif ($total_huruf == 2) :
            $regist_undian = $regist_arisan . '0' . $no_undian_selanjutnya;
            $no_urut = $no_undian_selanjutnya;
        else :
            $regist_undian = $regist_arisan . $no_undian_selanjutnya;
            $no_urut = $no_undian_selanjutnya;
        endif;
        $data = array(
            'regist_arisan' => $regist_arisan,
            'regist_undian' => $regist_undian,
            'no_urut'       => $no_urut
        );
        return $data;
    }
    // Validasi NIK 16 Karakter
    private function _vNIK16Karakter()
    {
        $nik          = htmlspecialchars($this->input->post('nik_tambah'));
        if (strlen($nik) != 16) {
            $this->session->set_flashdata('pesan_gagal', '<div class="alert alert-danger" id="pesan_gagal" role="alert">Jumlah NIK Harus 16 Karakter</div>');
            redirect('arisan/data/kelompok_motor/kelompok/' . $this->encrypt->encode(htmlspecialchars($this->input->post('regist_arisan'))));
        }
    }
    private function _vNoHP()
    {
        $vno_hp = $this->db->get_where('anggota', ['no_hp' => htmlspecialchars($this->input->post('no_hp'))])->row_array();
        if ($vno_hp > 0) {
            $this->session->set_flashdata('pesan_gagal', '<div class="alert alert-danger" id="pesan_gagal" role="alert">Nomor HP Sudah di Pakai Orang Lain</div>');
            redirect('arisan/data/kelompok_motor/kelompok/' . $this->encrypt->encode(htmlspecialchars($this->input->post('regist_arisan'))));
        }
    }
    // Validasi Aktivasi Arisan
    // Validasi Anggota Target
    private function _vAnggotaTarget($regist_arisan)
    {
        // Cek Data Arisan
        $arisan         = $this->db->get_where('p_arisan', ['id' => $regist_arisan])->row_array();
        $target_anggota = $arisan['target_anggota'];
        // Cek Total Anggota
        $anggota_arisan = $this->db->get_where('p_arisan_anggota', ['regist_arisan' => $regist_arisan])->result();
        $jml_anggota    = count($anggota_arisan);
        // Cek apakah anggota sudah target
        if ($jml_anggota != $target_anggota) :
            $this->session->set_flashdata('pesan_gagal', '<div class="alert alert-danger" id="pesan_gagal" role="alert">Jumlah Anggota Terdaftar Kurang dari Target Anggota!</div>');
            redirect('arisan/data/kelompok_motor');
        endif;
    }
    // Validasi Tanggal undian arisan atau lelang arisan
    private function _vTanggalArisan($tanggal_undian)
    {
        if ($tanggal_undian < 1) :
            $this->session->set_flashdata('pesan_gagal', '<div class="alert alert-danger" id="pesan_gagal" role="alert">Tanggal Harus lebih besar dari tanggal 0!</div>');
            redirect('arisan/data/kelompok_motor');
        endif;
        if ($tanggal_undian > 30) :
            $this->session->set_flashdata('pesan_gagal', '<div class="alert alert-danger" id="pesan_gagal" role="alert">Tanggal Harus kurang dari tanggal 30!</div>');
            redirect('arisan/data/kelompok_motor');
        endif;
    }
}

/* End of file ControllerDataKelompokMotor.php and path \application\controllers\arisan\keloladata\ControllerDataKelompokMotor.php */