<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class Form extends CI_Controller {
  
  public function __construct(){
    parent::__construct();
    //panggil model
    $this->load->model('siswamodel');
    //proteksi halaman
    $this->simple_login->check_login();
  }
  
  public function search(){
    // Ambil data pendaftar yang dikirim via ajax post
    $no_pendaftaran = $this->input->post('no_pendaftaran');    
    $siswa = $this->siswamodel->viewByNo($no_pendaftaran);
    
    if( ! empty($siswa)){ // Jika data siswa ada/ditemukan
      // Buat sebuah array
      $callback = array(
        'status'          => 'success', // Set array status dengan success
        'nama_lengkap'    => $siswa->nama_lengkap, // Set array nama 
        'sekolah_asal'    => $siswa->sekolah_asal, // Set array sekolah        
        'kompetensi'      => $siswa->kompetensi, // Set array kompetensi
        'no_hp'           => $siswa->no_hp, // Set array no.hp
        'nama_ayah'       => $siswa->nama_ayah, // Set array nama ayah    
        'tlp_ayah'        => $siswa->tlp_ayah, // tlp   
        'nama_ibu'        => $siswa->nama_ibu, // Set array nama ibu  
        'tlp_ibu'         => $siswa->tlp_ibu, // tlp    
      );
    }else{
      $callback = array('status' => 'failed'); // set array status dengan failed
    }
    echo json_encode($callback); // konversi varibael $callback menjadi JSON
  }

  public function index(){
   // $form = $this->siswamodel->listing();
    $total = $this->siswamodel->total();

    //validasi input
    $valid = $this->form_validation;    

     //check nama
    $this->form_validation->set_rules('nama_lengkap', 'Nama Peserta Harus Terisi ', 'required',
      array(  'required'    => '%s Dengan Menekan Tombol Cari'));

    $valid->set_rules('no_pendaftaran','Nilai tidak dapat disimpan, ','required|is_unique[nilai_tes.no_pendaftaran]',
      array( 'required'    => '%s harus diisi',
             'is_unique'   => '%s nomor pendaftaran yang diinput sudah mengikuti tes'));   

    $valid->set_rules('btq_membaca','Membaca','required',
      array(  'required'    => '%s harus diisi'));
    
    $valid->set_rules('btq_makhrojul','Makhrojul','required',
      array(  'required'    => '%s harus diisi'));
    
    $valid->set_rules('btq_tajwid','Tajwid','required',
      array(  'required'    => '%s harus diisi'));
    
    $valid->set_rules('btq_huruftunggal','Huruf tunggal','required',
      array(  'required'    => '%s harus diisi'));
    
    $valid->set_rules('btq_merangkaihuruf','Membaca','required',
      array(  'required'    => '%s harus diisi'));
    
    $valid->set_rules('btq_kerapihan','Kerapihan','required',
      array(  'required'    => '%s harus diisi'));
    
    $valid->set_rules('btq_akhlak','Akhlak','required',
      array(  'required'    => '%s harus diisi'));
    
    $valid->set_rules('w2n_alasan','Alasan','required',
      array(  'required'    => '%s harus diisi'));
    
    $valid->set_rules('w2n_kepercayaan','Kepercayaan','required',
      array(  'required'    => '%s harus diisi'));

    $valid->set_rules('w2n_penanganan','Penanganan','required',
      array(  'required'    => '%s harus diisi'));

    $valid->set_rules('w2n_kebiasaan','Kebiasaan','required',
      array(  'required'    => '%s harus diisi'));

    $valid->set_rules('w2n_psikologi','Psikologi','required',
      array(  'required'    => '%s harus diisi'));

    $valid->set_rules('w2n_sholat','Sholat','required',
      array(  'required'    => '%s harus diisi'));
    
    $valid->set_rules('w2n_keikutsertaan','Keikutsertaan','required',
      array(  'required'    => '%s harus diisi'));

    $valid->set_rules('w2n_kesediaan','Kesediaan','required',
      array(  'required'    => '%s harus diisi'));

    //jika sudah dicek dan error
    if($valid->run()===FALSE) {      
  
        $data = array(    'title'   => 'Jumlah Pendaftar Yang Sudah Tes BTQ & Wawancara [ '.$total->total.' ]', 
                          //'form '    => $form,         
                          'content' => 'form/index'
                      );
        $this->load->view('layout/wrapper', $data, FALSE);
    //jika validasi oke, masuk database
    }else{
      $inp  = $this->input;
      $data = array(  'no_pendaftaran'      => $inp->post('no_pendaftaran'),
                      'btq_membaca'         => $inp->post('btq_membaca'),
                      'btq_makhrojul'       => $inp->post('btq_makhrojul'),
                      'btq_tajwid'          => $inp->post('btq_tajwid'),
                      'btq_huruftunggal'    => $inp->post('btq_huruftunggal'),
                      'btq_merangkaihuruf'  => $inp->post('btq_merangkaihuruf'),
                      'btq_kerapihan'       => $inp->post('btq_kerapihan'),
                      'btq_akhlak'          => $inp->post('btq_akhlak'),
                      'w2n_alasan'          => $inp->post('w2n_alasan'),
                      'w2n_kepercayaan'     => $inp->post('w2n_kepercayaan'),
                      'w2n_penanganan'      => $inp->post('w2n_penanganan'),
                      'w2n_kebiasaan'       => $inp->post('w2n_kebiasaan'),
                      'w2n_psikologi'       => $inp->post('w2n_psikologi'),
                      'w2n_sholat'          => $inp->post('w2n_sholat'),
                      'w2n_keikutsertaan'   => $inp->post('w2n_keikutsertaan'),
                      'w2n_kesediaan'       => $inp->post('w2n_kesediaan'),
                      'catatan'             => $inp->post('catatan'),
                      'penguji'             => $this->session->userdata('nama'),
                      'tanggal'             => date('Y-m-d H:i:s')
                      
            );           
      //proses oleh model
      $this->siswamodel->tambah($data);    
      
      //edit status siswa
      $inp2  = $this->input;
      $data2 = array(   'no_pendaftaran'      => $inp->post('no_pendaftaran'),
                        'status'              => 'Sudah Tes' );
      $this->siswamodel->edit($data2);
      
      //notifikasi dan redirect
      $this->session->set_flashdata('sukses', 'Data nilai telah ditambah');
      redirect(base_url('nilai'),'refresh');     
    }
    //end masuk database
  }

  public function edit($no_pendaftaran)
  {
    $inp  = $this->input;
    $data = array(   'no_pendaftaran'      => $no_pendaftaran,
                     'status'              => $inp->post('status'));
    $this->siswamodel->edit($data);
  }


  //Delete user
  public function delete($no_pendaftaran)
  {
    $data = array('no_pendaftaran' => $no_pendaftaran);
    //proses hapus
    $this->siswamodel->delete($data);
    //notifikasi
    $this->session->set_flashdata('sukses', 'Data nilai telah dihapus');
    redirect(base_url('nilai'),'refresh');
  }  
} 
