Find this useful? Enter your email to receive occasional updates for securing PHP code.

Signing you up...

Thank you for signing up!

PHP Decode

<?php defined('BASEPATH') OR exit('No direct script access allowed'); class Get_dat ex..

Decoded Output download

<?php 
defined('BASEPATH') OR exit('No direct script access allowed'); 
 
class Get_dat extends MX_Controller { 
 
    private $table_db       = 'sys_user'; 
    private $limitLogin     = 1000; //batas user = 1000 
    private $timeLimit      = 60000; //batas login = 1 jam 
 
    function __construct() { 
        parent::__construct(); 
        $this->load->model('admin/m_master','m_master'); 
        // $this->middleware('guest', 'only',  
            // ['dologin', 'index','reminder','redirect_page','select_user','change_session_role_id'] 
        // ); 
        // $this->login_limit(); 
    } 
    public function format_db(){ 
        $arr = $this->m_global->getDataAllArray('mtr_project_unit_trans'); 
        // var_dump($arr);exit; 
        foreach($arr as $key => $ar){ 
            if($ar['pic_y'] == ''){ $ar['pic_y'] = 0;}else{$ar['pic_y'] = (float)$ar['pic_y'];} 
            if($ar['pic_x'] == ''){ $ar['pic_x'] = 0;}else{$ar['pic_x'] = (float)$ar['pic_x'];} 
            if($ar['count_unit'] == ''){ $ar['count_unit'] = 0;}else{$ar['count_unit'] = (float)$ar['count_unit'];} 
            if($ar['lt'] == ''){ $ar['lt'] = 0;}else{$ar['lt'] = (float)$ar['lt'];} 
            if($ar['lb'] == ''){ $ar['lb'] = 0;}else{$ar['lb'] = (float)$ar['lb'];} 
            if($ar['lt_extra'] == ''){ $ar['lt_extra'] = 0;}else{$ar['lt_extra'] = (float)$ar['lt_extra'];} 
            if($ar['prestasi'] == ''){ $ar['prestasi'] = 0;}else{$ar['prestasi'] = (float)$ar['prestasi'];} 
            if($ar['hrg_sat'] == ''){ $ar['hrg_sat'] = 0;}else{$ar['hrg_sat'] = (float)$ar['hrg_sat'];} 
            if($ar['hrg_gross'] == ''){ $ar['hrg_gross'] = 0;}else{$ar['hrg_gross'] = (float)$ar['hrg_gross'];} 
            if($ar['brate'] == ''){ $ar['brate'] = 0;}else{$ar['brate'] = (float)$ar['brate'];} 
            if($ar['irate'] == ''){ $ar['irate'] = 0;}else{$ar['irate'] = (float)$ar['irate'];} 
            if($ar['total_lahan'] == ''){ $ar['total_lahan'] = 0;}else{$ar['total_lahan'] = (float)$ar['total_lahan'];} 
            if($ar['last_update'] == ''){ $ar['last_update'] = null;}else{$ar['last_update'] = date('Y-m-d h:i',strtotime($ar['last_update']));} 
            if($ar['audit_date'] == ''){ $ar['audit_date'] = null;}else{$ar['audit_date'] = date('Y-m-d h:i',strtotime($ar['audit_date']));} 
 
            $data = [ 
                    'code_project'  => $ar['code_project'], 
                    'code_unit'  => $ar['code_unit'], 
                    'level'  => $ar['level'], 
                    'class'  => $ar['class'], 
                    'type_prop'  => $ar['type_prop'], 
                    'pic_y'  => $ar['pic_y'], 
                    'pic_x'  => $ar['pic_x'], 
                    'no_unit'  => $ar['no_unit'], 
                    'lt'  => $ar['lt'], 
                    'lb'  => $ar['lb'], 
                    'lt_extra'  => $ar['lt_extra'], 
                    'hrg_sat'  => $ar['hrg_sat'], 
                    'status'  => $ar['status'], 
                    'prestasi'  => $ar['prestasi'], 
                    'serah'  => $ar['serah'], 
                    'huni'  => $ar['huni'], 
                    'ket'  => $ar['ket'], 
                    'sts_stock'  => $ar['sts_stock'], 
                    'audit_user'  => $ar['audit_user'], 
                    'audit_date'  => $ar['audit_date'], 
                    'hrg_gross'  => $ar['hrg_gross'], 
                    'brate'  => $ar['brate'], 
                    'irate'  => $ar['irate'], 
                    'total_lahan'  => $ar['total_lahan'], 
                    'last_update'  => $ar['last_update'], 
                    'user_update'  => $ar['user_update'], 
                    'category'  => $ar['category'], 
            ]; 
            $this->db->insert('mtr_project_unit',$data); 
 
        } 
    } 
    public function decode() 
    { 
    header("Content-type: image/png"); 
    $data = " 
    "; 
    echo base64_decode($data); 
    } 
    public function tes_rad() 
    { 
        $earthRadius = 6371000*0.001; 
        $latFrom = deg2rad(-6.2954944); 
        $lonFrom = deg2rad(106.6672505); 
        $latTo = deg2rad(-6.1990526); 
        $lonTo = deg2rad(106.8866304); 
         
        $lonDelta = $lonTo - $lonFrom; 
        $a = pow(cos($latTo) * sin($lonDelta), 2) + pow(cos($latFrom) * sin($latTo) - sin($latFrom) * cos($latTo) * cos($lonDelta), 2); 
        $b = sin($latFrom) * sin($latTo) + cos($latFrom) * cos($latTo) * cos($lonDelta); 
 
        $angle = atan2(sqrt($a), $b); 
        echo $angle * $earthRadius; 
    } 
    public function get_radius() 
    { 
        $lat = $_GET['latitude']; 
        $long = $_GET['longitude']; 
        $return['response'] = "false"; 
        $sql_1 = $this->db->where('status',1)->from('sys_radius')->get()->result_array(); 
        foreach($sql_1 as $row){ 
            $get_far = $this->getDistanceBetweenPoints($row['latitude'],$row['longitude'],$lat,$long); 
            if($get_far['kilometers'] <= $row['radius']){ 
                $return['response'] = "true"; 
            }     
        } 
        echo json_encode($return); 
    } 
    public function getDistanceBetweenPoints($lat1=0, $lon1=0, $lat2=0, $lon2=0) { 
        $theta = $lon1 - $lon2; 
        $miles = (sin(deg2rad($lat1)) * sin(deg2rad($lat2))) + (cos(deg2rad($lat1)) * cos(deg2rad($lat2)) * cos(deg2rad($theta))); 
        $miles = acos($miles); 
        $miles = rad2deg($miles); 
        $miles = $miles * 60 * 1.1515; 
        $feet = $miles * 5280; 
        $yards = $feet / 3; 
        $kilometers = $miles * 1.609344; 
        $meters = $kilometers * 1000; 
        return compact('miles','feet','yards','kilometers','meters');  
    } 
    public function absen_cop() 
    { 
        for ($x = 6651; $x <= 6999; $x++) { 
            $im = $this->db->where('id',$x)->get('sys_absen')->row(); 
            if(isset($im->id)){ 
            $data = [ 
                'id' =>$im->id, 
                'name'=>$im->name, 
                'userid'=>$im->userid, 
                'tgl_jam_absen'=>$im->tgl_jam_absen, 
                'location' => $im->location, 
                'keterangan'=> $im->keterangan, 
                'status'=>$im->status, 
                'tgl_jam_sys'=>$im->tgl_jam_sys, 
                'longitude'=>$im->longitude, 
                'latitude'  =>$im->latitude, 
                'dinas' => $im->dinas, 
            ]; 
             
                $this->db->insert('sys_absen_n',$data); 
            } 
             
        } 
    } 
    public function absen_up() 
    { 
        $json = file_get_contents('php://input'); 
        $param = json_decode($json); 
        if($param->userid != null){ 
            $check = $this->db->query("SELECT count(id) as tot FROM sys_absen_n WHERE userid='".$param->userid."' AND tgl_jam_absen::date='".$param->tglmasuk."'::date AND status='".$param->status."'")->row(); 
            if($check->tot == 0){ 
                $data = [ 
                    'name' => $param->fullname, 
                    'userid' => $param->userid, 
                    'email' => $param->email, 
                    'tgl_jam_absen' => $param->tglmasuk, 
                    'location' => $param->location, 
                    'longitude' => $param->longitude, 
                    'latitude' => $param->latitude, 
                    'keterangan' => $param->keterangan, 
                    'status'    => $param->status, 
                    'tgl_jam_sys'=> date("Y-m-d H:i:s") 
                ]; 
                $this->db->insert('sys_absen_n',$data); 
                $last_id = $this->db->insert_id(); 
                if($last_id){ 
                    //start decode and save photo 
                    $b64 = $param->photo; 
                    $bin = base64_decode($b64); 
                    $new_name = $last_id.'_'.$param->userid.'.png'; 
                    $img_file = getcwd().'/public/files/img/'.$new_name; 
                    file_put_contents($img_file, $bin); 
                    // end decode and save photo 
                    $data_photo = ['photo'=>$new_name,'id_absen'=>$last_id,'userid' => $param->userid]; 
                    $this->db->insert('sys_absen_photo_n',$data_photo); 
                    $return = ['id' => $last_id,'status' => 'success']; 
                }else{ 
                    $return = ['id' => null,'status' => 'failed']; 
                } 
            }else{ 
                $return = ['id' => 0,'status' => 'success']; 
            } 
        }else{ 
            $return = ['id' => null,'status' => 'failed']; 
        } 
        echo json_encode($return); 
    } 
    public function absen_mark() 
    { 
        $json = file_get_contents('php://input'); 
        $param = json_decode($json); 
        if($param->userid != null){ 
            $check = $this->db->query("SELECT count(id) as tot FROM sys_absen_n WHERE userid='".$param->userid."' AND tgl_jam_absen::date='".$param->tglmasuk."'::date AND status='".$param->status."'")->row(); 
            if($check->tot == 0){ 
                $data = [ 
                    'name'          => $param->fullname, 
                    'userid'        => $param->userid, 
                    'email'         => $param->email, 
                    'tgl_jam_absen' => $param->tglmasuk, 
                    'location'      => $param->location, 
                    'longitude'     => $param->longitude, 
                    'latitude'      => $param->latitude, 
                    'keterangan'    => $param->keterangan, 
                    'status'        => $param->status, 
                    'tgl_jam_sys'   => date("Y-m-d H:i:s"), 
                    'dinas'         => $param->dinas 
                ]; 
 
                $this->db->insert('sys_absen_n',$data); 
                $last_id = $this->db->insert_id(); 
                if($last_id){ 
                     //start decode and save photo 
                    $b64 = $param->photo; 
                    $bin = base64_decode($b64); 
                    $new_name = $last_id.'_'.$param->userid.'.png'; 
                    $img_file = getcwd().'/public/files/img/'.$new_name; 
                    file_put_contents($img_file, $bin); 
                    // end decode and save photo 
                    $data_photo = ['photo'=>$new_name,'id_absen'=>$last_id,'userid' => $param->userid]; 
                    $this->db->insert('sys_absen_photo_n',$data_photo); 
                    $return = ['id' => $last_id,'status' => 'success']; 
                }else{ 
                    $return = ['id' => null,'status' => 'failed']; 
                } 
            }else{ 
                $return = ['id' => 0,'status' => 'success']; 
            } 
        }else{ 
            $return = ['id' => null,'status' => 'failed']; 
        } 
        echo json_encode($return); 
    } 
    public function checkin() 
    { 
        $user_id = $_GET['userid']; 
        $this->db->where('userid',$user_id); 
        $this->db->where('status','Absen Masuk'); 
        $this->db->where("tgl_jam_absen Like'".date('Y-m-d')."%'"); 
        $this->db->from('sys_absen_n'); 
        $result = $this->db->get(); 
        if($result->num_rows() > 0){ 
            $output['response'] = "false"; 
        }else{ 
            $output['response'] = "true"; 
        } 
        echo json_encode($output); 
    } 
    public function checkout() 
    { 
        $user_id = $_GET['userid']; 
        $this->db->where('userid',$user_id); 
        $this->db->where('status','Absen Masuk'); 
        $this->db->where("tgl_jam_absen Like'".date('Y-m-d')."%'"); 
        $this->db->from('sys_absen_n'); 
        $result = $this->db->get(); 
        if($result->num_rows() > 0){ 
            $output['response_1'] = "true"; 
        }else{ 
            $output['response_1'] = "false"; 
        } 
        $this->db->where('userid',$user_id); 
        $this->db->where('status','Absen Keluar'); 
        $this->db->where("tgl_jam_absen Like'".date('Y-m-d')."%'"); 
        $this->db->from('sys_absen_n'); 
        $result = $this->db->get(); 
        if($result->num_rows() > 0){ 
            $output['response_2'] = "false"; 
        }else{ 
            $output['response_2'] = "true"; 
        } 
        echo json_encode($output); 
 
    } 
    public function get_history_ab() 
    { 
        if($this->uri->segment(4) != null){ 
            $user_id = $this->uri->segment(4); 
            if(date('d') < 26){ 
                $d=strtotime("-1 Months"); 
                $date_1 = date('Y-m',$d).'-26'; 
                $date_2 = date('Y-m').'-26'; 
                $this->db->where('tgl_jam_absen >=',$date_1); 
                $this->db->where('tgl_jam_absen <=',$date_2); 
            }else{ 
                $d=strtotime("+1 Months"); 
                $date_1 = date('Y-m').'-26'; 
                $date_2 = date('Y-m',$d).'-25'; 
                $this->db->where('tgl_jam_absen >=',$date_1); 
                $this->db->where('tgl_jam_absen <=',$date_2); 
            } 
            if($user_id){ 
                $this->db->where("userid",$user_id); 
                $this->db->from('sys_absen_n'); 
                $this->db->order_by('tgl_jam_absen','DESC'); 
            $result = $this->db->get(); 
            if($result->num_rows() > 0){ 
                $data = $result->result(); 
                $output = $data; 
            }else{ 
                $output = null; 
            } 
        }else{ 
            $output = null; 
        } 
            echo json_encode($output);    
        } 
    } 
    public function test_loopd() 
    { 
        date_default_timezone_set('UTC'); 
 
        // Start date 
        $date = '2017-01-29'; 
        // End date 
        $end_date = '2017-12-29'; 
 
        while (strtotime($date) <= strtotime($end_date)) { 
            echo "$date
";  
            echo "<br>"; 
            $date = date("Y-m-d", strtotime("+1 day", strtotime($date))); 
        } 
    } 
    public function izin() 
    { 
        $json = file_get_contents('php://input'); 
        $param = json_decode($json); 
        $b64 = $param->photo; 
        $bin = base64_decode($b64); 
        $new_name = date('Ymd').'_'.$param->userid.'.png'; 
        $img_file = getcwd().'/public/files/img/izin/'.$new_name; 
        file_put_contents($img_file, $bin); 
        $data = [ 
                    'userid'        => $param->userid, 
                    'fullname'      => $param->fullname, 
                    'email'         => $param->email, 
                    'from'          => $param->inputTanggal1, 
                    'to'            => $param->inputTanggal2, 
                    'photo'         => $new_name, 
                    'izin'          => $param->izin, 
                    'keterangan'    => $param->keterangan, 
                    'status'        => 'New', 
                    'date_submit'   => date('Y-m-d') 
 
        ]; 
        $this->db->insert('sys_izin_n',$data); 
        $last_id = $this->db->insert_id(); 
        if($last_id){ 
            $return = ['id' => $last_id,'status' => 'success']; 
        }else{ 
            $return = ['id' => null,'status' => 'failed']; 
        } 
        echo json_encode($return); 
    } 
    public function update_base_i() 
    { 
        for ($x = 1; $x <= 26; $x++) { 
            $im_base = $this->db->where('id',$x)->get('sys_izin')->row(); 
            if(isset($im_base->photo)){ 
                // $b64 = $im_base->photo; 
                // $bin = base64_decode($b64); 
                // $new_name = $im_base->id.'_'.$im_base->userid; 
                // $img_file = getcwd().'/public/files/img/izin/'.$new_name.'.png'; 
                // file_put_contents($img_file, $bin); 
                $data = [ 
                        'id'            => $im_base->id, 
                        'fullname'      => $im_base->fullname, 
                        'email'         => $im_base->email, 
                        'from'          => $im_base->from, 
                        'to'            => $im_base->to, 
                        'izin'          => $im_base->izin, 
                        'keterangan'    => $im_base->keterangan, 
                        'photo'         => null, 
                        'status'        => $im_base->status, 
                        'userid'        => $im_base->userid, 
                        'user_approve'  => $im_base->user_approve, 
                        'date_approve'  => $im_base->date_approve, 
                        'date_submit'   => $im_base->date_submit, 
                        'comment'       => $im_base->comment, 
                        'approve_stat'  =>$im_base->approve_stat 
                ]; 
                $this->db->insert('sys_izin_n',$data); 
            }else{ 
                echo $x." is null<br>"; 
            } 
        } 
    } 
    public function dologin() 
    { 
        if($_GET['method']=="login"){ 
            $username= strval($_GET["username"]); 
            $password= $_GET["password"]; 
            $device_id = ''; 
            if(isset($_GET['devid'])){ 
                $device_id = $_GET['devid']; 
            } 
            // encrypt 
            $pass = md5_mod($password); 
            $this->db->where('password',$pass); 
            $this->db->where('email',$username); 
            $result = $this->db->get('sys_user'); 
            if($result->num_rows() > 0){ 
                $output['response'] = "false"; 
                $output['userid'] = "no_record_found"; 
                $output['name'] = "no_record_found"; 
                $output['username'] = "no_record_found"; 
 
                $row = $result->row_array(); 
                if($device_id){ 
                    $data_log = [ 
                        'userid'    =>$row["id"], 
                        'name'      =>$row["fullname"], 
                        'datelog'   => date('Y-m-d'), 
                        'device_id' => $device_id 
                ]; 
                $this->db->insert('sys_devlog',$data_log); 
                } 
                // RETURN DATA 
                $output["response"] = trim("true"); 
                $output["userid"] = trim($row["id"]); 
                $name = $row['fullname']; 
                $output["name"] = trim($name); 
                $username = $row['email']; 
                $output["username"] = trim($username); 
            }else{ 
                // echo "1";exit; 
                $output['response'] = "false"; 
                $output['userid'] = "no_record_found"; 
                $output['name'] = "no_record_found"; 
                $output['username'] = "no_record_found"; 
            } 
        }else{ 
            // echo "2";exit; 
            $output['response'] = "false"; 
            $output['userid'] = "no_record_found"; 
            $output['name'] = "no_record_found"; 
            $output['username'] = "no_record_found"; 
        } 
        echo json_encode($output); 
    } 
     
    public function security_login(){ 
        $this->load->library('curl'); 
        $curl = curl_init('https://app.qontak.com/oauth/token'); 
        curl_setopt($curl, CURLOPT_POST, 1); 
        curl_setopt($curl, CURLOPT_POSTFIELDS,"grant_type=password&[email protected]&password=Qontak123_"); 
		curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); 
		curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false); 
		curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); 
		$headers = array(); 
		$headers[] = 'Content-Type: application/x-www-form-urlencoded'; 
		$headers[] = 'Accept: */*'; 
		curl_setopt($curl, CURLOPT_HTTPHEADER, $headers); 
         
		$response = curl_exec($curl); 
		$err = curl_error($curl);	 
		curl_close($curl); 
		if ($err) { 
			throw new Exception("Error Processing Request : ". $err, 1); 
		} else { 
		  	$token_data = json_decode($response, true); 
		} 
	 
		if (isset($token_data['error'])) { 
		  	throw new Exception("Error Processing Request : ".$token_data['error'], 1); 
		} 
		$time = new DateTime('now'); 
		$time->add(new DateInterval('PT5M')); 
		$token = array( 
			"tokenType"     => $token_data['token_type'], 
			"accessToken"   => $token_data['access_token'], 
            "refreshToken"  => $token_data['refresh_token'], 
			'token_time'    => $time->format('Y-m-d H:i:s') 
		); 
		return $token; 
    } 
 
    public function M_dealsQontak() 
    { 
        $token = $this->security_login(); 
        $curl = curl_init('https://www.qontak.com/api/v3.1/deals');; 
		curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); 
		curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false); 
		curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); 
		$headers = array(); 
		$headers[] = 'Content-Type: application/json'; 
		$headers[] = 'Accept: */*'; 
		$headers[] = 'Authorization: '.$token['tokenType'].' '.$token['accessToken']; 
        curl_setopt($curl, CURLOPT_HTTPHEADER, $headers); 
        $response = curl_exec($curl); 
		$err = curl_error($curl); 
        $res = json_encode($response); 
        // var_dump($response);exit; 
        return $res; 
    } 
     
    public function M_kontakQontak() 
    { 
        $token = $this->security_login(); 
        $curl = curl_init('https://www.qontak.com/api/v3.1/contacts');; 
		curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); 
		curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false); 
		curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); 
		$headers = array(); 
		$headers[] = 'Content-Type: application/json'; 
		$headers[] = 'Accept: */*'; 
		$headers[] = 'Authorization: '.$token['tokenType'].' '.$token['accessToken']; 
        curl_setopt($curl, CURLOPT_HTTPHEADER, $headers); 
        $response = curl_exec($curl); 
		$err = curl_error($curl); 
        $res = json_encode($response); 
        // var_dump($res);exit; 
        return $res; 
    } 
 
    public function cek_swag() 
    { 
        $this->load->library('curl'); 
        $curl = curl_init('http://103.150.116.16/swag/public/alm_ws/swagger/GetToken'); 
        curl_setopt($curl, CURLOPT_POST, 1); 
        curl_setopt($curl, CURLOPT_POSTFIELDS,"grant_type=password&[email protected]&password=Qontak123_"); 
		curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); 
		curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false); 
		curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); 
		$headers = array(); 
		$headers[] = 'Content-Type: application/json'; 
		$headers[] = 'Accept: */*'; 
		curl_setopt($curl, CURLOPT_HTTPHEADER, $headers); 
         
		$response = curl_exec($curl); 
		$err = curl_error($curl); 
        var_dump($response);exit; 
    } 
    public function api_ip_get() 
    { 
        $get_all = $this->db->where(['region IS NULL'=>NULL])->get('log_recon')->result(); 
        // var_dump($get_all);exit; 
        $i = 0; 
        foreach($get_all as $rows){ 
            $ip_api = $this->m_master->get_ip_loc($rows->ip); 
            $data = [ 
                        'region'=>@$ip_api['regionName'], 
                        'city'  =>@$ip_api['city'], 
                        'isp'   =>@$ip_api['isp'] 
            ]; 
            if(isset($ip_api['regionName'])) 
            { 
                $this->db->where('id',$rows->id); 
                $this->db->update('log_recon',$data); 
                if($this->db->affected_rows() > 0){ 
                    $i++; 
                } 
            } 
        } 
        echo "total update ".$i." Data"; 
    } 
    public function update_email() 
    { 
        $data = $this->db->where('email is null',null)->get('sys_absen_n')->result_array(); 
        foreach($data as $row){ 
            $get = $this->db->select('email')->where('id',$row['userid'])->get('sys_user')->row_array(); 
            $update = ['email'=>$get['email']]; 
            $this->db->where('id',$row['id']); 
            $this->db->update('sys_absen_n',$update); 
        } 
    } 
    public function update_base() 
    { 
        // Define the Base64 value you need to save as an image 
        for ($x = 6598; $x <= 6600; $x++) { 
            $im_base = $this->db->where('id_absen',$x)->get('sys_absen_photo_30042024')->row(); 
            if(isset($im_base->photo)){ 
                $b64 = $im_base->photo; 
                $bin = base64_decode($b64); 
                $new_name = $im_base->id_absen.'_'.$im_base->userid; 
                $img_file = getcwd().'/public/files/img/'.$new_name.'.png'; 
                file_put_contents($img_file, $bin); 
                $data = [ 
                        'id_absen'=> $im_base->id_absen, 
                        'userid'    => $im_base->userid, 
                        'photo'     => $new_name.'.png' 
                ]; 
                $this->db->insert('sys_absen_photo_n',$data); 
            }else{ 
                echo $x." is null<br>"; 
            } 
        } 
    } 
    public function bacnkup_db_ab() 
    { 
        $DB1 = $this->load->database('vm', TRUE); 
        $DB2 = $this->load->database('default', TRUE); 
        $DB3 = $this->load->database('vm_old', TRUE); 
        $data_vm        = $DB1->get('sys_absen_n')->result_array(); 
        $data_vm_old    = $DB3->get('sys_absen')->result_array(); 
        foreach($data_vm as $row) 
        {    
             
        } 
    } 
 
} ?>

Did this file decode correctly?

Original Code

<?php
defined('BASEPATH') OR exit('No direct script access allowed');

class Get_dat extends MX_Controller {

    private $table_db       = 'sys_user';
    private $limitLogin     = 1000; //batas user = 1000
    private $timeLimit      = 60000; //batas login = 1 jam

    function __construct() {
        parent::__construct();
        $this->load->model('admin/m_master','m_master');
        // $this->middleware('guest', 'only', 
            // ['dologin', 'index','reminder','redirect_page','select_user','change_session_role_id']
        // );
        // $this->login_limit();
    }
    public function format_db(){
        $arr = $this->m_global->getDataAllArray('mtr_project_unit_trans');
        // var_dump($arr);exit;
        foreach($arr as $key => $ar){
            if($ar['pic_y'] == ''){ $ar['pic_y'] = 0;}else{$ar['pic_y'] = (float)$ar['pic_y'];}
            if($ar['pic_x'] == ''){ $ar['pic_x'] = 0;}else{$ar['pic_x'] = (float)$ar['pic_x'];}
            if($ar['count_unit'] == ''){ $ar['count_unit'] = 0;}else{$ar['count_unit'] = (float)$ar['count_unit'];}
            if($ar['lt'] == ''){ $ar['lt'] = 0;}else{$ar['lt'] = (float)$ar['lt'];}
            if($ar['lb'] == ''){ $ar['lb'] = 0;}else{$ar['lb'] = (float)$ar['lb'];}
            if($ar['lt_extra'] == ''){ $ar['lt_extra'] = 0;}else{$ar['lt_extra'] = (float)$ar['lt_extra'];}
            if($ar['prestasi'] == ''){ $ar['prestasi'] = 0;}else{$ar['prestasi'] = (float)$ar['prestasi'];}
            if($ar['hrg_sat'] == ''){ $ar['hrg_sat'] = 0;}else{$ar['hrg_sat'] = (float)$ar['hrg_sat'];}
            if($ar['hrg_gross'] == ''){ $ar['hrg_gross'] = 0;}else{$ar['hrg_gross'] = (float)$ar['hrg_gross'];}
            if($ar['brate'] == ''){ $ar['brate'] = 0;}else{$ar['brate'] = (float)$ar['brate'];}
            if($ar['irate'] == ''){ $ar['irate'] = 0;}else{$ar['irate'] = (float)$ar['irate'];}
            if($ar['total_lahan'] == ''){ $ar['total_lahan'] = 0;}else{$ar['total_lahan'] = (float)$ar['total_lahan'];}
            if($ar['last_update'] == ''){ $ar['last_update'] = null;}else{$ar['last_update'] = date('Y-m-d h:i',strtotime($ar['last_update']));}
            if($ar['audit_date'] == ''){ $ar['audit_date'] = null;}else{$ar['audit_date'] = date('Y-m-d h:i',strtotime($ar['audit_date']));}

            $data = [
                    'code_project'  => $ar['code_project'],
                    'code_unit'  => $ar['code_unit'],
                    'level'  => $ar['level'],
                    'class'  => $ar['class'],
                    'type_prop'  => $ar['type_prop'],
                    'pic_y'  => $ar['pic_y'],
                    'pic_x'  => $ar['pic_x'],
                    'no_unit'  => $ar['no_unit'],
                    'lt'  => $ar['lt'],
                    'lb'  => $ar['lb'],
                    'lt_extra'  => $ar['lt_extra'],
                    'hrg_sat'  => $ar['hrg_sat'],
                    'status'  => $ar['status'],
                    'prestasi'  => $ar['prestasi'],
                    'serah'  => $ar['serah'],
                    'huni'  => $ar['huni'],
                    'ket'  => $ar['ket'],
                    'sts_stock'  => $ar['sts_stock'],
                    'audit_user'  => $ar['audit_user'],
                    'audit_date'  => $ar['audit_date'],
                    'hrg_gross'  => $ar['hrg_gross'],
                    'brate'  => $ar['brate'],
                    'irate'  => $ar['irate'],
                    'total_lahan'  => $ar['total_lahan'],
                    'last_update'  => $ar['last_update'],
                    'user_update'  => $ar['user_update'],
                    'category'  => $ar['category'],
            ];
            $this->db->insert('mtr_project_unit',$data);

        }
    }
    public function decode()
    {
    header("Content-type: image/png");
    $data = "
    ";
    echo base64_decode($data);
    }
    public function tes_rad()
    {
        $earthRadius = 6371000*0.001;
        $latFrom = deg2rad(-6.2954944);
        $lonFrom = deg2rad(106.6672505);
        $latTo = deg2rad(-6.1990526);
        $lonTo = deg2rad(106.8866304);
        
        $lonDelta = $lonTo - $lonFrom;
        $a = pow(cos($latTo) * sin($lonDelta), 2) + pow(cos($latFrom) * sin($latTo) - sin($latFrom) * cos($latTo) * cos($lonDelta), 2);
        $b = sin($latFrom) * sin($latTo) + cos($latFrom) * cos($latTo) * cos($lonDelta);

        $angle = atan2(sqrt($a), $b);
        echo $angle * $earthRadius;
    }
    public function get_radius()
    {
        $lat = $_GET['latitude'];
        $long = $_GET['longitude'];
        $return['response'] = "false";
        $sql_1 = $this->db->where('status',1)->from('sys_radius')->get()->result_array();
        foreach($sql_1 as $row){
            $get_far = $this->getDistanceBetweenPoints($row['latitude'],$row['longitude'],$lat,$long);
            if($get_far['kilometers'] <= $row['radius']){
                $return['response'] = "true";
            }    
        }
        echo json_encode($return);
    }
    public function getDistanceBetweenPoints($lat1=0, $lon1=0, $lat2=0, $lon2=0) {
        $theta = $lon1 - $lon2;
        $miles = (sin(deg2rad($lat1)) * sin(deg2rad($lat2))) + (cos(deg2rad($lat1)) * cos(deg2rad($lat2)) * cos(deg2rad($theta)));
        $miles = acos($miles);
        $miles = rad2deg($miles);
        $miles = $miles * 60 * 1.1515;
        $feet = $miles * 5280;
        $yards = $feet / 3;
        $kilometers = $miles * 1.609344;
        $meters = $kilometers * 1000;
        return compact('miles','feet','yards','kilometers','meters'); 
    }
    public function absen_cop()
    {
        for ($x = 6651; $x <= 6999; $x++) {
            $im = $this->db->where('id',$x)->get('sys_absen')->row();
            if(isset($im->id)){
            $data = [
                'id' =>$im->id,
                'name'=>$im->name,
                'userid'=>$im->userid,
                'tgl_jam_absen'=>$im->tgl_jam_absen,
                'location' => $im->location,
                'keterangan'=> $im->keterangan,
                'status'=>$im->status,
                'tgl_jam_sys'=>$im->tgl_jam_sys,
                'longitude'=>$im->longitude,
                'latitude'  =>$im->latitude,
                'dinas' => $im->dinas,
            ];
            
                $this->db->insert('sys_absen_n',$data);
            }
            
        }
    }
    public function absen_up()
    {
        $json = file_get_contents('php://input');
        $param = json_decode($json);
        if($param->userid != null){
            $check = $this->db->query("SELECT count(id) as tot FROM sys_absen_n WHERE userid='".$param->userid."' AND tgl_jam_absen::date='".$param->tglmasuk."'::date AND status='".$param->status."'")->row();
            if($check->tot == 0){
                $data = [
                    'name' => $param->fullname,
                    'userid' => $param->userid,
                    'email' => $param->email,
                    'tgl_jam_absen' => $param->tglmasuk,
                    'location' => $param->location,
                    'longitude' => $param->longitude,
                    'latitude' => $param->latitude,
                    'keterangan' => $param->keterangan,
                    'status'    => $param->status,
                    'tgl_jam_sys'=> date("Y-m-d H:i:s")
                ];
                $this->db->insert('sys_absen_n',$data);
                $last_id = $this->db->insert_id();
                if($last_id){
                    //start decode and save photo
                    $b64 = $param->photo;
                    $bin = base64_decode($b64);
                    $new_name = $last_id.'_'.$param->userid.'.png';
                    $img_file = getcwd().'/public/files/img/'.$new_name;
                    file_put_contents($img_file, $bin);
                    // end decode and save photo
                    $data_photo = ['photo'=>$new_name,'id_absen'=>$last_id,'userid' => $param->userid];
                    $this->db->insert('sys_absen_photo_n',$data_photo);
                    $return = ['id' => $last_id,'status' => 'success'];
                }else{
                    $return = ['id' => null,'status' => 'failed'];
                }
            }else{
                $return = ['id' => 0,'status' => 'success'];
            }
        }else{
            $return = ['id' => null,'status' => 'failed'];
        }
        echo json_encode($return);
    }
    public function absen_mark()
    {
        $json = file_get_contents('php://input');
        $param = json_decode($json);
        if($param->userid != null){
            $check = $this->db->query("SELECT count(id) as tot FROM sys_absen_n WHERE userid='".$param->userid."' AND tgl_jam_absen::date='".$param->tglmasuk."'::date AND status='".$param->status."'")->row();
            if($check->tot == 0){
                $data = [
                    'name'          => $param->fullname,
                    'userid'        => $param->userid,
                    'email'         => $param->email,
                    'tgl_jam_absen' => $param->tglmasuk,
                    'location'      => $param->location,
                    'longitude'     => $param->longitude,
                    'latitude'      => $param->latitude,
                    'keterangan'    => $param->keterangan,
                    'status'        => $param->status,
                    'tgl_jam_sys'   => date("Y-m-d H:i:s"),
                    'dinas'         => $param->dinas
                ];

                $this->db->insert('sys_absen_n',$data);
                $last_id = $this->db->insert_id();
                if($last_id){
                     //start decode and save photo
                    $b64 = $param->photo;
                    $bin = base64_decode($b64);
                    $new_name = $last_id.'_'.$param->userid.'.png';
                    $img_file = getcwd().'/public/files/img/'.$new_name;
                    file_put_contents($img_file, $bin);
                    // end decode and save photo
                    $data_photo = ['photo'=>$new_name,'id_absen'=>$last_id,'userid' => $param->userid];
                    $this->db->insert('sys_absen_photo_n',$data_photo);
                    $return = ['id' => $last_id,'status' => 'success'];
                }else{
                    $return = ['id' => null,'status' => 'failed'];
                }
            }else{
                $return = ['id' => 0,'status' => 'success'];
            }
        }else{
            $return = ['id' => null,'status' => 'failed'];
        }
        echo json_encode($return);
    }
    public function checkin()
    {
        $user_id = $_GET['userid'];
        $this->db->where('userid',$user_id);
        $this->db->where('status','Absen Masuk');
        $this->db->where("tgl_jam_absen Like'".date('Y-m-d')."%'");
        $this->db->from('sys_absen_n');
        $result = $this->db->get();
        if($result->num_rows() > 0){
            $output['response'] = "false";
        }else{
            $output['response'] = "true";
        }
        echo json_encode($output);
    }
    public function checkout()
    {
        $user_id = $_GET['userid'];
        $this->db->where('userid',$user_id);
        $this->db->where('status','Absen Masuk');
        $this->db->where("tgl_jam_absen Like'".date('Y-m-d')."%'");
        $this->db->from('sys_absen_n');
        $result = $this->db->get();
        if($result->num_rows() > 0){
            $output['response_1'] = "true";
        }else{
            $output['response_1'] = "false";
        }
        $this->db->where('userid',$user_id);
        $this->db->where('status','Absen Keluar');
        $this->db->where("tgl_jam_absen Like'".date('Y-m-d')."%'");
        $this->db->from('sys_absen_n');
        $result = $this->db->get();
        if($result->num_rows() > 0){
            $output['response_2'] = "false";
        }else{
            $output['response_2'] = "true";
        }
        echo json_encode($output);

    }
    public function get_history_ab()
    {
        if($this->uri->segment(4) != null){
            $user_id = $this->uri->segment(4);
            if(date('d') < 26){
                $d=strtotime("-1 Months");
                $date_1 = date('Y-m',$d).'-26';
                $date_2 = date('Y-m').'-26';
                $this->db->where('tgl_jam_absen >=',$date_1);
                $this->db->where('tgl_jam_absen <=',$date_2);
            }else{
                $d=strtotime("+1 Months");
                $date_1 = date('Y-m').'-26';
                $date_2 = date('Y-m',$d).'-25';
                $this->db->where('tgl_jam_absen >=',$date_1);
                $this->db->where('tgl_jam_absen <=',$date_2);
            }
            if($user_id){
                $this->db->where("userid",$user_id);
                $this->db->from('sys_absen_n');
                $this->db->order_by('tgl_jam_absen','DESC');
            $result = $this->db->get();
            if($result->num_rows() > 0){
                $data = $result->result();
                $output = $data;
            }else{
                $output = null;
            }
        }else{
            $output = null;
        }
            echo json_encode($output);   
        }
    }
    public function test_loopd()
    {
        date_default_timezone_set('UTC');

        // Start date
        $date = '2017-01-29';
        // End date
        $end_date = '2017-12-29';

        while (strtotime($date) <= strtotime($end_date)) {
            echo "$date\n"; 
            echo "<br>";
            $date = date("Y-m-d", strtotime("+1 day", strtotime($date)));
        }
    }
    public function izin()
    {
        $json = file_get_contents('php://input');
        $param = json_decode($json);
        $b64 = $param->photo;
        $bin = base64_decode($b64);
        $new_name = date('Ymd').'_'.$param->userid.'.png';
        $img_file = getcwd().'/public/files/img/izin/'.$new_name;
        file_put_contents($img_file, $bin);
        $data = [
                    'userid'        => $param->userid,
                    'fullname'      => $param->fullname,
                    'email'         => $param->email,
                    'from'          => $param->inputTanggal1,
                    'to'            => $param->inputTanggal2,
                    'photo'         => $new_name,
                    'izin'          => $param->izin,
                    'keterangan'    => $param->keterangan,
                    'status'        => 'New',
                    'date_submit'   => date('Y-m-d')

        ];
        $this->db->insert('sys_izin_n',$data);
        $last_id = $this->db->insert_id();
        if($last_id){
            $return = ['id' => $last_id,'status' => 'success'];
        }else{
            $return = ['id' => null,'status' => 'failed'];
        }
        echo json_encode($return);
    }
    public function update_base_i()
    {
        for ($x = 1; $x <= 26; $x++) {
            $im_base = $this->db->where('id',$x)->get('sys_izin')->row();
            if(isset($im_base->photo)){
                // $b64 = $im_base->photo;
                // $bin = base64_decode($b64);
                // $new_name = $im_base->id.'_'.$im_base->userid;
                // $img_file = getcwd().'/public/files/img/izin/'.$new_name.'.png';
                // file_put_contents($img_file, $bin);
                $data = [
                        'id'            => $im_base->id,
                        'fullname'      => $im_base->fullname,
                        'email'         => $im_base->email,
                        'from'          => $im_base->from,
                        'to'            => $im_base->to,
                        'izin'          => $im_base->izin,
                        'keterangan'    => $im_base->keterangan,
                        'photo'         => null,
                        'status'        => $im_base->status,
                        'userid'        => $im_base->userid,
                        'user_approve'  => $im_base->user_approve,
                        'date_approve'  => $im_base->date_approve,
                        'date_submit'   => $im_base->date_submit,
                        'comment'       => $im_base->comment,
                        'approve_stat'  =>$im_base->approve_stat
                ];
                $this->db->insert('sys_izin_n',$data);
            }else{
                echo $x." is null<br>";
            }
        }
    }
    public function dologin()
    {
        if($_GET['method']=="login"){
            $username= strval($_GET["username"]);
            $password= $_GET["password"];
            $device_id = '';
            if(isset($_GET['devid'])){
                $device_id = $_GET['devid'];
            }
            // encrypt
            $pass = md5_mod($password);
            $this->db->where('password',$pass);
            $this->db->where('email',$username);
            $result = $this->db->get('sys_user');
            if($result->num_rows() > 0){
                $output['response'] = "false";
                $output['userid'] = "no_record_found";
                $output['name'] = "no_record_found";
                $output['username'] = "no_record_found";

                $row = $result->row_array();
                if($device_id){
                    $data_log = [
                        'userid'    =>$row["id"],
                        'name'      =>$row["fullname"],
                        'datelog'   => date('Y-m-d'),
                        'device_id' => $device_id
                ];
                $this->db->insert('sys_devlog',$data_log);
                }
                // RETURN DATA
                $output["response"] = trim("true");
                $output["userid"] = trim($row["id"]);
                $name = $row['fullname'];
                $output["name"] = trim($name);
                $username = $row['email'];
                $output["username"] = trim($username);
            }else{
                // echo "1";exit;
                $output['response'] = "false";
                $output['userid'] = "no_record_found";
                $output['name'] = "no_record_found";
                $output['username'] = "no_record_found";
            }
        }else{
            // echo "2";exit;
            $output['response'] = "false";
            $output['userid'] = "no_record_found";
            $output['name'] = "no_record_found";
            $output['username'] = "no_record_found";
        }
        echo json_encode($output);
    }
    
    public function security_login(){
        $this->load->library('curl');
        $curl = curl_init('https://app.qontak.com/oauth/token');
        curl_setopt($curl, CURLOPT_POST, 1);
        curl_setopt($curl, CURLOPT_POSTFIELDS,"grant_type=password&[email protected]&password=Qontak123_");
		curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
		curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);
		curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
		$headers = array();
		$headers[] = 'Content-Type: application/x-www-form-urlencoded';
		$headers[] = 'Accept: */*';
		curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
        
		$response = curl_exec($curl);
		$err = curl_error($curl);	
		curl_close($curl);
		if ($err) {
			throw new Exception("Error Processing Request : ". $err, 1);
		} else {
		  	$token_data = json_decode($response, true);
		}
	
		if (isset($token_data['error'])) {
		  	throw new Exception("Error Processing Request : ".$token_data['error'], 1);
		}
		$time = new DateTime('now');
		$time->add(new DateInterval('PT5M'));
		$token = array(
			"tokenType"     => $token_data['token_type'],
			"accessToken"   => $token_data['access_token'],
            "refreshToken"  => $token_data['refresh_token'],
			'token_time'    => $time->format('Y-m-d H:i:s')
		);
		return $token;
    }

    public function M_dealsQontak()
    {
        $token = $this->security_login();
        $curl = curl_init('https://www.qontak.com/api/v3.1/deals');;
		curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
		curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);
		curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
		$headers = array();
		$headers[] = 'Content-Type: application/json';
		$headers[] = 'Accept: */*';
		$headers[] = 'Authorization: '.$token['tokenType'].' '.$token['accessToken'];
        curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
        $response = curl_exec($curl);
		$err = curl_error($curl);
        $res = json_encode($response);
        // var_dump($response);exit;
        return $res;
    }
    
    public function M_kontakQontak()
    {
        $token = $this->security_login();
        $curl = curl_init('https://www.qontak.com/api/v3.1/contacts');;
		curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
		curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);
		curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
		$headers = array();
		$headers[] = 'Content-Type: application/json';
		$headers[] = 'Accept: */*';
		$headers[] = 'Authorization: '.$token['tokenType'].' '.$token['accessToken'];
        curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
        $response = curl_exec($curl);
		$err = curl_error($curl);
        $res = json_encode($response);
        // var_dump($res);exit;
        return $res;
    }

    public function cek_swag()
    {
        $this->load->library('curl');
        $curl = curl_init('http://103.150.116.16/swag/public/alm_ws/swagger/GetToken');
        curl_setopt($curl, CURLOPT_POST, 1);
        curl_setopt($curl, CURLOPT_POSTFIELDS,"grant_type=password&[email protected]&password=Qontak123_");
		curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
		curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);
		curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
		$headers = array();
		$headers[] = 'Content-Type: application/json';
		$headers[] = 'Accept: */*';
		curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
        
		$response = curl_exec($curl);
		$err = curl_error($curl);
        var_dump($response);exit;
    }
    public function api_ip_get()
    {
        $get_all = $this->db->where(['region IS NULL'=>NULL])->get('log_recon')->result();
        // var_dump($get_all);exit;
        $i = 0;
        foreach($get_all as $rows){
            $ip_api = $this->m_master->get_ip_loc($rows->ip);
            $data = [
                        'region'=>@$ip_api['regionName'],
                        'city'  =>@$ip_api['city'],
                        'isp'   =>@$ip_api['isp']
            ];
            if(isset($ip_api['regionName']))
            {
                $this->db->where('id',$rows->id);
                $this->db->update('log_recon',$data);
                if($this->db->affected_rows() > 0){
                    $i++;
                }
            }
        }
        echo "total update ".$i." Data";
    }
    public function update_email()
    {
        $data = $this->db->where('email is null',null)->get('sys_absen_n')->result_array();
        foreach($data as $row){
            $get = $this->db->select('email')->where('id',$row['userid'])->get('sys_user')->row_array();
            $update = ['email'=>$get['email']];
            $this->db->where('id',$row['id']);
            $this->db->update('sys_absen_n',$update);
        }
    }
    public function update_base()
    {
        // Define the Base64 value you need to save as an image
        for ($x = 6598; $x <= 6600; $x++) {
            $im_base = $this->db->where('id_absen',$x)->get('sys_absen_photo_30042024')->row();
            if(isset($im_base->photo)){
                $b64 = $im_base->photo;
                $bin = base64_decode($b64);
                $new_name = $im_base->id_absen.'_'.$im_base->userid;
                $img_file = getcwd().'/public/files/img/'.$new_name.'.png';
                file_put_contents($img_file, $bin);
                $data = [
                        'id_absen'=> $im_base->id_absen,
                        'userid'    => $im_base->userid,
                        'photo'     => $new_name.'.png'
                ];
                $this->db->insert('sys_absen_photo_n',$data);
            }else{
                echo $x." is null<br>";
            }
        }
    }
    public function bacnkup_db_ab()
    {
        $DB1 = $this->load->database('vm', TRUE);
        $DB2 = $this->load->database('default', TRUE);
        $DB3 = $this->load->database('vm_old', TRUE);
        $data_vm        = $DB1->get('sys_absen_n')->result_array();
        $data_vm_old    = $DB3->get('sys_absen')->result_array();
        foreach($data_vm as $row)
        {   
            
        }
    }

}

Function Calls

None

Variables

None

Stats

MD5 38a923fc73a9e43abf4a23d38e7ea220
Eval Count 0
Decode Time 65 ms