[ Mini Kiebo ]
Server: Windows NT AKFAR_SERVER 10.0 build 26200 (Windows 10) AMD64
Path:
D:
/
xampp
/
htdocs
/
smk
/
application
/
controllers
/
akademik
/
[
Home
]
File: Presensi_konfigurasi.php
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); class Presensi_konfigurasi extends Member_Controller { private $kode_menu = 'akademik-presensi'; private $url = 'akademik/presensi_konfigurasi'; function __construct(){ parent:: __construct(); $this->load->model('akademik/kelas_model'); $this->load->model('akademik/tingkat_model'); $this->load->model('akademik/jurusan_model'); $this->load->model('akademik/thnajaran_model'); $this->load->model('akademik/presensi_model'); $this->load->model('akademik/presensisiswa_model'); } function cek_kebutuhan(){ $thnajaran = $this->thnajaran_model->get_all_thnajaran_count()->row()->hasil; $tingkat = $this->tingkat_model->get_all_tingkat_count()->row()->hasil; if($thnajaran>0 AND $tingkat>0){ return true; }else{ return false; } } public function index($page=null, $id=null){ $data['kode_menu'] = $this->kode_menu; $data['nama'] = $this->access->get_nama(); if($this->cek_kebutuhan()){ parent::cek_akses_crud($data['kode_menu'], 1); $query_thnajaran = $this->thnajaran_model->get_thnajaran_by_last_ts()->row(); $data['id_thnajaran'] = $query_thnajaran->id; $data['info_thnajaran'] = $query_thnajaran->thnajaran; $data['info_keterangan'] = $query_thnajaran->keterangan; $data['tanggal'] = date('Y-m-d'); $this->template->display_admin($this->url.'/konfigurasi_view', 'Konfigurasi Presensi Siswa', $data); }else{ $this->template->display_admin($this->url.'/kebutuhan_view', 'Kebutuhan Data Presensi Harian', $data); } } function tes(){ $start_date = '2015-01-01'; $end_date = '2015-02-20'; while (strtotime($start_date) <= strtotime($end_date)) { echo $start_date.'<br />'; $start_date = date ("Y-m-d", strtotime("+1 days", strtotime($start_date))); } } function add(){ $this->load->library('form_validation'); $this->form_validation->set_rules('tglawal', 'Tanggal Awal','required'); $this->form_validation->set_rules('tglakhir', 'Tanggal Akhir','required'); if($this->form_validation->run() == TRUE){ $tglawal = $this->input->post('tglawal', TRUE); $tglakhir = $this->input->post('tglakhir', TRUE); $awal = date('Y-m-d', strtotime($tglawal)); $akhir = date('Y-m-d', strtotime($tglakhir)); if($akhir >= $awal){ if($this->presensi_model->cek_presensi($tglawal, $tglakhir)->row()->hasil>0){ $status['status'] = 0; $status['pesan'] = 'Ada tanggal dalam Rentang yang dimasukkan sudah terdaftar !'; }else{ $query_thnajaran = $this->thnajaran_model->get_thnajaran_by_last_ts()->row(); $tgl_thnajaran = date('Y-m-d', strtotime($query_thnajaran->tglmulai)); if($awal >= $tgl_thnajaran){ while (strtotime($tglawal) <= strtotime($tglakhir)) { $data['id_thnajaran'] = $query_thnajaran->id; $data['tanggal'] = $tglawal; $this->presensi_model->save($data); $tglawal = date ("Y-m-d", strtotime("+1 days", strtotime($tglawal))); } $status['status'] = 1; $status['pesan'] = 'Data Hari berhasil disimpan'; }else{ $status['status'] = 0; $status['pesan'] = 'Tanggal lebih awal dari Tanggal Tahun Ajaran !'; } } }else{ $status['status'] = 0; $status['pesan'] = 'Tanggal Awal lebih baru dari Tanggal Akhir !'; } }else{ $status['status'] = 0; $status['pesan'] = 'Hari tidak dapat disimpan !'; } echo json_encode($status); } function delete(){ $this->load->library('form_validation'); $this->form_validation->set_rules('idpresensi[]', 'ID Presensi','required'); if($this->form_validation->run() == TRUE){ $presensi = $this->input->post('idpresensi', TRUE); $counter = 0; foreach( $presensi as $kunci => $isi ) { if($isi=="on"){ //if($this->presensisiswa_model->cek_presensisiswa_by_idpresensi($kunci)->row()->hasil>0){ // ++$counter; //}else{ $this->presensi_model->delete($kunci); //} } } //if($counter>0){ // $status['status'] = 1; // $status['pesan'] = 'Tidak semua Presensi Harian dihapus. Ada '.counter.' yang tidak dapat dihapus karena masih digunakan'; //}else{ $status['status'] = 1; $status['pesan'] = 'Tanggal Presensi Harian berhasil dihapus'; //} }else{ $status['status'] = 0; $status['pesan'] = 'Tanggal Presensi Harian tidak bisa dihapus'; } echo json_encode($status); } function get_all_hari(){ $this->load->library('tools'); // variable initialization $search = ""; $start = 0; $rows = 10; // get search value (if any) if (isset($_GET['sSearch']) && $_GET['sSearch'] != "" ) { $search = $_GET['sSearch']; } // limit $start = $this->get_start(); $rows = $this->get_rows(); // run query to get user listing $query_thnajaran = $this->thnajaran_model->get_thnajaran_by_last_ts()->row(); $query = $this->presensi_model->get_all_presensi($start, $rows, $search, $query_thnajaran->id); $iFilteredTotal = $query->num_rows(); $iTotal=$this->presensi_model->get_all_presensi_count($search, $query_thnajaran->id)->row()->hasil; $output = array( "sEcho" => intval($_GET['sEcho']), "iTotalRecords" => $iTotal, "iTotalDisplayRecords" => $iTotal, "aaData" => array() ); // get result after running query and put it in array $i=$start; $jurusan = $query->result(); foreach ($jurusan as $temp) { $record = array(); $record[] = '<input type="checkbox" name="idpresensi['.$temp->id.']" >'; $record[] = ++$i; $record[] = $this->tools->indonesian_date ($temp->tanggal, 'l, d F Y', ''); $output['aaData'][] = $record; } // format it to JSON, this output will be displayed in datatable echo json_encode($output); } /** * funsi tambahan * * */ function get_start() { $start = 0; if (isset($_GET['iDisplayStart'])) { $start = intval($_GET['iDisplayStart']); if ($start < 0) $start = 0; } return $start; } function get_rows() { $rows = 10; if (isset($_GET['iDisplayLength'])) { $rows = intval($_GET['iDisplayLength']); if ($rows < 5 || $rows > 500) { $rows = 10; } } return $rows; } function get_sort_dir() { $sort_dir = "ASC"; $sdir = strip_tags($_GET['sSortDir_0']); if (isset($sdir)) { if ($sdir != "asc" ) { $sort_dir = "DESC"; } } return $sort_dir; } }