/** * maps the version of the operating system * * @param string $engineVersion * * @return \BrowserDetector\Version\Version */ public function mapEngineVersion($engineVersion) { switch (strtolower($engineVersion)) { case '': case 'unknown': case 'other': return new Version(0); break; default: // nothing to do here break; } return VersionFactory::set($engineVersion); }
/** * maps the browser version * * @param string $browserVersion * @param string|null $browserName * * @return \BrowserDetector\Version\Version */ public function mapBrowserVersion($browserVersion, $browserName = null) { switch (strtolower($browserVersion)) { case '': case 'unknown': case 'other': return new Version(0); break; default: switch (strtolower($browserName)) { case '': case 'unknown': case 'other': return new Version(0); break; default: // nothing to do here break; } break; } return VersionFactory::set($browserVersion); }
/** * maps the version of the operating system * * @param string $osVersion * @param string $osName * * @return \BrowserDetector\Version\Version */ public function mapOsVersion($osVersion, $osName = null) { switch (strtolower($osVersion)) { case '': case 'unknown': case 'other': return new Version(0); break; case 'server 2003': return new Version(2003); break; case 'nt 5.1': return 'XP'; break; case 'nt 6.1': return new Version(7); break; case 'nt 6.2': return new Version(8); break; case 'nt 6.3': return new Version(8, 1); break; default: // nothing to do here break; } switch (strtolower($osName)) { case '': case 'unknown': case 'other': return new Version(0); break; case 'winxp': case 'windows xp': case 'nt 5.1': return VersionFactory::set('XP'); break; case 'winvista': case 'windows vista': case 'nt 6.0': return VersionFactory::set('Vista'); break; case 'win7': case 'winphone7': case 'windows phone 7': case 'windows 7': case 'nt 6.1': return new Version(7); break; case 'winphone7.5': case 'windows phone 7.5': return new Version(7, 5); break; case 'win8': case 'winrt8': case 'winphone8': case 'windows phone 8': case 'windows 8': case 'nt 6.2': return new Version(8); break; case 'win8.1': case 'winrt8.1': case 'winphone8.1': case 'windows phone 8.1': case 'windows 8.1': case 'nt 6.3': return new Version(8, 1); break; case 'win9': return new Version(9); break; case 'win10': case 'windows 10': return new Version(10); break; case 'win2000': case 'windows 2000': case 'nt 5.0': return new Version(2000); break; case 'win2003': return new Version(2003); break; case 'win98': case 'windows 98': return new Version(98); break; case 'win95': return new Version(95); break; case 'winnt': return VersionFactory::set('NT'); break; case 'winme': return VersionFactory::set('ME'); break; case 'win31': return new Version(3, 1); break; case 'win32': return new Version(0); break; case 'yosemite 10.10': return new Version(10, 10); break; case 'mavericks 10.9': return new Version(10, 9); break; default: // nothing to do here break; } return VersionFactory::set($osVersion); }