From f856456b3d83c2f3b396118a6f9d63a4487c0484 Mon Sep 17 00:00:00 2001 From: Daniel Blok Date: Mon, 22 Jun 2015 15:31:01 +0200 Subject: [PATCH 1/2] Add support for Javascript output in BrowserConsoleHandler --- src/Monolog/Handler/BrowserConsoleHandler.php | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/src/Monolog/Handler/BrowserConsoleHandler.php b/src/Monolog/Handler/BrowserConsoleHandler.php index 589ff779..5368a122 100644 --- a/src/Monolog/Handler/BrowserConsoleHandler.php +++ b/src/Monolog/Handler/BrowserConsoleHandler.php @@ -55,15 +55,19 @@ class BrowserConsoleHandler extends AbstractProcessingHandler /** * Convert records to javascript console commands and send it to the browser. - * This method is automatically called on PHP shutdown if output is HTML. + * This method is automatically called on PHP shutdown if output is HTML or Javascript. */ public static function send() { + $htmlTags = true; // Check content type foreach (headers_list() as $header) { if (stripos($header, 'content-type:') === 0) { - if (stripos($header, 'text/html') === false) { - // This handler only works with HTML outputs + // This handler only works with HTML and javascript outputs + // text/javascript is obsoute in favour of application/javascript, but still used + if (stripos($header, 'application/javascript') !== false || stripos($header, 'text/javascript') !== false) { + $htmlTags = false; + } elseif (stripos($header, 'text/html') === false) { return; } break; @@ -71,7 +75,11 @@ class BrowserConsoleHandler extends AbstractProcessingHandler } if (count(self::$records)) { - echo ''; + if ($htmlTags) { + echo ''; + } else { + echo self::generateScript(); + } self::reset(); } } From e71ccdeb688afe8e839965c0178458814339a9ec Mon Sep 17 00:00:00 2001 From: Daniel Blok Date: Mon, 22 Jun 2015 15:48:06 +0200 Subject: [PATCH 2/2] spelling --- src/Monolog/Handler/BrowserConsoleHandler.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Monolog/Handler/BrowserConsoleHandler.php b/src/Monolog/Handler/BrowserConsoleHandler.php index 5368a122..c873afc3 100644 --- a/src/Monolog/Handler/BrowserConsoleHandler.php +++ b/src/Monolog/Handler/BrowserConsoleHandler.php @@ -64,7 +64,7 @@ class BrowserConsoleHandler extends AbstractProcessingHandler foreach (headers_list() as $header) { if (stripos($header, 'content-type:') === 0) { // This handler only works with HTML and javascript outputs - // text/javascript is obsoute in favour of application/javascript, but still used + // text/javascript is obsolete in favour of application/javascript, but still used if (stripos($header, 'application/javascript') !== false || stripos($header, 'text/javascript') !== false) { $htmlTags = false; } elseif (stripos($header, 'text/html') === false) {