/** * Load view * * @access public * @param string $view * @param mixed $data * @param boolean $return * @return void */ public function load_view($view, $data = array(), $return = FALSE) { // Not include master view on ajax request if ($this->_ci->input->is_ajax_request()) { $this->_ci->load->view($view, $data); return; } // Title if (empty($this->title)) { $title = $this->brand_name; } else { $title = $this->title . $this->title_separator . $this->brand_name; } // Description $description = $this->description; // Metadata $metadata = array(); foreach ($this->metadata as $name => $content) { if (strpos($name, 'og:') === 0) { $metadata[] = '<meta property="' . $name . '" content="' . $content . '">'; } else { $metadata[] = '<meta name="' . $name . '" content="' . $content . '">'; } } $metadata = implode('', $metadata); // Javascript $js = array(); foreach ($this->js as $js_file) { $js[] = '<script src="' . assets_url($js_file) . '"></script>'; } $js = implode('', $js); // CSS $css = array(); foreach ($this->css as $css_file) { $css[] = '<link rel="stylesheet" href="' . assets_url($css_file) . '">'; } $person_id = $this->_ci->session->userdata('person_id'); $data['person_id'] = $person_id; $data['person_nm'] = getValue('person_nm', 'hris_persons', array('person_id' => 'where/' . $person_id)); if (!$data['person_nm']) { $data['person_nm'] = "Administrator"; } $data['person_img'] = file_exists('assets/assets/img/profiles/PICTURE_' . $person_id . '.JPG') ? assets_url('assets/img/profiles/PICTURE_' . $person_id . '.JPG') : assets_url('assets/img/profiles/photo-default.png'); //Inbox $inbox = 0; $list_notif = ""; $bawahan = CekBawahan($person_id); if (count($bawahan) > 0) { $q = GetAll("kg_view_attendance", array("no_slide" => "where/1", "date_full " => "order/asc", "date_full" => "group"), array("id_employee" => $bawahan)); if ($q->num_rows() > 0) { foreach ($q->result_array() as $r) { $inbox++; $list_notif .= "<a href='" . site_url('dashboard/index_slide/' . $r['date_full']) . "'>\n <div class='notification-messages notification-messages-full info'>\n <div class='message-wrapper'>\n <div class='heading'>Alert - No Slide Attend</div>\n <div class='description'>" . FormatTanggalShort($r['date_full']) . "</div>\n </div>\n <div class='clearfix'></div>\n </div></a>"; } } //Overtime/////////////////////////////////////////////////////////// $q = GetAll("kg_view_overtime", array("ovt_status" => "where/Waiting"), array("id_employee" => $bawahan)); foreach ($q->result_array() as $r) { $inbox++; $img = GetPP($r['id_employee']); $list_notif .= "<a href='" . site_url('attendance_form/overtime/' . $r['id']) . "'><div class='notification-messages info'>\n <div class='user-profile'>\n <img src='" . $img . "' width='35' height='35'>\n </div>\n <div class='message-wrapper'>\n <div class='heading'>" . $r['person_nm'] . " - Overtime</div>\n <div class='description'>" . FormatTanggalShort($r['date_full']) . "</div>\n <!--<div class='date pull-left'>A min ago</div>-->\n </div>\n <div class='clearfix'></div>\n </div></a>"; } //Cuti/////////////////////////////////////////////////////////// $q = GetAll("kg_view_cuti", array("cuti_status" => "where/Waiting"), array("id_employee" => $bawahan)); foreach ($q->result_array() as $r) { $inbox++; $img = GetPP($r['id_employee']); $list_notif .= "<a href='" . site_url('attendance_form/cuti/' . $r['id']) . "'><div class='notification-messages info'>\n <div class='user-profile'>\n <img src='" . $img . "' width='35' height='35'>\n </div>\n <div class='message-wrapper'>\n <div class='heading'>" . $r['person_nm'] . " - Leave</div>\n <div class='description'>" . FormatTanggalShort($r['tgl_start']) . "</div>\n <!--<div class='date pull-left'>A min ago</div>-->\n </div>\n <div class='clearfix'></div>\n </div></a>"; } } //die($list_notif); //OT Notif User Pribadi $q = GetAll("kg_view_overtime", array("ovt_status" => "where/Approve", "is_read" => "where/0", "create_user_id" => "where/" . $person_id)); foreach ($q->result_array() as $r) { $inbox++; $img = GetPP($r['modify_user_id']); $list_notif .= "<a href='" . site_url('attendance_form/overtime/' . $r['id']) . "'><div class='notification-messages info'>\n <div class='user-profile'>\n <img src='" . $img . "' width='35' height='35'>\n </div>\n <div class='message-wrapper'>\n <div class='heading'>" . strtok(GetValue("person_nm", "hris_persons", array("person_id" => "where/" . $r['modify_user_id'])), " ") . " - Approval Overtime</div>\n <div class='description'>" . FormatTanggalShort($r['date_full']) . "</div>\n <!--<div class='date pull-left'>A min ago</div>-->\n </div>\n <div class='clearfix'></div>\n </div></a>"; } //Cuti Notif User Pribadi $q = GetAll("kg_view_cuti", array("cuti_status" => "where/Approve", "is_read" => "where/0", "create_user_id" => "where/" . $person_id)); foreach ($q->result_array() as $r) { $inbox++; $img = GetPP($r['modify_user_id']); $list_notif .= "<a href='" . site_url('attendance_form/cuti/' . $r['id']) . "'><div class='notification-messages info'>\n <div class='user-profile'>\n <img src='" . $img . "' width='35' height='35'>\n </div>\n <div class='message-wrapper'>\n <div class='heading'>" . strtok(GetValue("person_nm", "hris_persons", array("person_id" => "where/" . $r['modify_user_id'])), " ") . " - Approval Leave</div>\n <div class='description'>" . FormatTanggalShort($r['tgl_start']) . "</div>\n <!--<div class='date pull-left'>A min ago</div>-->\n </div>\n <div class='clearfix'></div>\n </div></a>"; } $data['inbox'] = $inbox; $data['list_notif'] = $list_notif; $menu = $this->_ci->uri->segment(1, 0); $data['active'] = $data['active1'] = $data['active2'] = $data['active3'] = $data['active4'] = ""; switch ($menu) { case 'dashboard': $data['active'] = "class='active'"; break; case 'employee': $data['active1'] = "class='active'"; break; case 'attendance': $data['active2'] = "class='active'"; break; case 'attendance_form': $data['active2'] = "class='active'"; break; case 'config': $data['active3'] = "class='active'"; break; case 'report': $data['active4'] = "class='active'"; break; default: ${$data}['active1'] = "class='active'"; break; } //Sub Menu $submenu = $this->_ci->uri->segment(2); $param = $menu . "/" . $submenu; $data['active_1'] = $data['active_2'] = $data['active_3'] = ""; $data['active2_1'] = $data['active2_2'] = $data['active2_3'] = ""; $data['active3_1'] = $data['active3_2'] = $data['active3_3'] = ""; $data['active4_1'] = $data['active4_2'] = $data['active4_3'] = ""; switch ($param) { case 'dashboard/index': $data['active_1'] = "class='active'"; break; case 'dashboard/index_slide': $data['active_2'] = "class='active'"; break; case 'dashboard/overtime': $data['active_3'] = "class='active'"; break; case 'attendance/': $data['active2_1'] = "class='active'"; break; case 'attendance_form/overtime': $data['active2_2'] = "class='active'"; break; case 'config/': $data['active3_1'] = "class='active'"; break; case 'config/holiday': $data['active3_2'] = "class='active'"; break; case 'config/overtime': $data['active3_3'] = "class='active'"; break; default: ${$data}['active3_1'] = "class='active'"; break; } $css = implode('', $css); $header = $this->_ci->load->view('header', $data, TRUE); $footer = $this->_ci->load->view('footer', array(), TRUE); $sidebar = $this->_ci->load->view('sidebar', $data, TRUE); $main_content = $this->_ci->load->view($view, $data, TRUE); $body = $this->_ci->load->view('layout/' . $this->layout, array('header' => $header, 'footer' => $footer, 'sidebar' => $sidebar, 'main_content' => $main_content), TRUE); return $this->_ci->load->view('base_view', array('title' => $title, 'description' => $description, 'metadata' => $metadata, 'js' => $js, 'css' => $css, 'body' => $body, 'ga_id' => $this->ga_id), $return); }
private function _get_datatables_query($param = NULL) { //Parameter $exp = explode("~", $param['tgl']); $where = "date_full >= '" . $exp[0] . "' AND date_full <= '" . $exp[1] . "' "; if (isset($param['divisi']) && $param['divisi'] > 0) { $id_sec = "("; $q = GetAll("hris_orgs", array("parent_id" => "where/" . $param['divisi'])); foreach ($q->result_array() as $r) { $id_sec .= "'" . $r['org_id'] . "',"; } $id_sec = substr($id_sec, 0, -1) . ")"; $where .= "AND org_id in " . $id_sec . " "; } if (isset($param['section']) && $param['section'] > 0) { $where .= "AND org_id='" . $param['section'] . "' "; } if (isset($param['position']) && $param['position'] > 0) { $where .= "AND job_class_id='" . $param['position'] . "' "; } if (isset($param['grade']) && $param['grade'] > 0) { $where .= "AND grade_job_class='" . $param['grade'] . "' "; } if (isset($param['regs'])) { if ($param['regs'] == "reguler") { $where .= "AND group_shift='N.A.' "; } else { if ($param['regs'] == "shift") { $where .= "AND group_shift in ('A', 'B', 'C', 'D') "; } } //$this->db->where_in("group_shift", array("A","B","C","D")); } $person_id = permission(); if ($person_id != 1) { $bawahan = CekBawahan($person_id); $id_bawahan = "('" . $person_id . "',"; foreach ($bawahan as $r) { $id_bawahan .= "'" . $r . "',"; } $id_bawahan = substr($id_bawahan, 0, -1) . ")"; $where .= "AND person_id in " . $id_bawahan . " "; } //Query $select = "id, ext_id, person_nm, id_employee as a_id, SUM(jhk) as jhk, SUM(sakit) as sakit,\n SUM(cuti) as cuti,SUM(ijin) as ijin, SUM(late) as late, SUM(alpa) as alpa,SUM(off) as off, SUM(jh) as jh"; $this->db->select($select); $this->db->from($this->table); $i = 0; $like = ""; foreach ($this->column as $item) { if (isset($_POST['search']['value'])) { //($i===0) ? $this->db->like($item, $_POST['search']['value']) : $this->db->or_like($item, $_POST['search']['value']); $like .= $i === 0 ? " AND (" . $item . " LIKE '%" . $_POST['search']['value'] . "%' " : " OR " . $item . " LIKE '%" . $_POST['search']['value'] . "%' "; } $column[$i] = $item; $i++; } if ($like != "") { $like .= ")"; $this->db->where($where . $like); } else { $this->db->where($where); } $this->db->group_by(array("id_employee", "person_nm")); if (isset($_POST['order'])) { $this->db->order_by($column[$_POST['order']['0']['column']], $_POST['order']['0']['dir']); } else { if (isset($this->order)) { $order = $this->order; $this->db->order_by(key($order), $order[key($order)]); } } $this->db->order_by("person_nm", "asc"); }
function form_cuti($flag = NULL) { $webmaster_id = permission(); $data['path_file'] = $this->filename; $data['flag'] = $data['id'] = $flag; $data['tgl_start'] = $data['tgl_end'] = $data['keterangan'] = ""; $data['cuti_reason'] = $data['telp_cuti'] = $data['feedback'] = $data['cuti_status'] = ""; $data['id_emp'] = $data['id_pengganti'] = $data['total_cuti'] = $data['cuti_berjalan'] = ""; $data['max_leave_day'] = GetSisaCuti($webmaster_id, date("2016-12-31")); $data['duration'] = 0; $data['opt_reason'] = GetOptReasonCuti(); $data['opt_pengganti'] = GetOptPengganti($webmaster_id, 1); $data['opt_status'] = GetOptStatusForm(); if ($flag) { $q = GetAll("kg_view_cuti", array("id" => "where/" . $flag)); foreach ($q->result_array() as $r) { if (in_array($r['create_user_id'], CekBawahan($webmaster_id)) || $r['create_user_id'] == $webmaster_id) { $data['employee_nm'] = $r['ext_id'] . " - " . $r['person_nm']; $data['id_emp'] = $r['id_employee']; $data['opt_pengganti'] = GetOptPengganti($data['id_emp'], 1); $data['duration'] = $r['hari_ref'] ? $r['hari_ref'] : $r['hari']; $data['max_leave_day'] = GetSisaCuti($webmaster_id, date("Y-m-d")); $data['tgl_start'] = $r['tgl_start_ref'] != "0000-00-00" ? $r['tgl_start_ref'] : $r['tgl_start']; $data['tgl_end'] = $r['tgl_end_ref'] != "0000-00-00" ? $r['tgl_end_ref'] : $r['tgl_end']; $data['cuti_reason'] = $r['id_reason_cuti']; $data['id_pengganti'] = $r['id_pengganti']; $data['telp_cuti'] = $r['telp_cuti']; $data['keterangan'] = $r['keterangan']; $data['feedback'] = $r['feedback'] == 0 ? "" : $r['feedback']; $data['cuti_status'] = $r['cuti_status']; if ($r['create_user_id'] == $webmaster_id) { $data['flag'] = ""; $this->db->where("id", $flag); $this->db->update("kg_cuti", array("is_read" => 1)); } //Cek Revisi if (($r['tgl_start'] != $r['tgl_start_ref'] || $r['tgl_end'] != $r['tgl_end_ref']) && $r['cuti_status'] == "Approve") { $revisi = 1; } else { $revisi = 0; } $data['revisi'] = $revisi; } else { $data['flag'] = ""; } } } $this->load->view('form_cuti', $data); }
private function _get_datatables_query_approve($param = NULL) { //Paramter $exp = explode("~", $param['tgl']); $where = "tgl_start >= '" . $exp[0] . "' AND tgl_start <= '" . $exp[1] . "' "; if (isset($param['person_id']) && $param['person_id'] > 0) { $get_bawahan = CekBawahan($param['person_id']); $bawahan = join($get_bawahan, ','); $where .= "AND (create_user_id='" . $param['person_id'] . "' "; if (count($get_bawahan) > 0) { $where .= " OR create_user_id in (" . $bawahan . ")) "; } else { $where .= " ) "; } } //Query $select = "*"; $this->db->select($select); $this->db->from($this->table); $i = 0; $like = ""; foreach ($this->column_approve as $item) { if ($_POST['search']['value']) { //($i===0) ? $this->db->like($item, $_POST['search']['value']) : $this->db->or_like($item, $_POST['search']['value']); $like .= $i === 0 ? " AND (" . $item . " LIKE '%" . $_POST['search']['value'] . "%' " : " OR " . $item . " LIKE '%" . $_POST['search']['value'] . "%' "; } $column[$i] = $item; $i++; } if ($like != "") { $like .= ")"; $this->db->where($where . $like); } else { $this->db->where($where); } if (isset($_POST['order'])) { $this->db->order_by($column[$_POST['order']['0']['column']], $_POST['order']['0']['dir']); } else { if (isset($this->order)) { $order = $this->order; $this->db->order_by(key($order), $order[key($order)]); } } $this->db->order_by("tgl_start_ref", "asc"); }
private function _get_datatables_query($param = NULL) { $where = "bulan = '" . $param['bulan'] . "' AND tahun = '" . $param['tahun'] . "' "; if (isset($param['divisi']) && $param['divisi'] > 0) { $id_sec = "("; $q = GetAll("hris_orgs", array("parent_id" => "where/" . $param['divisi'])); foreach ($q->result_array() as $r) { $id_sec .= "'" . $r['org_id'] . "',"; } $id_sec = substr($id_sec, 0, -1) . ")"; $where .= "AND org_id in " . $id_sec . " "; } if (isset($param['section']) && $param['section'] > 0) { $where .= "AND org_id='" . $param['section'] . "' "; } if (isset($param['position']) && $param['position'] > 0) { $where .= "AND job_class_id='" . $param['position'] . "' "; } if (isset($param['grade']) && $param['grade'] > 0) { $where .= "AND grade_job_class='" . $param['grade'] . "' "; } if (isset($param['regs'])) { if ($param['regs'] == "reguler") { $where .= "AND group_shift='N.A.' "; } else { if ($param['regs'] == "shift") { $where .= "AND group_shift in ('A', 'B', 'C', 'D') "; } } //$this->db->where_in("group_shift", array("A","B","C","D")); } $person_id = permission(); if ($person_id != 1) { $bawahan = CekBawahan($person_id); $id_bawahan = "('" . $person_id . "',"; foreach ($bawahan as $r) { $id_bawahan .= "'" . $r . "',"; } $id_bawahan = substr($id_bawahan, 0, -1) . ")"; $where .= "AND person_id in " . $id_bawahan . " "; } //Query $this->db->select("*"); $this->db->from($this->table); $i = 0; $like = ""; foreach ($this->column as $item) { if (isset($_POST['search']['value'])) { //($i===0) ? $this->db->like($item, $_POST['search']['value']) : $this->db->or_like($item, $_POST['search']['value']); $like .= $i === 0 ? " AND (" . $item . " LIKE '%" . $_POST['search']['value'] . "%' " : " OR " . $item . " LIKE '%" . $_POST['search']['value'] . "%' "; } $column[$i] = $item; $i++; } if ($like != "") { $like .= ")"; $this->db->where($where . $like); } else { $this->db->where($where); } if (isset($_POST['order'])) { $this->db->order_by($column[$_POST['order']['0']['column']], $_POST['order']['0']['dir']); } else { if (isset($this->order)) { $order = $this->order; $this->db->order_by(key($order), $order[key($order)]); } } $this->db->order_by("person_nm", "asc"); }