PluginProbe ʕ •ᴥ•ʔ
Independent Analytics – WordPress Analytics Plugin / 1.30.0
Independent Analytics – WordPress Analytics Plugin v1.30.0
2.15.0 2.14.10 trunk 1.1 1.10 1.10.1 1.11 1.12 1.13 1.14 1.15 1.16 1.17 1.17.1 1.17.2 1.17.3 1.17.4 1.18 1.18.1 1.19.0 1.19.1 1.2 1.20.0 1.21.0 1.22.0 1.22.1 1.23.0 1.23.1 1.24.0 1.24.1 1.25.0 1.25.1 1.26.0 1.27.0 1.28.0 1.28.1 1.28.2 1.28.3 1.29.0 1.3 1.30.0 1.30.1 1.4 1.5 1.6 1.7 1.8 1.9 2.0.0 2.0.1 2.1.4 2.1.5 2.1.6 2.10.0 2.10.1 2.10.2 2.10.3 2.10.4 2.11.0 2.11.1 2.11.10 2.11.2 2.11.3 2.11.4 2.11.5 2.11.6 2.11.7 2.11.8 2.11.9 2.12.0 2.12.1 2.12.2 2.13.1 2.13.2 2.13.5 2.13.6 2.14.0 2.14.1 2.14.2 2.14.4 2.14.6 2.14.7 2.14.8 2.14.9 2.2.0 2.2.1 2.3.1 2.3.2 2.4.2 2.4.3 2.5.0 2.5.1 2.6.0 2.6.1 2.6.2 2.6.3 2.6.4 2.7.0 2.7.1 2.7.2 2.7.3 2.8.2 2.8.3 2.8.4 2.8.5 2.8.6 2.8.7 2.8.8 2.8.9 2.9.2 2.9.3 2.9.4 2.9.5 2.9.6 2.9.7
independent-analytics / IAWP / Utils / Request.php
independent-analytics / IAWP / Utils Last commit date
Array_To_CSV.php 3 years ago Currency.php 3 years ago Device.php 2 years ago Number_Formatter.php 3 years ago Option.php 2 years ago Request.php 2 years ago Salt.php 3 years ago Security.php 3 years ago Singleton.php 2 years ago String_Util.php 3 years ago URL.php 3 years ago WP_Async_Request.php 3 years ago WordPress_Site_Date_Format_Pattern.php 3 years ago
Request.php
60 lines
1 <?php
2
3 namespace IAWP_SCOPED\IAWP\Utils;
4
5 class Request
6 {
7 public static function path_relative_to_site_url($url = null)
8 {
9 if (\is_null($url)) {
10 $url = self::url();
11 }
12 $site_url = \site_url();
13 if ($url == $site_url) {
14 return '/';
15 } elseif (\substr($url, 0, \strlen($site_url)) == $site_url) {
16 return \substr($url, \strlen($site_url));
17 } else {
18 return $url;
19 }
20 }
21 public static function ip()
22 {
23 $headers = ['HTTP_X_FORWARDED_FOR', 'HTTP_X_FORWARDED', 'HTTP_FORWARDED_FOR', 'HTTP_FORWARDED', 'REMOTE_ADDR', 'HTTP_CF_CONNECTING_IP', 'HTTP_CLIENT_IP', 'HTTP_INCAP_CLIENT_IP'];
24 foreach ($headers as $header) {
25 if (isset($_SERVER[$header])) {
26 return \explode(',', $_SERVER[$header])[0];
27 }
28 }
29 return null;
30 }
31 public static function user_agent()
32 {
33 return $_SERVER['HTTP_USER_AGENT'];
34 }
35 public static function device_id() : ?int
36 {
37 return Device::getInstance()->id();
38 }
39 public static function is_bot() : bool
40 {
41 return Device::getInstance()->is_bot();
42 }
43 private static function scheme()
44 {
45 if (!empty($_SERVER['REQUEST_SCHEME']) && $_SERVER['REQUEST_SCHEME'] == 'https' || !empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 'on' || !empty($_SERVER['SERVER_PORT']) && $_SERVER['SERVER_PORT'] == '443') {
46 return 'https';
47 } else {
48 return 'http';
49 }
50 }
51 private static function url()
52 {
53 if (!empty($_SERVER['HTTP_HOST']) && !empty($_SERVER['REQUEST_URI'])) {
54 return \esc_url_raw(self::scheme() . '://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI']);
55 } else {
56 return null;
57 }
58 }
59 }
60