PluginProbe
FireBox – WooCommerce Popup Builder, Exit Intent Popup, Email Optin & Cart Abandonment / 1.0.13
FireBox – WooCommerce Popup Builder, Exit Intent Popup, Email Optin & Cart Abandonment v1.0.13
3.1.14 3.1.13 3.1.12 3.1.11 3.1.10 3.1.9 3.1.8 3.1.7 trunk 1.0.0 1.0.1 1.0.10 1.0.11 1.0.12 1.0.13 1.0.14 1.0.2 1.0.3 1.0.4 1.0.5 1.0.6 1.0.7 1.0.8 1.0.9 1.1.0 All 123 releases
firebox / Inc / Framework / Inc / Base / User.php

User.php in FireBox – WooCommerce Popup Builder, Exit Intent Popup, Email Optin & Cart Abandonment 1.0.13, at Inc/Framework/Inc/Base/User.php

97 lines 2.0 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 /**
3 * @package FirePlugins Framework
4 * @version 1.0.27
5 *
6 * @author FirePlugins <[email protected]>
7 * @link https://www.fireplugins.com
8 * @copyright Copyright © 2022 FirePlugins All Rights Reserved
9 * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later
10 */
11
12 namespace FPFramework\Base;
13
14 if (!defined('ABSPATH'))
15 {
16 exit; // Exit if accessed directly.
17 }
18
19 class User
20 {
21 /**
22 * Return the user object
23 *
24 * @param mixed $value The user identifier
25 * @param mixed $field The field to search for (id | ID | slug | email | login)
26 *
27 * @return mixed object on success, null on failure
28 */
29 public static function get($value = null, $field = 'ID')
30 {
31 // Return current active user
32 if (empty($field) || empty($value))
33 {
34 if (!is_user_logged_in())
35 {
36 return new \WP_User;
37 }
38
39 $field = 'ID';
40 $value = get_current_user_id();
41 }
42
43 if (!self::exists($value))
44 {
45 return;
46 }
47
48 return get_user_by($field, $value);
49 }
50
51 /**
52 * Checks whether the user does exist in the database
53 *
54 * @param integer $value The user identifier
55 *
56 * @return bool
57 */
58 public static function exists($value)
59 {
60 $hash = 'fpf_user' . $value;
61
62 // check cache
63 if ($user = wp_cache_get($hash))
64 {
65 return $user;
66 }
67
68 $user = get_user_by('ID', $value);
69
70 // set cache
71 wp_cache_set($hash, $user);
72
73 return $user;
74 }
75
76 /**
77 * Get the IP address of the user
78 *
79 * @return string
80 */
81 public static function getIP()
82 {
83 // Whether ip is from the share internet
84 if (!empty($_SERVER['HTTP_CLIENT_IP']))
85 {
86 return $_SERVER['HTTP_CLIENT_IP'];
87 }
88
89 //whether ip is from the proxy
90 if (!empty($_SERVER['HTTP_X_FORWARDED_FOR']))
91 {
92 return $_SERVER['HTTP_X_FORWARDED_FOR'];
93 }
94
95 return $_SERVER['REMOTE_ADDR'];
96 }
97 }