KUJUNTI.ID MINISH3LL
Path : /var/www/html/thb_loan_system/app/Http/Middleware/
(S)h3ll Cr3at0r :
F!le Upl0ad :

B-Con CMD Config cPanel C-Rdp D-Log Info Jump Mass Ransom Symlink vHost Zone-H

Current File : /var/www/html/thb_loan_system/app/Http/Middleware/CheckBranch.php


<?php

namespace App\Http\Middleware;

use App\Models\Branch;
use App\Models\BranchUser;
use Closure;
use Laracasts\Flash\Flash;
use Cartalyst\Sentinel\Laravel\Facades\Sentinel;


class CheckBranch
{
    /**
     * Handle an incoming request.
     *
     * @param \Illuminate\Http\Request $request
     * @param \Closure $next
     * @return mixed
     */
    public function handle($request, Closure $next)
    {

        $branch_id = $request->session()->get('branch_id', null);


        if (!$branch_id) {
            //we have branches
            $branch_users = BranchUser::query()
                ->where('user_id', Sentinel::getUser()->id)
                ->orderBy('created_at', 'desc')
                ->get();

            if (count($branch_users) > 0) {
                foreach ($branch_users as $key) {
                    if (!empty($key->branch)) {
                        //set session and exit
                        $request->session()->put('branch_id', $key->branch_id);
                        //Flash::success("Current Branch set to: ".$key->branch->name);
                        return $next($request);
                    }
                }
            }

        }


        if (Branch::query()->count() == 0) {
            //no branches, return
            Flash::warning("No branches set");
            return redirect('no_branch');
        }


        if (!empty(Branch::query()->find($branch_id))) {
            return $next($request);
        }

        Flash::warning("No permission");
        return redirect('no_branch');
    }
}

© KUJUNTI.ID