| Conditions | 6 |
| Paths | 6 |
| Total Lines | 27 |
| Code Lines | 15 |
| Lines | 0 |
| Ratio | 0 % |
| Changes | 0 | ||
| 1 | <?php |
||
| 23 | public function handle($request, Closure $next, $type='password', $session_name=null, $timeout=null, $renew=false) |
||
| 24 | { |
||
| 25 | |||
| 26 | $timeout = $timeout ?? config('cortex.fort.reauthentication.timeout'); |
||
| 27 | |||
| 28 | if( is_null($session_name) || empty($session_name) ) { |
||
| 29 | $session_name = config('cortex.fort.reauthentication.prefix').$request->route()->getName(); |
||
| 30 | } else { |
||
| 31 | $session_name = config('cortex.fort.reauthentication.prefix').$session_name; |
||
| 32 | } |
||
| 33 | |||
| 34 | if( is_null( session( $session_name ) ) || time() - session( $session_name ) >= $timeout ) { |
||
| 35 | |||
| 36 | session()->forget( $session_name ); |
||
| 37 | session()->put('rinvex.fort.twofactor.totp', true); |
||
| 38 | session()->put(config('cortex.fort.reauthentication.prefix').'.intended', $request->url()); |
||
| 39 | session()->put(config('cortex.fort.reauthentication.prefix').'.session_name', $session_name); |
||
| 40 | |||
| 41 | return view('cortex/fort::frontarea.common.reauthentication.'.$type); |
||
| 42 | } |
||
| 43 | |||
| 44 | if( $renew ) { |
||
| 45 | session()->put($session_name, time()); |
||
| 46 | } |
||
| 47 | |||
| 48 | return $next($request); |
||
| 49 | } |
||
| 50 | } |