Add magical regex to catch browsers
This commit is contained in:
parent
7a6d4a3287
commit
1f4e824d0b
|
@ -57,7 +57,13 @@ class BrowserErrorPagePlugin extends ServerPlugin {
|
||||||
if ($request->getMethod() !== 'GET') {
|
if ($request->getMethod() !== 'GET') {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
return $request->isUserAgent([Request::USER_AGENT_IE_8]);
|
return $request->isUserAgent([
|
||||||
|
Request::USER_AGENT_IE,
|
||||||
|
Request::USER_AGENT_MS_EDGE,
|
||||||
|
Request::USER_AGENT_CHROME,
|
||||||
|
Request::USER_AGENT_FIREFOX,
|
||||||
|
Request::USER_AGENT_SAFARI,
|
||||||
|
]);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -49,6 +49,14 @@ class Request implements \ArrayAccess, \Countable, IRequest {
|
||||||
|
|
||||||
const USER_AGENT_IE = '/(MSIE)|(Trident)/';
|
const USER_AGENT_IE = '/(MSIE)|(Trident)/';
|
||||||
const USER_AGENT_IE_8 = '/MSIE 8.0/';
|
const USER_AGENT_IE_8 = '/MSIE 8.0/';
|
||||||
|
// Microsoft Edge User Agent from https://msdn.microsoft.com/en-us/library/hh869301(v=vs.85).aspx
|
||||||
|
const USER_AGENT_MS_EDGE = '/^Mozilla\/5\.0 \([^)]+\) AppleWebKit\/[0-9.]+ \(KHTML, like Gecko\) Chrome\/[0-9.]+ (Mobile Safari|Safari)\/[0-9.]+ Edge\/[0-9.]+$/';
|
||||||
|
// Firefox User Agent from https://developer.mozilla.org/en-US/docs/Web/HTTP/Gecko_user_agent_string_reference
|
||||||
|
const USER_AGENT_FIREFOX = '/^Mozilla\/5\.0 \([^)]+\) Gecko\/[0-9.]+ Firefox\/[0-9.]+$/';
|
||||||
|
// Chrome User Agent from https://developer.chrome.com/multidevice/user-agent
|
||||||
|
const USER_AGENT_CHROME = '/^Mozilla\/5\.0 \([^)]+\) AppleWebKit\/[0-9.]+ \(KHTML, like Gecko\) Chrome\/[0-9.]+ (Mobile Safari|Safari)\/[0-9.]+$/';
|
||||||
|
// Safari User Agent from http://www.useragentstring.com/pages/Safari/
|
||||||
|
const USER_AGENT_SAFARI = '/^Mozilla\/5\.0 \([^)]+\) AppleWebKit\/[0-9.]+ \(KHTML, like Gecko\) Version\/[0-9.]+ Safari\/[0-9.A-Z]+$/';
|
||||||
// Android Chrome user agent: https://developers.google.com/chrome/mobile/docs/user-agent
|
// Android Chrome user agent: https://developers.google.com/chrome/mobile/docs/user-agent
|
||||||
const USER_AGENT_ANDROID_MOBILE_CHROME = '#Android.*Chrome/[.0-9]*#';
|
const USER_AGENT_ANDROID_MOBILE_CHROME = '#Android.*Chrome/[.0-9]*#';
|
||||||
const USER_AGENT_FREEBOX = '#^Mozilla/5\.0$#';
|
const USER_AGENT_FREEBOX = '#^Mozilla/5\.0$#';
|
||||||
|
|
Loading…
Reference in New Issue