smsonayla.org - c99shell

!C99Shell v.2.1 [PHP 7 Update] [1.12.2019]!

Software: LiteSpeed. PHP/7.4.33 

uname -a: Linux server704.web-hosting.com 4.18.0-553.54.1.lve.el8.x86_64 #1 SMP Wed Jun 4 13:01:13
UTC 2025 x86_64
 

uid=1309(necipbey) gid=1314(necipbey) groups=1314(necipbey) 

Safe-mode: OFF (not secure)

/home/necipbey/public_html/test/application/controllers/   drwxr-xr-x
Free 3432.08 GB of 4265.01 GB (80.47%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Feedback    Self remove    Logout    


Viewing file:     Rent.php (6.94 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php
defined
('BASEPATH') OR exit('No direct script access allowed');

class 
Rent extends CI_Controller {
    public function 
getCountries()
    {
        
$this->load->library('RentLibrary');
          
$this->load->driver('cache', array('adapter' => 'apc''backup' => 'file'));

        if (!
$response $this->cache->get('RENT_COUNTRIES')) {
            
$response $this->rentlibrary->getCountries();
            
$this->cache->save('RENT_COUNTRIES'$response60 60 24);
        }

        
$this->output->set_output(json_encode($response));
    }
    public function 
getMessage($apiKey$number_id){
        
$this->load->library('RentLibrary');
        
$this->load->model("api_model");
        
header('Content-Type: application/json');

        
$user $this->api_model->getUserByApiKey($apiKey);
        if(isset(
$user["id"])) {
            
$number $this->api_model->db->get_where('rent_activations', array('id' => $number_id'user' => $user['id']))->result_array();
            if (empty(
$number)){
                exit;
            }
            
$number $number[0];
            
$mlist = [];
            
$t time();
            if (
$t $number['end_time']){
                
$response $this->rentlibrary->getStatus($number['number_id']);
                if (
$response['status'] == 'success'){
                    foreach (
$response['values'] as $i =>$val){
                        
$mlist[] = [
                            
'from' => $val['phoneFrom'],
                            
'message' => $val['text'],
                            
'time' => strtotime($val['date'])
                        ];
                    }
                    
$this->api_model->db->set('message'json_encode($mlist))->where('id'$number_id)->update('rent_activations');

                }
                 
$number['message'] = $mlist;

            } else {
                
$mlist json_decode($number['message']) !== null json_decode($number['message'], true) : [];
            }
        
            
$number['message'] = $mlist;
            unset(
$number['user']);
            echo 
json_encode($numberJSON_UNESCAPED_UNICODE);

        }
    }

    public function 
getServicesByCountry($country$time)
    {
        

        
$this->load->library('RentLibrary');
          
$this->load->driver('cache', array('adapter' => 'apc''backup' => 'file'));

        if (!
$response $this->cache->get("RENT_{$country}_{$time}")) {
            
$response $this->rentlibrary->getServicesByCountry($country$time);
            
$this->cache->save("RENT_{$country}_{$time}"$response60 30);
        }

        
$this->output->set_output(json_encode($response));
    }
    public function 
buyNumber($apiKey$service$country$time){
        
$this->load->model("api_model");
        
$user $this->api_model->getUserByApiKey($apiKey);
        if(!isset(
$user["id"])) {
            echo 
json_encode([
                
'status' => false,
                
'title' => 'API Key hatalı.',
            ]);
            exit;
        }
        
$this->load->driver('cache', array('adapter' => 'apc''backup' => 'file'));
        
$this->load->library('RentLibrary');

        if (!
$services $this->cache->get("RENT_{$country}_{$time}")) {
            
$services $this->rentlibrary->getServicesByCountry($country$time);
            
$this->cache->save("RENT_{$country}_{$time}"$services60 30);
        }
        
$serv = [];
        foreach (
$services as $ser){
            if (
$ser['id'] == $service){
                
$serv $ser;
                break;
            }
        }
            if (empty(
$serv)){
                echo 
json_encode([
                    
'status' => false,
                    
'title' => 'Bilinmeyen servis.'
                
]);
                exit;

            }
        
            if(
$user["balance"] < $serv["cost"]) {
                    echo 
json_encode([
                    
'status' => false,
                    
'title' => "Yetersiz bakiye."
                
]);
                exit;

            }
        
        
$response $this->rentlibrary->buyNumber($service$country$time);
        if (
$response['status']) {
            
$this->api_model->db->set('balance''balance-'.$serv['cost'], FALSE)->where('id'$user['id'])->update('users');
            
$this->api_model->db->insert('rent_activations', array(
                
'number' => '+'.$response['result']['phone']['number'],
                
'number_id' => $response['result']['phone']['id'],
                
'service' => $serv['name'],
                
'message' => '',
                
'user' => $user['id'],
                
'start_time' => time(),
                
'end_time' => time() + ($time 3600)
            ));
            
$s_id $this->api_model->db->insert_id();
            
$this->api_model->db->insert('rent_prices', [
                
'number_id' => $response['result']['phone']['id'],
                
'price' => $serv['cost']
            ]);
        }
        echo 
json_encode([
            
'title' => $response['title'],
            
'status' => $response['status']
        ]);
                exit;
    }
    public function 
cancelNumber($apiKey$number_id){
      
$this->load->model("api_model");
                
$this->load->library('RentLibrary');
        
header('Content-Type: application/json');

        
$user $this->api_model->getUserByApiKey($apiKey);
        if(!isset(
$user["id"])) {
            echo 
json_encode(array(
                
'success' => false,
                
'title' => 'Hata!',
                
'message' => 'API Key hatalı.'
            
));
            return;
        }
        
$number $this->api_model->db->get_where('rent_activations', array('number_id' => $number_id'user' => $user['id']))->result_array();
        if (
count($number) < 1) {
            echo 
json_encode(array(
                
'success' => false,
                
'title' => 'Hata!',
                
'message' => 'İlgili numara veritabanımızda bulunamadı.'
            
));
            return;
        }
        
$number $number[0];
        
        if (
$number['end_time'] < time()){
            echo 
json_encode(array(
                
'success' => false,
                
'title' => 'Hata!',
                
'message' => 'İlgili numara iptal edilmiş veya süresi dolmuştur.'
            
));
            return;
        }

        if (
$number['message'] !== null && $number['message'] !== '' && !empty(json_decode($number['message']))){
            echo 
json_encode(array(
                
'success' => false,
                
'title' =>  'Hata!',
                
'message' => 'Numaraya mesaj geldikten sonra iptal edilemez.'
            
));
            return;
        }
        
        if ((
time() - $number['start_time']) > 1200){
            echo 
json_encode(array(
                
'success' => false,
                
'title' =>  'Hata!',
                
'message' => 'Alış süresinden 20 dakika geçtikten sonra iptal edilemez.'
            
));
            return;
        }
        
        
$response $this->rentlibrary->cancelNumber($number_id);
        if (
$response['status']  !== 'success'){
          echo 
json_encode(array(
                
'success' => false,
                
'title' =>  'Hata',
                
'message' => 'API Kaynaklı hata oluştu. Hata kodu: ' 
            
));    
            return;
        }
        
$price $this->api_model->db->get_where('rent_prices', array('number_id' => $number_id))->result_array();
        if (
count($price) > 0){
            
$price floatval($price[0]['price']);
            
            
$this->api_model->db->set('balance'floatval($user['balance']) + $price)->where('id'$user['id'])->update('users');
            
$this->api_model->db->set('end_time'time())->where('number_id'$number_id)->update('rent_activations');
        }
        echo 
json_encode(array(
            
'success' => true,
            
'title' =>  'Başarılı! ',
            
'message' => 'Numara iptali gerçekleşmiştir, ücretiniz hesabınıza geri yansıtıldı.'
        
));    
    }

  
}

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ ok ]

:: Make Dir ::
 
[ ok ]
:: Make File ::
 
[ ok ]

:: Go Dir ::
 
:: Go File ::
 

--[ c99shell v.2.1 [PHP 7 Update] [1.12.2019] maintained by KaizenLouie and updated by cermmik | C99Shell Github (MySQL update) | Generation time: 0.0082 ]--