<?php namespace App\Http\Middleware; use App\Models\Sale\Invoice; use Closure; class RedirectSignedIfAuthenticated { /** * Handle an incoming request. * * @param \Illuminate\Http\Request $request * @param \Closure $next * @return mixed */ public function handle($request, Closure $next) { if (!$user = user()) { return $next($request); } $prefix = $user->contact ? 'portal.' : ''; $page = 'dashboard'; $params = []; if ($request->segment(2) == 'invoices') { $page = 'invoices.show'; $invoice = Invoice::find($request->segment(3)); $params = [$invoice->id]; } redirect()->route($prefix . $page, $params)->send(); } }