Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /* application\controllers\admin\perencanaan.php */
- <?php defined('BASEPATH') OR exit('No direct script access allowed');
- class Perencanaan extends Backend_Controller {
- protected $activemenu = 'perencanaan';
- public function __construct() {
- parent::__construct();
- $this->template->set('activemenu', $this->activemenu);
- $this->load->library('custom_fuction');
- $admin_group = array(1,2,3,5,6);
- hak_akses($admin_group);
- }
- public function pengetahuan(){
- $pilih_rombel = '<a href="'.site_url('admin/perencanaan/add_pengetahuan').'" class="btn btn-success" style="float:right;"><i class="fa fa-plus-circle"></i> Tambah Data</a>';
- $this->template->title('Administrator Panel')
- ->set_layout($this->admin_tpl)
- ->set('page_title', 'Perencanaan Penilaian Pengetahuan')
- ->set('pilih_rombel', $pilih_rombel)
- ->build($this->admin_folder.'/perencanaan/list_rencana');
- }
- public function add_pengetahuan(){
- $data['ajarans'] = Ajaran::all();
- $loggeduser = $this->ion_auth->user()->row();
- if($loggeduser->data_guru_id){
- $data_mapel = Kurikulum::find('all', array('conditions' => "guru_id = $loggeduser->data_guru_id", 'group' => 'rombel_id','order'=>'rombel_id ASC'));
- foreach($data_mapel as $datamapel){
- $rombel_id[] = $datamapel->rombel_id;
- }
- $data['rombels'] = Datarombel::find('all', array('conditions' => array('id IN (?)', $rombel_id)));
- } else {
- $data['rombels'] = Datarombel::all();
- }
- $data['kelas'] = Datarombel::find('all', array('group' => 'tingkat','order'=>'tingkat ASC'));
- $this->template->title('Administrator Panel')
- ->set_layout($this->admin_tpl)
- ->set('form_action', 'admin/perencanaan/simpan_perencanaan')
- ->set('page_title', 'Perencanaan Penilaian Pengetahuan')
- ->set('query', 'kd')
- ->set('kompetensi_id', 1)
- ->build($this->admin_folder.'/perencanaan/add_perencanaan',$data);
- }
- public function keterampilan(){
- $pilih_rombel = '<a href="'.site_url('admin/perencanaan/add_keterampilan').'" class="btn btn-success" style="float:right;"><i class="fa fa-plus-circle"></i> Tambah Data</a>';
- $this->template->title('Administrator Panel')
- ->set_layout($this->admin_tpl)
- ->set('page_title', 'Perencanaan Penilaian Keterampilan')
- ->set('pilih_rombel', $pilih_rombel)
- ->build($this->admin_folder.'/perencanaan/list_rencana');
- }
- public function add_keterampilan(){
- $data['ajarans'] = Ajaran::all();
- $loggeduser = $this->ion_auth->user()->row();
- if($loggeduser->data_guru_id){
- $data_mapel = Kurikulum::find('all', array('conditions' => "guru_id = $loggeduser->data_guru_id", 'group' => 'rombel_id','order'=>'rombel_id ASC'));
- foreach($data_mapel as $datamapel){
- $rombel_id[] = $datamapel->rombel_id;
- }
- $data['rombels'] = Datarombel::find('all', array('conditions' => array('id IN (?)', $rombel_id)));
- } else {
- $data['rombels'] = Datarombel::all();
- }
- $data['kelas'] = Datarombel::find('all', array('group' => 'tingkat','order'=>'tingkat ASC'));
- $this->template->title('Administrator Panel')
- ->set_layout($this->admin_tpl)
- ->set('form_action', 'admin/perencanaan/simpan_perencanaan')
- ->set('page_title', 'Perencanaan Penilaian Keterampilan')
- ->set('query', 'kd')
- ->set('kompetensi_id', 2)
- ->build($this->admin_folder.'/perencanaan/add_perencanaan',$data);
- }
- public function simpan_perencanaan(){
- if($_POST){
- //test($_POST);
- //die();
- $kompetensi_id = $_POST['kompetensi_id'];
- $ajaran_id = $_POST['ajaran_id'];
- $rombel_id = $_POST['rombel_id'];
- $id_mapel = $_POST['id_mapel'];
- $nama_penilaian = $_POST['nama_penilaian'];
- $bentuk_penilaian = $_POST['bentuk_penilaian'];
- $bobot_penilaian = isset($_POST['bobot_penilaian']) ? $_POST['bobot_penilaian'] : '';
- $keterangan_penilaian = $_POST['keterangan_penilaian'];
- $bobot_penilaian_result = 1;
- if($kompetensi_id == 1){
- $redirect = 'pengetahuan';
- } else {
- $redirect = 'keterampilan';
- }
- for ($i = 1; $i <= count($nama_penilaian); $i++) {
- $kd[] = isset($_POST['kd_'.$i]) ? $_POST['kd_'.$i] : '';
- $kd_id[] = isset($_POST['kd_id_'.$i]) ? $_POST['kd_id_'.$i] : '';
- }
- $rencana = new Rencana();
- $rencana->ajaran_id = $ajaran_id;
- $rencana->id_mapel = $id_mapel;
- $rencana->rombel_id = $rombel_id;
- $rencana->kompetensi_id = $kompetensi_id;
- $rencana->save();
- foreach($kd as $k=>$v){
- if($bobot_penilaian){
- if($bobot_penilaian[$k] != 0 || $bobot_penilaian[$k] != ''){
- $bobot_penilaian_result = $bobot_penilaian[$k];
- }
- } else {
- $bobot_penilaian_result = '0';
- }
- if(is_array($v)){
- foreach($v as $ks=>$vs){
- $get_post_kd = explode("|", $vs);
- $id_kompetensi = $get_post_kd[0];
- $id_kd = $get_post_kd[1];
- $new_rencana_penilaian = new Rencanapenilaian();
- $new_rencana_penilaian->rencana_id = $rencana->id;
- $new_rencana_penilaian->kompetensi_id = $kompetensi_id;
- $new_rencana_penilaian->nama_penilaian = $nama_penilaian[$k];
- $new_rencana_penilaian->bentuk_penilaian= $bentuk_penilaian[$k];
- $new_rencana_penilaian->bobot_penilaian = $bobot_penilaian_result;
- $new_rencana_penilaian->keterangan_penilaian = $keterangan_penilaian[$k];
- $new_rencana_penilaian->kd_id = $id_kd;
- $new_rencana_penilaian->kd = $id_kompetensi;
- $new_rencana_penilaian->save();
- }
- }
- }
- $this->session->set_flashdata('success', 'Berhasil menambah rencana penilaian '.$redirect);
- redirect('admin/perencanaan/'.$redirect);
- }
- }
- public function update_perencanaan(){
- if($_POST){
- $rencana_id = $_POST['rencana_id'];
- $kompetensi_id = $_POST['kompetensi_id'];
- $ajaran_id = $_POST['ajaran_id'];
- $rombel_id = $_POST['rombel_id'];
- $id_mapel = $_POST['id_mapel'];
- $nama_penilaian = $_POST['nama_penilaian'];
- $bentuk_penilaian = $_POST['bentuk_penilaian'];
- $bobot_penilaian = $_POST['bobot_penilaian'];
- // debug_var($_POST); exit;
- $bobot_penilaian_result = 1;
- if($kompetensi_id == 1){
- $redirect = 'pengetahuan';
- } else {
- $redirect = 'keterampilan';
- }
- for ($i = 1; $i <= count($nama_penilaian); $i++) {
- $kd[] = isset($_POST['kd_'.$i]) ? $_POST['kd_'.$i] : '';
- $kd_id[] = isset($_POST['kd_id_'.$i]) ? $_POST['kd_id_'.$i] : '';
- }
- $rencana = Rencana::find($rencana_id);
- if($rencana){
- foreach($kd as $k=>$v){
- if(is_array($v)){
- foreach($v as $ks=>$vs){
- $get_post_kd = explode("|", $vs);
- $id_kompetensi = $get_post_kd[0];
- $id_kd = $get_post_kd[1];
- $rencana_penilaian = Rencanapenilaian::find_all_by_rencana_id_and_nama_penilaian_and_kompetensi_id_and_kd_id($rencana->id,$nama_penilaian[$k],$kompetensi_id,$id_kd);
- if($rencana_penilaian){
- if($bobot_penilaian[$k] != 0 || $bobot_penilaian[$k] != ''){
- $bobot_penilaian_result = $bobot_penilaian[$k];
- }
- foreach($rencana_penilaian as $rp){
- $id_rp[] = $rp->id;
- $rp->update_attributes(
- array(
- 'nama_penilaian' => $nama_penilaian[$k],
- 'bentuk_penilaian' => $bentuk_penilaian[$k],
- 'bobot_penilaian' => $bobot_penilaian_result,
- 'kd_id' => $id_kd,
- 'kd' => $id_kompetensi
- )
- );
- }
- } else {
- $new_rencana_penilaian = new Rencanapenilaian();
- $new_rencana_penilaian->rencana_id = $rencana->id;
- $new_rencana_penilaian->kompetensi_id = $kompetensi_id;
- $new_rencana_penilaian->nama_penilaian = $nama_penilaian[$k];
- $new_rencana_penilaian->bentuk_penilaian= $bentuk_penilaian[$k];
- $new_rencana_penilaian->bobot_penilaian = $bobot_penilaian[$k];
- $new_rencana_penilaian->kd_id = $id_kd;
- $new_rencana_penilaian->kd = $id_kompetensi;
- $new_rencana_penilaian->save();
- $new_rp[] = $new_rencana_penilaian->id;
- }
- }
- }
- }
- if(isset($id_rp)){
- if(isset($new_rp)){
- $id_rp = array_merge($id_rp,$new_rp);
- }
- $del_rp = Rencanapenilaian::find('all', array('conditions' => array('rencana_id = ? AND id not in(?)',$rencana->id,$id_rp)));
- foreach($del_rp as $drp){
- $drp->delete();
- }
- }
- } else {
- //echo $ajaran_id.'=>'.$rombel_id.'=>'.$id_mapel.'=>no_4<br />';
- $rencana = new Rencana();
- $rencana->ajaran_id = $ajaran_id;
- $rencana->id_mapel = $id_mapel;
- $rencana->rombel_id = $rombel_id;
- $rencana->kompetensi_id = $kompetensi_id;
- $rencana->save();
- foreach($kd as $k=>$v){
- if($bobot_penilaian[$k] != 0 || $bobot_penilaian[$k] != ''){
- $bobot_penilaian_result = $bobot_penilaian[$k];
- }
- if(is_array($v)){
- foreach($v as $ks=>$vs){
- $get_post_kd = explode("|", $vs);
- $id_kompetensi = $get_post_kd[0];
- $id_kd = $get_post_kd[1];
- $new_rencana_penilaian = new Rencanapenilaian();
- $new_rencana_penilaian->rencana_id = $rencana->id;
- $new_rencana_penilaian->kompetensi_id = $kompetensi_id;
- $new_rencana_penilaian->nama_penilaian = $nama_penilaian[$k];
- $new_rencana_penilaian->bentuk_penilaian= $bentuk_penilaian[$k];
- $new_rencana_penilaian->bobot_penilaian = $bobot_penilaian_result;
- $new_rencana_penilaian->kd_id = $id_kd;
- $new_rencana_penilaian->kd = $id_kompetensi;
- $new_rencana_penilaian->save();
- //print_r($kd);
- }
- }
- }
- }
- $this->session->set_flashdata('success', 'Berhasil mengupdate rencana penilaian '.$redirect);
- redirect('admin/perencanaan/'.$redirect);
- }
- }
- public function list_pengetahuan($jurusan = NULL, $tingkat = NULL, $rombel = NULL){
- $loggeduser = $this->ion_auth->user()->row();
- $user_groups = $this->ion_auth->get_users_groups($loggeduser->id)->result();
- foreach($user_groups as $user_group){
- $nama_group[] = $user_group->name;
- }
- $search = "";
- $start = 0;
- $rows = 25;
- $ajaran = get_ta();
- // get search value (if any)
- if (isset($_GET['sSearch']) && $_GET['sSearch'] != "" ) {
- $search = $_GET['sSearch'];
- }
- // limit
- $start = $this->custom_fuction->get_start();
- $rows = $this->custom_fuction->get_rows();
- $join_rombel = '';
- $join_mapel = '';
- $id_rombel = '';
- $id_mapel = '';
- if($loggeduser->data_guru_id && !in_array('waka',$nama_group)) { // guru, tapi bukan waka
- // mengambil data mengajar berdasarkan ID Guru yg logged in
- $data_mapel = Kurikulum::find('all', array('conditions' => "guru_id = $loggeduser->data_guru_id", 'order'=>'rombel_id ASC'));
- foreach($data_mapel as $datamapel){
- //$get_id_rombel[$datamapel->rombel_id] = $datamapel->rombel_id; // memasukkan ID rombel yg diajar ke dalam array
- //$get_id_mapel[$datamapel->id_mapel] = $datamapel->id_mapel; // memasukkan ID mapel yg diajar ke dalam array
- $get_id_rombel[] = $datamapel->rombel_id; // memasukkan ID rombel yg diajar ke dalam array
- $get_id_mapel[] = $datamapel->id_mapel; // memasukkan ID mapel yg diajar ke dalam array
- }
- if(isset($get_id_rombel)){
- $id_rombel = array_unique($get_id_rombel);
- $id_rombel = implode(",", $id_rombel);
- } else {
- $id_rombel = '';
- }
- if(isset($get_id_mapel)){
- $id_mapel = array_unique($get_id_mapel);
- $id_mapel = "'" . implode("','", $id_mapel) . "'";//implode(",", $id_mapel);
- } else {
- $id_mapel = '';
- }
- $join_rombel = "AND a.id IN ($id_rombel)";
- $join_mapel = "AND b.id_mapel IN ($id_mapel)";
- }
- if($jurusan && $tingkat == NULL && $rombel == NULL){
- $join = "INNER JOIN data_rombels a ON(rencanas.rombel_id = a.id AND a.kurikulum_id = $jurusan $join_rombel)";
- $join .= "INNER JOIN kurikulums b ON(rencanas.id_mapel = b.id_mapel $join_mapel AND rencanas.rombel_id = b.rombel_id)"; // HW: fix mismatched teacher name
- $sel = 'rencanas.*, b.guru_id AS guru_id';
- }elseif($jurusan && $tingkat && $rombel == NULL){
- $join = "INNER JOIN data_rombels a ON(rencanas.rombel_id = a.id AND a.kurikulum_id = $jurusan AND a.tingkat = $tingkat $join_rombel)";
- $join .= "INNER JOIN kurikulums b ON(rencanas.id_mapel = b.id_mapel $join_mapel AND rencanas.rombel_id = b.rombel_id)"; // HW: fix mismatched teacher name
- $sel = 'rencanas.*, b.guru_id AS guru_id';
- } elseif($jurusan && $tingkat && $rombel){
- $join = "INNER JOIN data_rombels a ON(rencanas.rombel_id = a.id AND a.kurikulum_id = $jurusan AND a.tingkat = $tingkat AND a.id = $rombel $join_rombel)";
- $join .= "INNER JOIN kurikulums b ON(rencanas.id_mapel = b.id_mapel AND b.id_mapel IN ($id_mapel) AND rencanas.rombel_id = b.rombel_id)"; // HW: fix mismatched teacher name
- $sel = 'rencanas.*, b.guru_id AS guru_id';
- } else {
- $join = "INNER JOIN data_rombels a ON(rencanas.rombel_id = a.id $join_rombel)";
- $join .= "INNER JOIN kurikulums b ON(rencanas.id_mapel = b.id_mapel AND rencanas.rombel_id = b.rombel_id)"; // HW: fix mismatched teacher name
- $sel = 'rencanas.*, b.guru_id AS guru_id';
- }
- $query = Rencana::find('all', array('include'=>array('rencanapenilaian'), 'conditions' => "b.guru_id = $loggeduser->data_guru_id AND b.ajaran_id = $ajaran->id AND kompetensi_id = 1 AND (b.id_mapel LIKE '%$search%' OR b.rombel_id LIKE '%$search%')",'limit' => $rows, 'offset' => $start,'order'=>'b.id_mapel ASC, id DESC', 'joins'=> $join, 'select'=>$sel, 'group'=> 'id'));
- $filter = Rencana::find('all', array('conditions' => "b.guru_id = $loggeduser->data_guru_id AND b.ajaran_id = $ajaran->id AND kompetensi_id = 1 AND (b.id_mapel LIKE '%$search%' OR b.rombel_id LIKE '%$search%')",'order'=>'b.id_mapel ASC, id DESC', 'joins'=> $join, 'group'=> 'id'));
- $iFilteredTotal = count($query);
- $iTotal=count($filter);
- $output = array(
- "sEcho" => intval($_GET['sEcho']),
- "iTotalRecords" => $iTotal,
- "iTotalDisplayRecords" => $iTotal,
- "aaData" => array()
- );
- // get result after running query and put it in array
- $i=$start;
- foreach ($query as $temp) {
- $ajaran = Ajaran::find($temp->ajaran_id);
- $rencana_penilaian_group = Rencanapenilaian::find('all', array('conditions' => "rencana_id = $temp->id",'group' => 'nama_penilaian','order'=>'bentuk_penilaian ASC'));
- foreach($rencana_penilaian_group as $rpg){
- $rpg_id[] = $rpg->id;
- }
- if(isset($rpg_id)){
- $rpg_id_result = implode(',',$rpg_id);
- } else {
- $rpg_id_result = 0;
- }
- $nilai = Nilai::find('all', array('conditions' => "rencana_penilaian_id IN ($rpg_id_result)", 'limit'=>1));
- if(!in_array('waka',$nama_group)){ //murni guru
- $admin_akses = '<li><a href="'.site_url('admin/perencanaan/view/'.$temp->id).'" class="toggle-modal"><i class="fa fa-eye"></i> Detil</a></li>';
- if($nilai){
- $admin_akses .= '<li><a href="'.site_url('admin/perencanaan/delete/'.$temp->id).'" class="confirm"><i class="fa fa-power-off"></i> Hapus</a></li>';
- } else {
- $admin_akses .= '<li><a href="'.site_url('admin/perencanaan/edit/1/'.$temp->id).'"><i class="fa fa-pencil"></i> Edit</a></li>';
- $admin_akses .= '<li><a href="'.site_url('admin/perencanaan/delete/'.$temp->id).'" class="confirm"><i class="fa fa-power-off"></i> Hapus</a></li>';
- }
- } else { // guru plus waka
- $admin_akses = '<li><a href="'.site_url('admin/perencanaan/view/'.$temp->id).'" class="toggle-modal"><i class="fa fa-eye"></i> Detil</a></li>';
- if(get_nama_guru($loggeduser->data_guru_id) == get_nama_guru($temp->guru_id)){
- if($nilai){
- $admin_akses .= '<li><a href="'.site_url('admin/perencanaan/delete/'.$temp->id).'" class="confirm"><i class="fa fa-power-off"></i> Hapus</a></li>';
- } else {
- $admin_akses .= '<li><a href="'.site_url('admin/perencanaan/edit/1'.$temp->id).'"><i class="fa fa-pencil"></i> Edit</a></li>';
- $admin_akses .= '<li><a href="'.site_url('admin/perencanaan/delete/'.$temp->id).'" class="confirm"><i class="fa fa-power-off"></i> Hapus</a></li>';
- }
- }
- }
- $jumlah_rencana_penilaian = count($temp->rencanapenilaian);
- $record = array();
- $tombol_aktif = '';
- $record[] = '<div class="text-center"><input type="checkbox" class="satuan" value="'.$temp->id.'" /></div>';
- $record[] = $ajaran->tahun;
- $record[] = get_nama_rombel($temp->rombel_id);
- $record[] = get_nama_mapel($temp->ajaran_id, $temp->rombel_id, $temp->id_mapel);
- $record[] = get_nama_guru($temp->guru_id);
- $record[] = '<div class="text-center">'.count($rencana_penilaian_group).'</div>';
- $record[] = '<div class="text-center">'.$jumlah_rencana_penilaian.'</div>';
- //$record[] = '<div class="text-center">'.$admin_akses.'</div>';
- //$record[] = '<a class="tooltip-left" title="'.$get_kd->kompetensi_dasar.'">'.$temp->kd.'</a>';
- $record[] = '<div class="text-center"><div class="btn-group">
- <button type="button" class="btn btn-default btn-sm">Aksi</button>
- <button type="button" class="btn btn-info btn-sm dropdown-toggle" data-toggle="dropdown">
- <span class="caret"></span>
- <span class="sr-only">Toggle Dropdown</span>
- </button>
- <ul class="dropdown-menu pull-right text-left" role="menu">
- <!--li><a href="javascript:void(0)" class="toggle-modal"><i class="fa fa-eye"></i>Detil</a></li-->
- <!--li><a href="'.site_url('admin/perencanaan/edit/1/'.$temp->id).'"><i class="fa fa-pencil"></i>Edit</a></li-->
- '.$admin_akses.'
- </ul>
- </div></div>';
- $output['aaData'][] = $record;
- }
- if($jurusan && $tingkat){
- if($loggeduser->data_guru_id && !in_array('waka',$nama_group)){
- $get_all_rombel = Datarombel::find('all', array('conditions' => "id IN ($id_rombel) AND kurikulum_id = $jurusan AND tingkat = $tingkat"));
- } else {
- $get_all_rombel = Datarombel::find_all_by_kurikulum_id_and_tingkat($jurusan,$tingkat);
- }
- foreach($get_all_rombel as $allrombel){
- $all_rombel= array();
- $all_rombel['value'] = $allrombel->id;
- $all_rombel['text'] = $allrombel->nama;
- $output['rombel'][] = $all_rombel;
- }
- }
- // format it to JSON, this output will be displayed in datatable
- echo json_encode($output);
- }
- public function view($id){
- $rencana = Rencana::find($id, array('include'=>array('rencanapenilaian')));
- $this->template->title('Administrator Panel : Detil Perencanaan Penilaian')
- ->set_layout($this->modal_tpl)
- ->set('page_title', 'Detil Perencanaan Penilaian')
- ->set('rencana', $rencana)
- ->set('modal_footer', '')
- ->build($this->admin_folder.'/perencanaan/view');
- }
- public function list_keterampilan($jurusan = NULL, $tingkat = NULL, $rombel = NULL){
- $loggeduser = $this->ion_auth->user()->row();
- $user_groups = $this->ion_auth->get_users_groups($loggeduser->id)->result();
- foreach($user_groups as $user_group){
- $nama_group[] = $user_group->name;
- }
- $search = "";
- $start = 0;
- $rows = 25;
- $ajaran = get_ta();
- // get search value (if any)
- if (isset($_GET['sSearch']) && $_GET['sSearch'] != "" ) {
- $search = $_GET['sSearch'];
- }
- // limit
- $start = $this->custom_fuction->get_start();
- $rows = $this->custom_fuction->get_rows();
- $join_rombel = '';
- $join_mapel = '';
- $id_rombel = '';
- $id_mapel = '';
- if($loggeduser->data_guru_id && !in_array('waka',$nama_group)){
- $data_mapel = Kurikulum::find('all', array('conditions' => "guru_id = $loggeduser->data_guru_id",'order'=>'rombel_id ASC'));
- foreach($data_mapel as $datamapel){
- $get_id_rombel[$datamapel->rombel_id] = $datamapel->rombel_id;
- $get_id_mapel[$datamapel->id_mapel] = $datamapel->id_mapel;
- }
- if(isset($get_id_rombel)){
- $id_rombel = array_unique($get_id_rombel);
- $id_rombel = implode(",", $id_rombel);
- } else {
- $id_rombel = 0;
- }
- if(isset($get_id_mapel)){
- $id_mapel = array_unique($get_id_mapel);
- $id_mapel = "'" . implode("','", $id_mapel) . "'";//implode(",", $id_mapel);
- } else {
- $id_mapel = 0;
- }
- $join_rombel = "AND a.id IN ($id_rombel)";
- $join_mapel = "AND b.id_mapel IN ($id_mapel)";
- }
- if($jurusan && $tingkat == NULL && $rombel == NULL){
- $join = "INNER JOIN data_rombels a ON(rencanas.rombel_id = a.id AND a.kurikulum_id = $jurusan $join_rombel)";
- $join .= "INNER JOIN kurikulums b ON(rencanas.id_mapel = b.id_mapel $join_mapel AND rencanas.rombel_id = b.rombel_id)"; // HW: fix mismatched teacher name
- $sel = 'rencanas.*, b.guru_id AS guru_id';
- }elseif($jurusan && $tingkat && $rombel == NULL){
- $join = "INNER JOIN data_rombels a ON(rencanas.rombel_id = a.id AND a.kurikulum_id = $jurusan AND a.tingkat = $tingkat $join_rombel)";
- $join .= "INNER JOIN kurikulums b ON(rencanas.id_mapel = b.id_mapel $join_mapel AND rencanas.rombel_id = b.rombel_id)"; // HW: fix mismatched teacher name
- $sel = 'rencanas.*, b.guru_id AS guru_id';
- } elseif($jurusan && $tingkat && $rombel){
- $join = "INNER JOIN data_rombels a ON(rencanas.rombel_id = a.id AND a.kurikulum_id = $jurusan AND a.tingkat = $tingkat AND a.id = $rombel $join_rombel)";
- $join .= "INNER JOIN kurikulums b ON(rencanas.id_mapel = b.id_mapel AND b.id_mapel IN ($id_mapel) AND rencanas.rombel_id = b.rombel_id)"; // HW: fix mismatched teacher name
- $sel = 'rencanas.*, b.guru_id AS guru_id';
- } else {
- $join = "INNER JOIN data_rombels a ON(rencanas.rombel_id = a.id $join_rombel)";
- $join .= "INNER JOIN kurikulums b ON(rencanas.id_mapel = b.id_mapel $join_mapel AND rencanas.rombel_id = b.rombel_id)"; // HW: fix mismatched teacher name
- $sel = 'rencanas.*, b.guru_id AS guru_id';
- }
- $query = Rencana::find('all', array('include'=>array('rencanapenilaian'), 'conditions' => "b.guru_id = $loggeduser->data_guru_id AND b.ajaran_id = $ajaran->id AND kompetensi_id = 2 AND (b.id_mapel LIKE '%$search%' OR b.rombel_id LIKE '%$search%')",'limit' => $rows, 'offset' => $start,'order'=>'b.id_mapel ASC, id DESC', 'joins'=> $join, 'select'=>$sel, 'group'=> 'id'));
- $filter = Rencana::find('all', array('conditions' => "b.guru_id = $loggeduser->data_guru_id AND b.ajaran_id = $ajaran->id AND kompetensi_id = 2 AND (b.id_mapel LIKE '%$search%' OR b.rombel_id LIKE '%$search%')",'order'=>'b.id_mapel ASC, id DESC', 'joins'=> $join, 'group'=> 'id'));
- $iFilteredTotal = count($query);
- $iTotal=count($filter);
- $output = array(
- "sEcho" => intval($_GET['sEcho']),
- "iTotalRecords" => $iTotal,
- "iTotalDisplayRecords" => $iTotal,
- "aaData" => array()
- );
- // get result after running query and put it in array
- $i=$start;
- foreach ($query as $temp) {
- $ajaran = Ajaran::find($temp->ajaran_id);
- $rencana_penilaian_group = Rencanapenilaian::find('all', array('conditions' => "rencana_id = $temp->id",'group' => 'nama_penilaian','order'=>'bentuk_penilaian ASC'));
- $rencana_penilaian = Rencanapenilaian::find_by_rencana_id($temp->id);
- if ($rencana_penilaian) {
- $nilai = Nilai::find_by_rencana_penilaian_id($rencana_penilaian->id);
- }
- if(!in_array('waka',$nama_group)){ //murni guru
- $admin_akses = '<li><a href="'.site_url('admin/perencanaan/view/'.$temp->id).'" class="toggle-modal"><i class="fa fa-eye"></i> Detil</a></li>';
- if($nilai){
- $admin_akses .= '<li><a href="'.site_url('admin/perencanaan/delete/'.$temp->id).'" class="confirm"><i class="fa fa-power-off"></i> Hapus</a></li>';
- } else {
- $admin_akses .= '<li><a href="'.site_url('admin/perencanaan/edit/2/'.$temp->id).'"><i class="fa fa-pencil"></i> Edit</a></li>';
- $admin_akses .= '<li><a href="'.site_url('admin/perencanaan/delete/'.$temp->id).'" class="confirm"><i class="fa fa-power-off"></i> Hapus</a></li>';
- }
- } else { // guru plus waka
- $admin_akses = '<li><a href="'.site_url('admin/perencanaan/view/'.$temp->id).'" class="toggle-modal"><i class="fa fa-eye"></i> Detil</a></li>';
- if(get_nama_guru($loggeduser->data_guru_id) == get_nama_guru($temp->guru_id)){
- if($nilai){
- $admin_akses .= '<li><a href="'.site_url('admin/perencanaan/delete/'.$temp->id).'" class="confirm"><i class="fa fa-power-off"></i> Hapus</a></li>';
- } else {
- $admin_akses .= '<li><a href="'.site_url('admin/perencanaan/edit/2/'.$temp->id).'"><i class="fa fa-pencil"></i> Edit</a></li>';
- $admin_akses .= '<li><a href="'.site_url('admin/perencanaan/delete/'.$temp->id).'" class="confirm"><i class="fa fa-power-off"></i> Hapus</a></li>';
- }
- }
- }
- $jumlah_rencana_penilaian = count($temp->rencanapenilaian);
- $record = array();
- $tombol_aktif = '';
- $record[] = '<div class="text-center"><input type="checkbox" class="satuan" value="'.$temp->id.'" /></div>';
- $record[] = $ajaran->tahun;
- $record[] = get_nama_rombel($temp->rombel_id);
- $record[] = get_nama_mapel($temp->ajaran_id, $temp->rombel_id, $temp->id_mapel);
- $record[] = get_nama_guru($temp->guru_id);
- $record[] = '<div class="text-center">'.count($rencana_penilaian_group).'</div>';
- $record[] = '<div class="text-center">'.$jumlah_rencana_penilaian.'</div>';
- $record[] = '<div class="text-center"><div class="btn-group">
- <button type="button" class="btn btn-default btn-sm">Aksi</button>
- <button type="button" class="btn btn-info btn-sm dropdown-toggle" data-toggle="dropdown">
- <span class="caret"></span>
- <span class="sr-only">Toggle Dropdown</span>
- </button>
- <ul class="dropdown-menu pull-right text-left" role="menu">
- <!--li><a href="javascript:void(0)" class="toggle-modal"><i class="fa fa-eye"></i>Detil</a></li-->
- <!--li><a href="'.site_url('admin/perencanaan/edit/1/'.$temp->id).'"><i class="fa fa-pencil"></i>Edit</a></li-->
- '.$admin_akses.'
- </ul>
- </div></div>';
- $output['aaData'][] = $record;
- }
- if($jurusan && $tingkat){
- if($loggeduser->data_guru_id && !in_array('waka',$nama_group)){
- $get_all_rombel = Datarombel::find('all', array('conditions' => "id IN ($id_rombel) AND kurikulum_id = $jurusan AND tingkat = $tingkat"));
- } else {
- $get_all_rombel = Datarombel::find_all_by_kurikulum_id_and_tingkat($jurusan,$tingkat);
- }
- foreach($get_all_rombel as $allrombel){
- $all_rombel= array();
- $all_rombel['value'] = $allrombel->id;
- $all_rombel['text'] = $allrombel->nama;
- $output['rombel'][] = $all_rombel;
- }
- }
- // format it to JSON, this output will be displayed in datatable
- echo json_encode($output);
- }
- public function edit($kompetensi_id,$id){
- $data['kompetensi_id'] = $kompetensi_id;
- $data['rencana'] = Rencana::find($id);
- $data['ajarans'] = Ajaran::all();
- $data['rombels'] = Datarombel::all();
- $this->template->title('Administrator Panel')
- ->set_layout($this->admin_tpl)
- ->set('form_action', 'admin/perencanaan/')
- ->set('page_title', 'Edit Perencanaan Penilaian')
- ->build($this->admin_folder.'/perencanaan/edit',$data);
- }
- public function delete($id){
- $super_admin = array('admin','tu','guru');
- if($this->ion_auth->in_group($super_admin)){
- $rencana = Rencana::find($id);
- $rencana->delete();
- $status['type'] = 'success';
- $status['text'] = 'Data berhasil dihapus';
- $status['title'] = 'Data Terhapus!';
- } else {
- $status['type'] = 'error';
- $status['text'] = 'Data tidak terhapus';
- $status['title'] = 'Akses Ditolak!';
- }
- echo json_encode($status);
- }
- public function delete_rp($id){
- $rp = Rencanapenilaian::find($id);
- $all_rencana = Rencanapenilaian::find_all_by_rencana_id_and_kompetensi_id_and_nama_penilaian($rp->rencana_id,$rp->kompetensi_id, $rp->nama_penilaian);
- $super_admin = array('admin','tu','guru');
- if($this->ion_auth->in_group($super_admin)){
- foreach($all_rencana as $rencana){
- $rencana->delete();
- }
- $status['type'] = 'success';
- $status['text'] = 'Data berhasil dihapus';
- $status['title'] = 'Data Terhapus!';
- } else {
- $status['type'] = 'error';
- $status['text'] = 'Data tidak terhapus';
- $status['title'] = 'Akses Ditolak!';
- }
- echo json_encode($status);
- }
- public function multidelete(){
- $ids = $_POST['id'];
- $super_admin = array(1,2);
- if($this->ion_auth->in_group($super_admin)){
- //$ids = $_POST['id'];
- Rencana::table()->delete(array('id' => $ids));
- $status['type'] = 'success';
- $status['text'] = 'Data berhasil dihapus';
- $status['title'] = 'Data Terhapus!';
- } else {
- $status['type'] = 'error';
- $status['text'] = 'Data tidak terhapus';
- $status['title'] = 'Akses Ditolak!';
- }
- echo json_encode($status);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement