PluginProbe ʕ •ᴥ•ʔ
NitroPack – Performance, Page Speed & Cache Plugin for Core Web Vitals, CDN & Image Optimization / 1.18.1
NitroPack – Performance, Page Speed & Cache Plugin for Core Web Vitals, CDN & Image Optimization v1.18.1
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 1 year ago Integrations 1 year ago StorageDriver 1 year ago Url 1 year ago Utils 1 year ago data 1 year ago Api.php 1 year ago Backlog.php 1 year ago BacklogReplayTimeoutException.php 1 year ago ChallengeProcessingException.php 1 year ago ChallengeVerificationException.php 1 year ago ConfigFetcherException.php 1 year ago Crypto.php 1 year ago Device.php 1 year ago DeviceType.php 1 year ago ElementRevision.php 1 year ago EmptyConfigException.php 1 year ago ExcludeEntry.php 1 year ago ExcludeOperationType.php 1 year ago FileHandle.php 1 year ago Filesystem.php 1 year ago HealthStatus.php 1 year ago IntegrationUrl.php 1 year ago NitroPack.php 1 year ago NoConfigException.php 1 year ago Pagecache.php 1 year ago PurgeType.php 1 year ago ServiceDownException.php 1 year ago StorageException.php 1 year ago VariationCookieException.php 1 year ago WebhookException.php 1 year ago Website.php 1 year 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