-
Notifications
You must be signed in to change notification settings - Fork 34
Description
Hi @foroco,
I hope this finds you well.
MacOS BigSur is represented in Chrome variant browsers as MAC OSX 11_1_0
whilst in Firefox is Mac OS X 10.16
. I don't think Apple bothered to update their UA for Safari though.
-
Chrome: Mozilla/5.0 (Macintosh; Intel Mac OS X 11_1_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36
-
Brave: Mozilla/5.0 (Macintosh; Intel Mac OS X 11_1_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.96 Safari/537.36
-
Edge: Mozilla/5.0 (Macintosh; Intel Mac OS X 11_0_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.198 Safari/537.36 Edg/86.0.622.69
-
Firefox: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.16; rv:85.0) Gecko/20100101 Firefox/85.0
-
Safari: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.0.2 Safari/605.1.15
I edited my copy of BrowserDetection.php
starting at line 327:
if ($os_need_continue && $this->match_ua('Mac OS X|Mac_PowerPC|Macintosh|Mac_68K'))
{
$this->result_os_version = 0;
$this->result_os_name = 'MacOS';
if ($this->match_ua('Mac OS X'))
{
$matches = $this->match_ua('/Mac OS X (\d+)[_.](\d+)/');
$version = $matches[1];
$version_minor = $matches[2];
if (!empty($version_minor) && $version == 10)
{
switch($version_minor)
{
case 0: $this->result_os_version = 'Cheetah'; break;
case 1: $this->result_os_version = 'Puma'; break;
case 2: $this->result_os_version = 'Jaguar'; break;
case 3: $this->result_os_version = 'Panther'; break;
case 4: $this->result_os_version = 'Tiger'; break;
case 5: $this->result_os_version = 'Leopard'; break;
case 6: $this->result_os_version = 'Snow Leopard'; break;
case 7: $this->result_os_version = 'Lion'; break;
case 8: $this->result_os_version = 'Mountain Lion'; break;
case 9: $this->result_os_version = 'Mavericks'; break;
case 10: $this->result_os_version = 'Yosemite'; break;
case 11: $this->result_os_version = 'El Capitan'; break;
case 12: $this->result_os_version = 'Sierra'; break;
case 13: $this->result_os_version = 'High Sierra'; break;
case 14: $this->result_os_version = 'Mojave'; break;
case 15: $this->result_os_version = 'Catalina'; break;
case 16: $this->result_os_version = 'Big Sur'; break;
default: $this->result_os_version = 'New'; break;
}
}
if (!empty($version_minor) && $version == 11)
{
switch($version_minor)
{
case 1: $this->result_os_version = 'Big Sur'; break;
default: $this->result_os_version = 'New'; break;
}
}
if (!empty($this->result_os_version)) $this->result_os_title = 'MacOS '.$this->result_os_version;
else $this->result_os_title = 'MacOS (unknown version)';
}
Cheers,
YG