PluginProbe ʕ •ᴥ•ʔ
NitroPack – Performance, Page Speed & Cache Plugin for Core Web Vitals, CDN & Image Optimization / 1.15.3
NitroPack – Performance, Page Speed & Cache Plugin for Core Web Vitals, CDN & Image Optimization v1.15.3
1.19.8 1.19.7 1.19.6 1.19.5 trunk 1.10.0 1.10.1 1.10.2 1.10.3 1.10.4 1.11.0 1.12.0 1.13.0 1.14.0 1.15.0 1.15.1 1.15.2 1.15.3 1.16.0 1.16.1 1.16.2 1.16.3 1.16.4 1.16.5 1.16.6 1.16.7 1.16.8 1.17.0 1.17.6 1.17.7 1.17.8 1.17.9 1.18.0 1.18.1 1.18.2 1.18.3 1.18.4 1.18.5 1.18.6 1.18.7 1.18.8 1.18.9 1.19.0 1.19.1 1.19.2 1.19.3 1.19.4 1.3.19 1.3.20 1.4.0 1.4.1 1.5.0 1.5.1 1.5.10 1.5.11 1.5.12 1.5.13 1.5.14 1.5.15 1.5.16 1.5.17 1.5.18 1.5.19 1.5.2 1.5.3 1.5.4 1.5.5 1.5.6 1.5.7 1.5.8 1.5.9 1.6.0 1.6.1 1.7.0 1.7.1 1.8.0 1.8.1 1.8.3 1.9.0 1.9.1 1.9.2
nitropack / nitropack-sdk / NitroPack / SDK / Device.php
nitropack / nitropack-sdk / NitroPack / SDK Last commit date
Api 2 years ago Integrations 2 years ago StorageDriver 4 years ago Url 2 years ago Utils 2 years ago data 6 years ago Api.php 2 years ago Backlog.php 4 years ago BacklogReplayTimeoutException.php 4 years ago ChallengeProcessingException.php 4 years ago ChallengeVerificationException.php 4 years ago ConfigFetcherException.php 4 years ago Crypto.php 3 years ago Device.php 6 years ago DeviceType.php 6 years ago ElementRevision.php 3 years ago EmptyConfigException.php 6 years ago ExcludeEntry.php 2 years ago ExcludeOperationType.php 2 years ago FileHandle.php 5 years ago Filesystem.php 4 years ago HealthStatus.php 5 years ago IntegrationUrl.php 2 years ago NitroPack.php 2 years ago NoConfigException.php 5 years ago Pagecache.php 2 years ago PurgeType.php 3 years ago ServiceDownException.php 5 years ago StorageException.php 6 years ago VariationCookieException.php 5 years ago WebhookException.php 5 years ago Website.php 6 years ago
Device.php
65 lines
1 <?php
2 namespace NitroPack\SDK;
3
4 class Device {
5 private $userAgent;
6
7 public static function getKnownTypes() {
8 return array(DeviceType::MOBILE, DeviceType::TABLET, DeviceType::DESKTOP);
9 }
10
11 public function __construct($userAgent = "") {
12 $this->userAgent = $userAgent;
13 }
14
15 public function getUserAgent() {
16 return $this->userAgent;
17 }
18
19 public function isDesktop() {
20 return !($this->isMobile() && $this->isTablet());
21 }
22
23 public function isMobile() {
24 if (empty($this->userAgent)) return false;
25
26 $mobile_agents = array('iPod','iPhone','MobileSafari','webOS','BlackBerry','windows phone','symbian','vodafone','opera mini','windows ce','smartphone','palm','midp');
27
28 foreach($mobile_agents as $mobile_agent){
29 if(stripos($this->userAgent, $mobile_agent)) {
30 return true;
31 }
32 }
33
34 if(stripos($this->userAgent, "Android") && stripos($this->userAgent, "mobile")) {
35 return true;
36 }
37
38 return false;
39 }
40
41 public function isTablet() {
42 if (empty($this->userAgent)) return false;
43
44 $tablet_agents = array('iPad','RIM Tablet','hp-tablet','Kindle Fire','Android');
45
46 foreach($tablet_agents as $tablet_agent){
47 if(stripos($this->userAgent, $tablet_agent)) {
48 return true;
49 }
50 }
51
52 if(stripos($this->userAgent, "Android") && stripos($this->userAgent, "mobile")) {
53 return true;
54 }
55
56 return false;
57 }
58
59 public function getType() {
60 if ($this->isMobile()) return DeviceType::MOBILE;
61 if ($this->isTablet()) return DeviceType::TABLET;
62 return DeviceType::DESKTOP;
63 }
64 }
65