Files
web-sekolah/application/controllers/Form.php
T
2026-06-26 13:37:55 +07:00

165 lines
6.6 KiB
PHP

<?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');
}
}