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

class ControllerDocumentasi extends CI_Controller
{

    public function __construct()
    {
        parent::__construct();
        //validasi jika user belum login
        check_not_login();
        if ($this->session->userdata('level') != 1) {
            redirect();
        }
        $this->set_timezone();
        $this->load->library('encrypt');
        $this->load->library('form_validation');
        $this->load->library('Mycustom');
        $this->load->library('pdfgenerator');
        $this->load->library('Notifikasi');
        $this->load->model('bagian_owner/insert_model');
        $this->load->model('bagian_owner/select_model');
        $this->load->model('bagian_owner/update_model');
    }
    public function set_timezone()
    {
        date_default_timezone_set("Asia/Jakarta");
    }

    public function index()
    {
        $notif                 = $this->notifikasi->notif_owner();
        // Data Login
        $data_login            = $this->userlogin->user_login(); // Menampilkan siapa yang login
        $data_id_login         = $this->session->userdata('isloggedin'); // Menampilkan data session
        // Data Isian Konten
        // Query SQL Data atau isi data page
        // Menampilkan saldo pertama koperasi 
        $data_table = $this->db->get_where('sistem_dokumentasi', ['sts_doc' => 'AKTIF'])->result();
        $data_role  = $this->db->get_where('sistem_role_level')->result();
        $data = array(
            // Untuk memanggil halaman sesuai menu
            'folder'              => 'dokumentasi',
            'page'                => 'index',
            'judul'               => 'Kelola Dokumentasi Kasus Aplikasi || Bagian Pengurus',
            'data_id_login'       => $data_id_login,
            'data_login'          => $data_login,
            'notif'               => $notif,
            // Isi data
            'data_table'          => $data_table,
            'data_role'           => $data_role
        );
        $this->load->view('owner/index', $data);
    }
    public function add()
    {
        $notif                 = $this->notifikasi->notif_owner();
        // Data Login
        $data_login            = $this->userlogin->user_login(); // Menampilkan siapa yang login
        $data_id_login         = $this->session->userdata('isloggedin'); // Menampilkan data session
        // Data Isian Konten
        // Query SQL Data atau isi data page
        // Menampilkan saldo pertama koperasi
        $data_role  = $this->db->get_where('sistem_role_level')->result();
        $data = array(
            // Untuk memanggil halaman sesuai menu
            'folder'              => 'dokumentasi',
            'page'                => 'add',
            'judul'               => 'Tambah Dokumentasi Kasus Aplikasi || Bagian Pengurus',
            'data_id_login'       => $data_id_login,
            'data_login'          => $data_login,
            'notif'               => $notif,
            'data_role'           => $data_role
        );
        $this->load->view('owner/index', $data);
    }
    public function update($id)
    {
        $notif                 = $this->notifikasi->notif_owner();
        // Data Login
        $data_login            = $this->userlogin->user_login(); // Menampilkan siapa yang login
        $data_id_login         = $this->session->userdata('isloggedin'); // Menampilkan data session
        $doc_id = $this->encrypt->decode($id);
        // Data Isian Konten
        // Query SQL Data atau isi data page
        // Menampilkan saldo pertama koperasi 
        $data_doc = $this->db->get_where('sistem_dokumentasi', ['id' => $doc_id])->row_array();
        $data_role  = $this->db->get_where('sistem_role_level')->result();
        $data = array(
            // Untuk memanggil halaman sesuai menu
            'folder'              => 'dokumentasi',
            'page'                => 'update',
            'judul'               => 'Update Dokumentasi Kasus Aplikasi || Bagian Pengurus',
            'data_id_login'       => $data_id_login,
            'data_login'          => $data_login,
            'notif'               => $notif,
            // Isi data
            'data_doc'            => $data_doc,
            'data_role'           => $data_role
        );
        $this->load->view('owner/index', $data);
    }
    public function lihat($id)
    {
        $notif                 = $this->notifikasi->notif_owner();
        // Data Login
        $data_login            = $this->userlogin->user_login(); // Menampilkan siapa yang login
        $data_id_login         = $this->session->userdata('isloggedin'); // Menampilkan data session
        $doc_id = $this->encrypt->decode($id);
        // Data Isian Konten
        // Query SQL Data atau isi data page
        // Menampilkan saldo pertama koperasi 
        $data_doc = $this->db->get_where('sistem_dokumentasi', ['id' => $doc_id])->row_array();
        $data_role  = $this->db->get_where('sistem_role_level')->result();
        $data = array(
            // Untuk memanggil halaman sesuai menu
            'folder'              => 'dokumentasi',
            'page'                => 'lihat',
            'judul'               => 'Update Dokumentasi Kasus Aplikasi || Bagian Pengurus',
            'data_id_login'       => $data_id_login,
            'data_login'          => $data_login,
            'notif'               => $notif,
            // Isi data
            'data_doc'            => $data_doc,
            'data_role'           => $data_role
        );
        $this->load->view('owner/index', $data);
    }
    public function crud()
    {
        if (isset($_POST['simpanDataKasus'])) :
            // Data Inputan
            $data_inputan = array(
                'jdl_doc'     => htmlspecialchars($this->input->post('jdl_doc')),
                'ket_doc'     => htmlspecialchars($this->input->post('ket_doc')),
                'langkah_doc' => htmlspecialchars($this->input->post('areaDokumentasi')),
                'role_level'  => htmlspecialchars($this->input->post('role_level')),
                'sts_doc'     => 'AKTIF'
            );
            $this->db->insert('sistem_dokumentasi', $data_inputan);
            $this->session->set_flashdata('pesan_berhasil', '<div class="alert alert-success" id="pesan_berhasil" role="alert">Berhasil Tambah Data Dokumentasi!</div>');
            redirect('owner/dokumentasi');
        endif;
        if (isset($_POST['ubahDataKasus'])) :
            // Data Inputan
            $data_inputan = array(
                'jdl_doc'     => htmlspecialchars($this->input->post('jdl_doc')),
                'ket_doc'     => htmlspecialchars($this->input->post('ket_doc')),
                'langkah_doc' => htmlspecialchars($this->input->post('areaDokumentasi')),
                'role_level'  => htmlspecialchars($this->input->post('role_level')),
                'sts_doc'     => 'AKTIF'
            );
            $this->db->where('id', htmlspecialchars($this->input->post('doc_id')));
            $this->db->update('sistem_dokumentasi', $data_inputan);
            $this->session->set_flashdata('pesan_berhasil', '<div class="alert alert-success" id="pesan_berhasil" role="alert">Berhasil Ubah Data Dokumentasi!</div>');
            redirect('owner/dokumentasi');
        endif;
        if (isset($_POST['hapusDataKasus'])) :
            // Data Inputan
            $data_inputan = array(
                'sts_doc'     => 'PASIF'
            );
            $this->db->where('id', htmlspecialchars($this->input->post('doc_id')));
            $this->db->update('sistem_dokumentasi', $data_inputan);
            $this->session->set_flashdata('pesan_berhasil', '<div class="alert alert-success" id="pesan_berhasil" role="alert">Berhasil Hapus Data Dokumentasi!</div>');
            redirect('owner/dokumentasi');
        endif;
    }
}

/* End of file ControllerDocumentasi.php and path \application\controllers\owner\dokumentasi\ControllerDocumentasi.php */