cbschuld/Browser.php

iPad unknown

Yaffle opened this issue · 1 comments

Mozilla/5.0 (iPad; CPU OS 6_1_3 like Mac OS X) AppleWebKit/536.26 (KHTML, like Gecko) CriOS/28.0.1500.12 Mobile/10B329 Safari/8536.25

Better Chrome detection on iOS

$browser = new Browser('Mozilla/5.0 (iPad; CPU OS 6_1_3 like Mac OS X) AppleWebKit/536.26 (KHTML, like Gecko) CriOS/28.0.1500.12 Mobile/10B329 Safari/8536.25');

echo $browser->__toString();

Browser Name:iPad
Browser Version:unknown
Browser User Agent String: Mozilla/5.0 (iPad; CPU OS 6_1_3 like Mac OS X) AppleWebKit/536.26 (KHTML, like Gecko) CriOS/28.0.1500.12 Mobile/10B329 Safari/8536.25
Platform:iPad

Change the following method

protected function checkBrowseriPad() {
        if( stripos($this->_agent,'iPad') !== false ) {
            $aresult = explode('/',stristr($this->_agent,'Version'));
            if( isset($aresult[1]) ) {
                $aversion = explode(' ',$aresult[1]);
                $this->setVersion($aversion[0]);
            }
            else {
                $aresult = explode('/',stristr($this->_agent,'CriOS')); // Chrome on iOS
                if( isset($aresult[1]) ) {
                    $aversion = explode(' ',$aresult[1]);
                    $this->setVersion($aversion[0]);
                }
                else {
                    $this->setVersion(self::VERSION_UNKNOWN);
                }
            }
            $this->setMobile(true);
            $this->setBrowser(self::BROWSER_IPAD);
            return true;
        }
        return false;
    }

Browser Name:iPad
Browser Version:28.0.1500.12
Browser User Agent String:Mozilla/5.0 (iPad; CPU OS 6_1_3 like Mac OS X) AppleWebKit/536.26 (KHTML, like Gecko) CriOS/28.0.1500.12 Mobile/10B329 Safari/8536.25
Platform:iPad

This will also have to be applied to iPhone detection as well.