Skip to content

Commit caa8c24

Browse files
committed
Use HttpFoundation request
Use methods that are always available. Conflicts: src/LaravelDebugBar.php
1 parent d57ca9b commit caa8c24

File tree

1 file changed

+20
-4
lines changed

1 file changed

+20
-4
lines changed

src/LaravelDebugBar.php

Lines changed: 20 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -430,7 +430,7 @@ public function getJavascriptRenderer($baseUrl = null, $basePath = null)
430430
/**
431431
* Modify the response and inject the debugbar (or data in headers)
432432
*
433-
* @param \Illuminate\Http\Request $request
433+
* @param \Symfony\Component\HttpFoundation\Request $request
434434
* @param \Symfony\Component\HttpFoundation\Response $response
435435
* @return \Symfony\Component\HttpFoundation\Response
436436
*/
@@ -490,14 +490,14 @@ public function modifyResponse($request, $response)
490490
}
491491
}
492492

493-
if ($response->isRedirection() || !($request instanceof \Illuminate\Http\Request)) {
493+
if ($response->isRedirection()) {
494494
try {
495495
$this->stackData();
496496
} catch (\Exception $e) {
497497
$app['log']->error('Debugbar exception: ' . $e->getMessage());
498498
}
499499
} elseif (
500-
($request->isXmlHttpRequest() || $request->wantsJson()) and
500+
$this->isJsonRequest($request) and
501501
$app['config']->get('debugbar.capture_ajax', true)
502502
) {
503503
try {
@@ -508,7 +508,7 @@ public function modifyResponse($request, $response)
508508
} elseif (
509509
($response->headers->has('Content-Type') and
510510
strpos($response->headers->get('Content-Type'), 'html') === false)
511-
|| 'html' !== $request->format()
511+
|| $request->getRequestFormat() !== 'html'
512512
) {
513513
try {
514514
// Just collect + store data, don't inject it.
@@ -548,6 +548,22 @@ protected function isDebugbarRequest()
548548
{
549549
return $this->app['request']->segment(1) == '_debugbar';
550550
}
551+
552+
/**
553+
* @param \Symfony\Component\HttpFoundation\Request $request
554+
* @return bool
555+
*/
556+
protected function isJsonRequest($request)
557+
{
558+
// If XmlHttpRequest, return true
559+
if ($request->isXmlHttpRequest()) {
560+
return true;
561+
}
562+
563+
// Check if the request wants Json
564+
$acceptable = $request->getAcceptableContentTypes();
565+
return (isset($acceptable[0]) && $acceptable[0] == 'application/json');
566+
}
551567

552568
/**
553569
* Collects the data from the collectors

0 commit comments

Comments
 (0)