PHP 8.2.30
Preview: UserController.php Size: 2.96 KB
/home/byroehnu/cnggold.com.ng/app/Http/Controllers/Frontend/UserController.php

<?php

namespace App\Http\Controllers\Frontend;

use App\Http\Controllers\Controller;
use App\Http\Requests\Backend\UserUpdateRequest;
use App\Models\Order;
use App\Models\Setting;
use App\Models\User;
use App\Repositories\Admin\OrderRepository;
use App\Repositories\Admin\UserRepositories;
use Illuminate\Support\Facades\Auth;
use Inertia\Inertia;
use PDF;

class UserController extends Controller
{
    public function dashboard()
    {
        if (Setting::pull("is_enabled_ecommerce") === "0") {
            abort(404);
        }

        $userId = Auth::id();

        $data['total'] = Order::where('user_id', $userId)->count();
        $data['pending_orders'] = Order::where('user_id', $userId)->where('status', 'pending')->count();
        $data['completed_orders'] = Order::where('user_id', $userId)->where('status', 'completed')->count();
        $data['canceled_orders'] = Order::where('user_id', $userId)->where('status', 'canceled')->count();
        $data['payments'] = Order::where('user_id', $userId)
            ->where('payment_status', '2')
            ->sum('total_price');

        $data['tickets'] = '1';
        $data['recent_orders'] = Order::where('user_id', $userId)
            ->where('status', '!=', 'initialize')->with('orderitems')
            ->latest()
            ->take(10)
            ->get();

        return Inertia::render('User/Dashboard', $data);
    }

    public function orders()
    {
        if (Setting::pull("is_enabled_ecommerce") === "0") {
            abort(404);
        }

        $userId = Auth::id();
        $data['orders'] = Order::where('user_id', $userId)->with('orderitems')->latest()->paginate(10);
        return Inertia::render('User/Order/Order', $data);
    }

    /**
     * Download invoice
     */
    public function downloadInvoice(Order $order, OrderRepository $repository)
    {
        if (Setting::pull("is_enabled_ecommerce") === "0") {
            abort(404);
        }

        $data['invoice_logo'] = Setting::pull('invoice_logo');
        $data['footer_contact'] = Setting::pull('footer_contact');
        $data['footer_address'] = Setting::pull('footer_address');
        $data['currency_symble'] = Setting::pull('currency_symble');
        $data['font_family'] = $repository->getInvoiceFrontName();
        $data['direction'] = $repository->getInvoiceDirection();
        $data['text_align'] = $data['direction'] == 'ltr' ? 'left' : 'right';
        $data['order'] = $order->load('orderitems');
        $pdf = PDF::loadView('invoice', $data);

        return $pdf->download("invoice-{$order->order_number}.pdf");
    }

    public function profile()
    {
        return Inertia::render('User/Profile/Edit');
    }

    /**
     * User update
     */
    public function update(UserUpdateRequest $request, User $user)
    {
        $user->update([
            'name' => $request->name,
            'email' => $request->email,
            'about' => $request->about,
        ]);
        return back()->with('success', 'User successfully updated');
    }
}

Directory Contents

Dirs: 0 × Files: 19

Name Size Perms Modified Actions
2.65 KB lrw-r--r-- 2025-06-13 11:19:53
Edit Download
2.26 KB lrw-r--r-- 2025-05-08 11:48:26
Edit Download
3.24 KB lrw-r--r-- 2025-05-15 11:24:11
Edit Download
551 B lrw-r--r-- 2025-04-19 04:22:18
Edit Download
1.72 KB lrw-r--r-- 2025-05-08 11:48:26
Edit Download
6.22 KB lrw-r--r-- 2025-07-19 07:29:54
Edit Download
4.00 KB lrw-r--r-- 2025-05-15 11:24:11
Edit Download
2.63 KB lrw-r--r-- 2025-05-08 11:48:26
Edit Download
3.47 KB lrw-r--r-- 2025-05-08 11:48:26
Edit Download
2.36 KB lrw-r--r-- 2025-07-19 07:29:54
Edit Download
1.63 KB lrw-r--r-- 2025-04-15 10:33:57
Edit Download
2.00 KB lrw-r--r-- 2025-05-08 11:48:26
Edit Download
1.44 KB lrw-r--r-- 2025-04-19 04:22:18
Edit Download
2.13 KB lrw-r--r-- 2025-05-08 11:48:26
Edit Download
408 B lrw-r--r-- 2025-04-19 04:22:18
Edit Download
532 B lrw-r--r-- 2025-04-08 04:12:56
Edit Download
2.09 KB lrw-r--r-- 2025-04-30 16:51:31
Edit Download
1.91 KB lrw-r--r-- 2025-04-13 07:02:31
Edit Download
2.96 KB lrw-r--r-- 2025-05-08 11:48:26
Edit Download

If ZipArchive is unavailable, a .tar will be created (no compression).