shell bypass 403

UnknownSec Shell


name : ReferralController.php
<?php

namespace App\Http\Controllers\Admin;

use App\Exports\ReferralHistoryExport;
use App\Exports\ReferralUsersExport;
use App\Http\Controllers\Controller;
use App\Models\Accounting;
use App\Models\Affiliate;
use Illuminate\Http\Request;
use Maatwebsite\Excel\Facades\Excel;

class ReferralController extends Controller
{
    public function history($export = false)
    {
        $this->authorize('admin_referrals_history');

        $affiliatesQuery = Affiliate::query();

        $affiliateUsersCount = deepClone($affiliatesQuery)->groupBy('affiliate_user_id')->count();

        $allAffiliateAmounts = Accounting::where('is_affiliate_amount', true)
            ->where('system', false)
            ->sum('amount');

        $allAffiliateCommissionAmounts = Accounting::where('is_affiliate_commission', true)
            ->where('system', false)
            ->sum('amount');

        $affiliates = $affiliatesQuery
            ->with([
                'affiliateUser' => function ($query) {
                    $query->select('id', 'full_name', 'role_id', 'role_name');
                },
                'referredUser' => function ($query) {
                    $query->select('id', 'full_name', 'role_id', 'role_name');
                }
            ])
            ->orderBy('created_at', 'desc')
            ->paginate(10);

        $data = [
            'pageTitle' => trans('admin/main.referrals_history'),
            'affiliatesCount' => $affiliates->count(),
            'affiliateUsersCount' => $affiliateUsersCount,
            'allAffiliateAmounts' => $allAffiliateAmounts,
            'allAffiliateCommissionAmounts' => $allAffiliateCommissionAmounts,
            'affiliates' => $affiliates,
        ];

        if ($export) {
            return $affiliates;
        }

        return view('admin.referrals.history', $data);
    }

    public function users($export = false)
    {
        $this->authorize('admin_referrals_users');


        $affiliates = Affiliate::query()
            ->with([
                'affiliateUser' => function ($query) {
                    $query->select('id', 'full_name', 'role_id', 'role_name', 'affiliate');
                    $query->with([
                        'affiliateCode',
                        'userGroup'
                    ]);
                },
            ])
            ->groupBy('affiliate_user_id')
            ->orderBy('created_at', 'desc')
            ->paginate(10);

        $data = [
            'pageTitle' => trans('admin/main.users'),
            'affiliates' => $affiliates
        ];

        if ($export) {
            return $affiliates;
        }

        return view('admin.referrals.users', $data);
    }

    public function exportExcel(Request $request)
    {
        $this->authorize('admin_referrals_export');

        $type = $request->get('type', 'history');

        if ($type == 'users') {
            $referrals = $this->users(true);

            $export = new ReferralUsersExport($referrals);
        } else {
            $referrals = $this->history(true);

            $export = new ReferralHistoryExport($referrals);
        }

        return Excel::download($export, 'referrals_' . $type . '.xlsx');
    }
}

© 2025 UnknownSec
Courses | Anyleson - Learning Platform
INR (₹)
India Rupee
$
United States Dollar

Courses

17 Courses
Course
Full Stack Web Development

Full Stack Web Development

in Web Development
83:20 Hours
10 Oct 2024
₹28,318.82
Course
Installment and Secure Host

Installment and Secure Host

in Business Strategy
5.00
1:30 Hours
16 Mar 2023
₹118
Course
New Update Features

New Update Features

in Language
4.00
1:30 Hours
21 Jun 2022
Free
Not conducted
Bestseller
New In-App Live System

New In-App Live System

in Communications
5.00
2:30 Hours
1 Mar 2026
₹11.80
Featured
New Learning Page

New Learning Page

in Lifestyle
5.00
3:30 Hours
1 Mar 2022
Free
Finished
How to Travel Around the World

How to Travel Around the World

in Lifestyle
5.00
2:30 Hours
2 Mar 2022
₹29.50

Type

More options