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();
}
}