| 
									
										
										
										
											2015-07-13 03:01:42 +08:00
										 |  |  | <?php | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-09-11 02:31:09 +08:00
										 |  |  | namespace BookStack\Exceptions; | 
					
						
							| 
									
										
										
										
											2015-07-13 03:01:42 +08:00
										 |  |  | 
 | 
					
						
							|  |  |  | use Exception; | 
					
						
							|  |  |  | use Symfony\Component\HttpKernel\Exception\HttpException; | 
					
						
							|  |  |  | use Illuminate\Foundation\Exceptions\Handler as ExceptionHandler; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | class Handler extends ExceptionHandler | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |     /** | 
					
						
							|  |  |  |      * A list of the exception types that should not be reported. | 
					
						
							|  |  |  |      * | 
					
						
							|  |  |  |      * @var array | 
					
						
							|  |  |  |      */ | 
					
						
							|  |  |  |     protected $dontReport = [ | 
					
						
							|  |  |  |         HttpException::class, | 
					
						
							|  |  |  |     ]; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     /** | 
					
						
							|  |  |  |      * Report or log an exception. | 
					
						
							|  |  |  |      * | 
					
						
							|  |  |  |      * This is a great spot to send exceptions to Sentry, Bugsnag, etc. | 
					
						
							|  |  |  |      * | 
					
						
							| 
									
										
										
										
											2015-09-05 00:16:58 +08:00
										 |  |  |      * @param  \Exception $e | 
					
						
							| 
									
										
										
										
											2015-07-13 03:01:42 +08:00
										 |  |  |      */ | 
					
						
							|  |  |  |     public function report(Exception $e) | 
					
						
							|  |  |  |     { | 
					
						
							|  |  |  |         return parent::report($e); | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     /** | 
					
						
							|  |  |  |      * Render an exception into an HTTP response. | 
					
						
							|  |  |  |      * | 
					
						
							|  |  |  |      * @param  \Illuminate\Http\Request  $request | 
					
						
							|  |  |  |      * @param  \Exception  $e | 
					
						
							|  |  |  |      * @return \Illuminate\Http\Response | 
					
						
							|  |  |  |      */ | 
					
						
							|  |  |  |     public function render($request, Exception $e) | 
					
						
							|  |  |  |     { | 
					
						
							| 
									
										
										
										
											2015-09-05 00:16:58 +08:00
										 |  |  |         if($e instanceof NotifyException) { | 
					
						
							|  |  |  |             \Session::flash('error', $e->message); | 
					
						
							|  |  |  |             return response()->redirectTo($e->redirectLocation); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-07-13 03:01:42 +08:00
										 |  |  |         return parent::render($request, $e); | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  | } |