Example #1
0
 /**
  * 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);
 }
Example #2
0
 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");
 }
Example #3
0
 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);
 }
Example #4
0
 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");
 }
Example #5
0
 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");
 }