Lines Matching refs:this

154             // Seen this on HTC Sensation. SensationXE_Beats_Z715e.
156 // Seen this on a HTC.
673 * Construct an instance of this class.
684 $this->setHttpHeaders($headers);
685 $this->setUserAgent($userAgent);
715 $this->httpHeaders = array();
721 $this->httpHeaders[$key] = $value;
726 $this->setCfHeaders($httpHeaders);
736 return $this->httpHeaders;
761 if (isset($this->httpHeaders[$header])) {
762 return $this->httpHeaders[$header];
763 } elseif (isset($this->httpHeaders[$altHeader])) {
764 return $this->httpHeaders[$altHeader];
802 $this->cloudfrontHeaders = array();
809 $this->cloudfrontHeaders[strtoupper($key)] = $value;
824 return $this->cloudfrontHeaders;
847 $this->cache = array();
850 return $this->userAgent = $this->prepareUserAgent($userAgent);
852 $this->userAgent = null;
853 foreach ($this->getUaHttpHeaders() as $altHeader) {
854 if (false === empty($this->httpHeaders[$altHeader])) { // @todo: should use getHttpHeader(), but it would be slow. (Serban)
855 $this->userAgent .= $this->httpHeaders[$altHeader] . " ";
859 if (!empty($this->userAgent)) {
860 return $this->userAgent = $this->prepareUserAgent($this->userAgent);
864 if (count($this->getCfHeaders()) > 0) {
865 return $this->userAgent = 'Amazon CloudFront';
867 return $this->userAgent = null;
877 return $this->userAgent;
899 $this->detectionType = $type;
904 return $this->matchingRegex;
909 return $this->matchesArray;
988 * The reason this is separate is because utilities rules
1023 if ($this->detectionType == self::DETECTION_TYPE_EXTENDED) {
1050 foreach ($this->getMobileHeaders() as $mobileHeader => $matchType) {
1051 if (isset($this->httpHeaders[$mobileHeader])) {
1054 if (strpos($this->httpHeaders[$mobileHeader], $_match) !== false) {
1086 $this->setDetectionType(self::DETECTION_TYPE_MOBILE);
1090 return $this->matchUAAgainstKey($key);
1102 foreach ($this->getRules() as $_regex) {
1107 if ($this->match($_regex, $userAgent)) {
1128 if (false === isset($this->cache[$key])) {
1131 $_rules = array_change_key_case($this->getRules());
1134 $this->cache[$key] = $this->match($_rules[$key]);
1137 if (false === isset($this->cache[$key])) {
1138 $this->cache[$key] = false;
1142 return $this->cache[$key];
1156 $this->setHttpHeaders($httpHeaders);
1160 $this->setUserAgent($userAgent);
1164 if ($this->getUserAgent() === 'Amazon CloudFront') {
1165 $cfHeaders = $this->getCfHeaders();
1171 $this->setDetectionType(self::DETECTION_TYPE_MOBILE);
1173 if ($this->checkHttpHeadersForMobile()) {
1176 return $this->matchDetectionRulesAgainstUA();
1192 if ($this->getUserAgent() === 'Amazon CloudFront') {
1193 $cfHeaders = $this->getCfHeaders();
1199 $this->setDetectionType(self::DETECTION_TYPE_MOBILE);
1202 if ($this->match($_regex, $userAgent)) {
1224 $this->setHttpHeaders($httpHeaders);
1228 $this->setUserAgent($userAgent);
1231 $this->setDetectionType(self::DETECTION_TYPE_EXTENDED);
1233 return $this->matchUAAgainstKey($key);
1253 $match = (bool) preg_match(sprintf('#%s#is', $regex), (false === empty($userAgent) ? $userAgent : $this->userAgent), $matches);
1256 $this->matchingRegex = $regex;
1257 $this->matchesArray = $matches;
1303 * invalid parameter will default to the this type as well.
1332 preg_match(sprintf('#%s#is', $propertyPattern), $this->userAgent, $match);
1335 $version = ($type == self::VERSION_TYPE_FLOAT ? $this->prepareVersionNo($match[1]) : $match[1]);
1354 $isMobile = $this->isMobile();
1358 $this->is('iOS') && $this->version('iPad', self::VERSION_TYPE_FLOAT) >= 4.3 ||
1359 $this->is('iOS') && $this->version('iPhone', self::VERSION_TYPE_FLOAT) >= 4.3 ||
1360 $this->is('iOS') && $this->version('iPod', self::VERSION_TYPE_FLOAT) >= 4.3 ||
1366 ( $this->version('Android', self::VERSION_TYPE_FLOAT)>2.1 && $this->is('Webkit') ) ||
1369 $this->version('Windows Phone OS', self::VERSION_TYPE_FLOAT) >= 7.5 ||
1372 $this->is('BlackBerry') && $this->version('BlackBerry', self::VERSION_TYPE_FLOAT) >= 6.0 ||
1374 $this->match('Playbook.*Tablet') ||
1377 ( $this->version('webOS', self::VERSION_TYPE_FLOAT) >= 1.4 && $this->match('Palm|Pre|Pixi') ) ||
1379 $this->match('hp.*TouchPad') ||
1382 ( $this->is('Firefox') && $this->version('Firefox', self::VERSION_TYPE_FLOAT) >= 18 ) ||
1385 ( $this->is('Chrome') && $this->is('AndroidOS') && $this->version('Android', self::VERSION_TYPE_FLOAT) >= 4.0 ) ||
1388 ( $this->is('Skyfire') && $this->version('Skyfire', self::VERSION_TYPE_FLOAT) >= 4.1 && $this->is('AndroidOS') && $this->version('Android', self::VERSION_TYPE_FLOAT) >= 2.3 ) ||
1391 ( $this->is('Opera') && $this->version('Opera Mobi', self::VERSION_TYPE_FLOAT) >= 11.5 && $this->is('AndroidOS') ) ||
1394 $this->is('MeeGoOS') ||
1397 $this->is('Tizen') ||
1401 $this->is('Dolfin') && $this->version('Bada', self::VERSION_TYPE_FLOAT) >= 2.0 ||
1404 ( ($this->is('UC Browser') || $this->is('Dolfin')) && $this->version('Android', self::VERSION_TYPE_FLOAT) >= 2.3 ) ||
1407 ( $this->match('Kindle Fire') ||
1408 $this->is('Kindle') && $this->version('Kindle', self::VERSION_TYPE_FLOAT) >= 3.0 ) ||
1411 $this->is('AndroidOS') && $this->is('NookTablet') ||
1414 $this->version('Chrome', self::VERSION_TYPE_FLOAT) >= 16 && !$isMobile ||
1417 $this->version('Safari', self::VERSION_TYPE_FLOAT) >= 5.0 && !$isMobile ||
1420 $this->version('Firefox', self::VERSION_TYPE_FLOAT) >= 10.0 && !$isMobile ||
1423 $this->version('IE', self::VERSION_TYPE_FLOAT) >= 7.0 && !$isMobile ||
1426 $this->version('Opera', self::VERSION_TYPE_FLOAT) >= 10 && !$isMobile
1432 $this->is('iOS') && $this->version('iPad', self::VERSION_TYPE_FLOAT)<4.3 ||
1433 $this->is('iOS') && $this->version('iPhone', self::VERSION_TYPE_FLOAT)<4.3 ||
1434 $this->is('iOS') && $this->version('iPod', self::VERSION_TYPE_FLOAT)<4.3 ||
1437 $this->is('Blackberry') && $this->version('BlackBerry', self::VERSION_TYPE_FLOAT) >= 5 && $this->version('BlackBerry', self::VERSION_TYPE_FLOAT)<6 ||
1440 ($this->version('Opera Mini', self::VERSION_TYPE_FLOAT) >= 5.0 && $this->version('Opera Mini', self::VERSION_TYPE_FLOAT) <= 7.0 &&
1441 ($this->version('Android', self::VERSION_TYPE_FLOAT) >= 2.3 || $this->is('iOS')) ) ||
1444 $this->match('NokiaN8|NokiaC7|N97.*Series60|Symbian/3') ||
1446 // @todo: report this (tested on Nokia N71)
1447 $this->version('Opera Mobi', self::VERSION_TYPE_FLOAT) >= 11 && $this->is('SymbianOS')
1454 $this->version('BlackBerry', self::VERSION_TYPE_FLOAT) <= 5.0 ||
1456 $this->match('MSIEMobile|Windows CE.*Mobile') || $this->version('Windows Mobile', self::VERSION_TYPE_FLOAT) <= 5.2 ||
1459 $this->is('iOS') && $this->version('iPad', self::VERSION_TYPE_FLOAT) <= 3.2 ||
1460 $this->is('iOS') && $this->version('iPhone', self::VERSION_TYPE_FLOAT) <= 3.2 ||
1461 $this->is('iOS') && $this->version('iPod', self::VERSION_TYPE_FLOAT) <= 3.2 ||
1464 $this->version('IE', self::VERSION_TYPE_FLOAT) <= 7.0 && !$isMobile