Passed
Pull Request — master (#217)
by Patrik
03:16
created
includes/class-wpinv-session-handler.php 1 patch
Indentation   +277 added lines, -277 removed lines patch added patch discarded remove patch
@@ -12,125 +12,125 @@  discard block
 block discarded – undo
12 12
  */
13 13
 class WPInv_Session_Handler extends WPInv_Session {
14 14
 
15
-	/**
16
-	 * Cookie name used for the session.
17
-	 *
18
-	 * @var string cookie name
19
-	 */
20
-	protected $_cookie;
21
-
22
-	/**
23
-	 * Stores session expiry.
24
-	 *
25
-	 * @var string session due to expire timestamp
26
-	 */
27
-	protected $_session_expiring;
28
-
29
-	/**
30
-	 * Stores session due to expire timestamp.
31
-	 *
32
-	 * @var string session expiration timestamp
33
-	 */
34
-	protected $_session_expiration;
35
-
36
-	/**
37
-	 * True when the cookie exists.
38
-	 *
39
-	 * @var bool Based on whether a cookie exists.
40
-	 */
41
-	protected $_has_cookie = false;
42
-
43
-	/**
44
-	 * Table name for session data.
45
-	 *
46
-	 * @var string Custom session table name
47
-	 */
48
-	protected $_table;
49
-
50
-	/**
51
-	 * Constructor for the session class.
52
-	 */
53
-	public function __construct() {
54
-
55
-	    $this->_cookie = apply_filters( 'wpinv_cookie', 'wpinv_session_' . COOKIEHASH );
15
+    /**
16
+     * Cookie name used for the session.
17
+     *
18
+     * @var string cookie name
19
+     */
20
+    protected $_cookie;
21
+
22
+    /**
23
+     * Stores session expiry.
24
+     *
25
+     * @var string session due to expire timestamp
26
+     */
27
+    protected $_session_expiring;
28
+
29
+    /**
30
+     * Stores session due to expire timestamp.
31
+     *
32
+     * @var string session expiration timestamp
33
+     */
34
+    protected $_session_expiration;
35
+
36
+    /**
37
+     * True when the cookie exists.
38
+     *
39
+     * @var bool Based on whether a cookie exists.
40
+     */
41
+    protected $_has_cookie = false;
42
+
43
+    /**
44
+     * Table name for session data.
45
+     *
46
+     * @var string Custom session table name
47
+     */
48
+    protected $_table;
49
+
50
+    /**
51
+     * Constructor for the session class.
52
+     */
53
+    public function __construct() {
54
+
55
+        $this->_cookie = apply_filters( 'wpinv_cookie', 'wpinv_session_' . COOKIEHASH );
56 56
         add_action( 'init', array( $this, 'init' ), -1 );
57
-	}
58
-
59
-	/**
60
-	 * Init hooks and session data.
61
-	 *
62
-	 * @since 3.3.0
63
-	 */
64
-	public function init() {
65
-		$this->init_session_cookie();
66
-
67
-		add_action( 'wp', array( $this, 'set_customer_session_cookie' ), 10 );
68
-		add_action( 'shutdown', array( $this, 'save_data' ), 20 );
69
-		add_action( 'wp_logout', array( $this, 'destroy_session' ) );
70
-
71
-		if ( ! is_user_logged_in() ) {
72
-			add_filter( 'nonce_user_logged_out', array( $this, 'nonce_user_logged_out' ) );
73
-		}
74
-	}
75
-
76
-	/**
77
-	 * Setup cookie and customer ID.
78
-	 *
79
-	 * @since 3.6.0
80
-	 */
81
-	public function init_session_cookie() {
82
-		$cookie = $this->get_session_cookie();
83
-
84
-		if ( $cookie ) {
85
-			$this->_customer_id        = $cookie[0];
86
-			$this->_session_expiration = $cookie[1];
87
-			$this->_session_expiring   = $cookie[2];
88
-			$this->_has_cookie         = true;
89
-			$this->_data               = $this->get_session_data();
90
-
91
-			// If the user logs in, update session.
92
-			if ( is_user_logged_in() && get_current_user_id() != $this->_customer_id ) {
93
-				$this->_customer_id = get_current_user_id();
94
-				$this->_dirty       = true;
95
-				$this->save_data();
96
-				$this->set_customer_session_cookie( true );
97
-			}
98
-
99
-			// Update session if its close to expiring.
100
-			if ( time() > $this->_session_expiring ) {
101
-				$this->set_session_expiration();
102
-				$this->update_session_timestamp( $this->_customer_id, $this->_session_expiration );
103
-			}
104
-		} else {
105
-			$this->set_session_expiration();
106
-			$this->_customer_id = $this->generate_customer_id();
107
-			$this->_data        = $this->get_session_data();
108
-		}
109
-	}
110
-
111
-	/**
112
-	 * Sets the session cookie on-demand (usually after adding an item to the cart).
113
-	 *
114
-	 * Since the cookie name (as of 2.1) is prepended with wp, cache systems like batcache will not cache pages when set.
115
-	 *
116
-	 * Warning: Cookies will only be set if this is called before the headers are sent.
117
-	 *
118
-	 * @param bool $set Should the session cookie be set.
119
-	 */
120
-	public function set_customer_session_cookie( $set ) {
121
-		if ( $set ) {
122
-			$to_hash           = $this->_customer_id . '|' . $this->_session_expiration;
123
-			$cookie_hash       = hash_hmac( 'md5', $to_hash, wp_hash( $to_hash ) );
124
-			$cookie_value      = $this->_customer_id . '||' . $this->_session_expiration . '||' . $this->_session_expiring . '||' . $cookie_hash;
125
-			$this->_has_cookie = true;
126
-
127
-			if ( ! isset( $_COOKIE[ $this->_cookie ] ) || $_COOKIE[ $this->_cookie ] !== $cookie_value ) {
128
-				$this->setcookie( $this->_cookie, $cookie_value, $this->_session_expiration, $this->use_secure_cookie(), true );
129
-			}
130
-		}
131
-	}
132
-
133
-	public function setcookie($name, $value, $expire = 0, $secure = false, $httponly = false){
57
+    }
58
+
59
+    /**
60
+     * Init hooks and session data.
61
+     *
62
+     * @since 3.3.0
63
+     */
64
+    public function init() {
65
+        $this->init_session_cookie();
66
+
67
+        add_action( 'wp', array( $this, 'set_customer_session_cookie' ), 10 );
68
+        add_action( 'shutdown', array( $this, 'save_data' ), 20 );
69
+        add_action( 'wp_logout', array( $this, 'destroy_session' ) );
70
+
71
+        if ( ! is_user_logged_in() ) {
72
+            add_filter( 'nonce_user_logged_out', array( $this, 'nonce_user_logged_out' ) );
73
+        }
74
+    }
75
+
76
+    /**
77
+     * Setup cookie and customer ID.
78
+     *
79
+     * @since 3.6.0
80
+     */
81
+    public function init_session_cookie() {
82
+        $cookie = $this->get_session_cookie();
83
+
84
+        if ( $cookie ) {
85
+            $this->_customer_id        = $cookie[0];
86
+            $this->_session_expiration = $cookie[1];
87
+            $this->_session_expiring   = $cookie[2];
88
+            $this->_has_cookie         = true;
89
+            $this->_data               = $this->get_session_data();
90
+
91
+            // If the user logs in, update session.
92
+            if ( is_user_logged_in() && get_current_user_id() != $this->_customer_id ) {
93
+                $this->_customer_id = get_current_user_id();
94
+                $this->_dirty       = true;
95
+                $this->save_data();
96
+                $this->set_customer_session_cookie( true );
97
+            }
98
+
99
+            // Update session if its close to expiring.
100
+            if ( time() > $this->_session_expiring ) {
101
+                $this->set_session_expiration();
102
+                $this->update_session_timestamp( $this->_customer_id, $this->_session_expiration );
103
+            }
104
+        } else {
105
+            $this->set_session_expiration();
106
+            $this->_customer_id = $this->generate_customer_id();
107
+            $this->_data        = $this->get_session_data();
108
+        }
109
+    }
110
+
111
+    /**
112
+     * Sets the session cookie on-demand (usually after adding an item to the cart).
113
+     *
114
+     * Since the cookie name (as of 2.1) is prepended with wp, cache systems like batcache will not cache pages when set.
115
+     *
116
+     * Warning: Cookies will only be set if this is called before the headers are sent.
117
+     *
118
+     * @param bool $set Should the session cookie be set.
119
+     */
120
+    public function set_customer_session_cookie( $set ) {
121
+        if ( $set ) {
122
+            $to_hash           = $this->_customer_id . '|' . $this->_session_expiration;
123
+            $cookie_hash       = hash_hmac( 'md5', $to_hash, wp_hash( $to_hash ) );
124
+            $cookie_value      = $this->_customer_id . '||' . $this->_session_expiration . '||' . $this->_session_expiring . '||' . $cookie_hash;
125
+            $this->_has_cookie = true;
126
+
127
+            if ( ! isset( $_COOKIE[ $this->_cookie ] ) || $_COOKIE[ $this->_cookie ] !== $cookie_value ) {
128
+                $this->setcookie( $this->_cookie, $cookie_value, $this->_session_expiration, $this->use_secure_cookie(), true );
129
+            }
130
+        }
131
+    }
132
+
133
+    public function setcookie($name, $value, $expire = 0, $secure = false, $httponly = false){
134 134
         if ( ! headers_sent() ) {
135 135
             setcookie( $name, $value, $expire, COOKIEPATH ? COOKIEPATH : '/', COOKIE_DOMAIN, $secure, apply_filters( 'wpinv_cookie_httponly', $httponly, $name, $value, $expire, $secure ) );
136 136
         } elseif ( defined( 'WP_DEBUG' ) && WP_DEBUG ) {
@@ -139,96 +139,96 @@  discard block
 block discarded – undo
139 139
         }
140 140
     }
141 141
 
142
-	/**
143
-	 * Should the session cookie be secure?
144
-	 *
145
-	 * @since 3.6.0
146
-	 * @return bool
147
-	 */
148
-	protected function use_secure_cookie() {
142
+    /**
143
+     * Should the session cookie be secure?
144
+     *
145
+     * @since 3.6.0
146
+     * @return bool
147
+     */
148
+    protected function use_secure_cookie() {
149 149
         $is_https = false !== strstr( get_option( 'home' ), 'https:' );
150
-		return apply_filters( 'wpinv_session_use_secure_cookie', $is_https && is_ssl() );
151
-	}
152
-
153
-	/**
154
-	 * Return true if the current user has an active session, i.e. a cookie to retrieve values.
155
-	 *
156
-	 * @return bool
157
-	 */
158
-	public function has_session() {
159
-		return isset( $_COOKIE[ $this->_cookie ] ) || $this->_has_cookie || is_user_logged_in(); // @codingStandardsIgnoreLine.
160
-	}
161
-
162
-	/**
163
-	 * Set session expiration.
164
-	 */
165
-	public function set_session_expiration() {
166
-		$this->_session_expiring   = time() + intval( apply_filters( 'wpinv_session_expiring', 60 * 60 * 47 ) ); // 47 Hours.
167
-		$this->_session_expiration = time() + intval( apply_filters( 'wpinv_session_expiration', 60 * 60 * 48 ) ); // 48 Hours.
168
-	}
169
-
170
-	/**
171
-	 * Generate a unique customer ID for guests, or return user ID if logged in.
172
-	 *
173
-	 * Uses Portable PHP password hashing framework to generate a unique cryptographically strong ID.
174
-	 *
175
-	 * @return string
176
-	 */
177
-	public function generate_customer_id() {
178
-		$customer_id = '';
179
-
180
-		if ( is_user_logged_in() ) {
181
-			$customer_id = get_current_user_id();
182
-		}
183
-
184
-		if ( empty( $customer_id ) ) {
150
+        return apply_filters( 'wpinv_session_use_secure_cookie', $is_https && is_ssl() );
151
+    }
152
+
153
+    /**
154
+     * Return true if the current user has an active session, i.e. a cookie to retrieve values.
155
+     *
156
+     * @return bool
157
+     */
158
+    public function has_session() {
159
+        return isset( $_COOKIE[ $this->_cookie ] ) || $this->_has_cookie || is_user_logged_in(); // @codingStandardsIgnoreLine.
160
+    }
161
+
162
+    /**
163
+     * Set session expiration.
164
+     */
165
+    public function set_session_expiration() {
166
+        $this->_session_expiring   = time() + intval( apply_filters( 'wpinv_session_expiring', 60 * 60 * 47 ) ); // 47 Hours.
167
+        $this->_session_expiration = time() + intval( apply_filters( 'wpinv_session_expiration', 60 * 60 * 48 ) ); // 48 Hours.
168
+    }
169
+
170
+    /**
171
+     * Generate a unique customer ID for guests, or return user ID if logged in.
172
+     *
173
+     * Uses Portable PHP password hashing framework to generate a unique cryptographically strong ID.
174
+     *
175
+     * @return string
176
+     */
177
+    public function generate_customer_id() {
178
+        $customer_id = '';
179
+
180
+        if ( is_user_logged_in() ) {
181
+            $customer_id = get_current_user_id();
182
+        }
183
+
184
+        if ( empty( $customer_id ) ) {
185 185
             $customer_id = wp_create_nonce('wpinv-session-customer-id');
186
-		}
187
-
188
-		return $customer_id;
189
-	}
190
-
191
-	/**
192
-	 * Get the session cookie, if set. Otherwise return false.
193
-	 *
194
-	 * Session cookies without a customer ID are invalid.
195
-	 *
196
-	 * @return bool|array
197
-	 */
198
-	public function get_session_cookie() {
199
-		$cookie_value = isset( $_COOKIE[ $this->_cookie ] ) ? wp_unslash( $_COOKIE[ $this->_cookie ] ) : false; // @codingStandardsIgnoreLine.
200
-
201
-		if ( empty( $cookie_value ) || ! is_string( $cookie_value ) ) {
202
-			return false;
203
-		}
204
-
205
-		list( $customer_id, $session_expiration, $session_expiring, $cookie_hash ) = explode( '||', $cookie_value );
206
-
207
-		if ( empty( $customer_id ) ) {
208
-			return false;
209
-		}
210
-
211
-		// Validate hash.
212
-		$to_hash = $customer_id . '|' . $session_expiration;
213
-		$hash    = hash_hmac( 'md5', $to_hash, wp_hash( $to_hash ) );
214
-
215
-		if ( empty( $cookie_hash ) || ! hash_equals( $hash, $cookie_hash ) ) {
216
-			return false;
217
-		}
218
-
219
-		return array( $customer_id, $session_expiration, $session_expiring, $cookie_hash );
220
-	}
221
-
222
-	/**
223
-	 * Get session data.
224
-	 *
225
-	 * @return array
226
-	 */
227
-	public function get_session_data() {
228
-		return $this->has_session() ? (array) $this->get_session( $this->_customer_id ) : array();
229
-	}
230
-
231
-	public function generate_key($customer_id){
186
+        }
187
+
188
+        return $customer_id;
189
+    }
190
+
191
+    /**
192
+     * Get the session cookie, if set. Otherwise return false.
193
+     *
194
+     * Session cookies without a customer ID are invalid.
195
+     *
196
+     * @return bool|array
197
+     */
198
+    public function get_session_cookie() {
199
+        $cookie_value = isset( $_COOKIE[ $this->_cookie ] ) ? wp_unslash( $_COOKIE[ $this->_cookie ] ) : false; // @codingStandardsIgnoreLine.
200
+
201
+        if ( empty( $cookie_value ) || ! is_string( $cookie_value ) ) {
202
+            return false;
203
+        }
204
+
205
+        list( $customer_id, $session_expiration, $session_expiring, $cookie_hash ) = explode( '||', $cookie_value );
206
+
207
+        if ( empty( $customer_id ) ) {
208
+            return false;
209
+        }
210
+
211
+        // Validate hash.
212
+        $to_hash = $customer_id . '|' . $session_expiration;
213
+        $hash    = hash_hmac( 'md5', $to_hash, wp_hash( $to_hash ) );
214
+
215
+        if ( empty( $cookie_hash ) || ! hash_equals( $hash, $cookie_hash ) ) {
216
+            return false;
217
+        }
218
+
219
+        return array( $customer_id, $session_expiration, $session_expiring, $cookie_hash );
220
+    }
221
+
222
+    /**
223
+     * Get session data.
224
+     *
225
+     * @return array
226
+     */
227
+    public function get_session_data() {
228
+        return $this->has_session() ? (array) $this->get_session( $this->_customer_id ) : array();
229
+    }
230
+
231
+    public function generate_key($customer_id){
232 232
         if(!$customer_id){
233 233
             return;
234 234
         }
@@ -236,62 +236,62 @@  discard block
 block discarded – undo
236 236
         return 'wpi_trans_'.$customer_id;
237 237
     }
238 238
 
239
-	/**
240
-	 * Save data.
241
-	 */
242
-	public function save_data() {
243
-		// Dirty if something changed - prevents saving nothing new.
244
-		if ( $this->_dirty && $this->has_session() ) {
239
+    /**
240
+     * Save data.
241
+     */
242
+    public function save_data() {
243
+        // Dirty if something changed - prevents saving nothing new.
244
+        if ( $this->_dirty && $this->has_session() ) {
245 245
 
246 246
             set_transient( $this->generate_key($this->_customer_id), $this->_data, $this->_session_expiration);
247 247
 
248
-			$this->_dirty = false;
249
-		}
250
-	}
251
-
252
-	/**
253
-	 * Destroy all session data.
254
-	 */
255
-	public function destroy_session() {
256
-		$this->delete_session( $this->_customer_id );
257
-		$this->forget_session();
258
-	}
259
-
260
-	/**
261
-	 * Forget all session data without destroying it.
262
-	 */
263
-	public function forget_session() {
264
-		$this->setcookie( $this->_cookie, '', time() - YEAR_IN_SECONDS, $this->use_secure_cookie(), true );
265
-
266
-		wpinv_empty_cart();
267
-
268
-		$this->_data        = array();
269
-		$this->_dirty       = false;
270
-		$this->_customer_id = $this->generate_customer_id();
271
-	}
272
-
273
-	/**
274
-	 * When a user is logged out, ensure they have a unique nonce by using the customer/session ID.
275
-	 *
276
-	 * @param int $uid User ID.
277
-	 * @return string
278
-	 */
279
-	public function nonce_user_logged_out( $uid ) {
280
-		return $this->has_session() && $this->_customer_id ? $this->_customer_id : $uid;
281
-	}
282
-
283
-	/**
284
-	 * Returns the session.
285
-	 *
286
-	 * @param string $customer_id Customer ID.
287
-	 * @param mixed  $default Default session value.
288
-	 * @return string|array
289
-	 */
290
-	public function get_session( $customer_id, $default = false ) {
291
-
292
-		if ( defined( 'WP_SETUP_CONFIG' ) ) {
293
-			return false;
294
-		}
248
+            $this->_dirty = false;
249
+        }
250
+    }
251
+
252
+    /**
253
+     * Destroy all session data.
254
+     */
255
+    public function destroy_session() {
256
+        $this->delete_session( $this->_customer_id );
257
+        $this->forget_session();
258
+    }
259
+
260
+    /**
261
+     * Forget all session data without destroying it.
262
+     */
263
+    public function forget_session() {
264
+        $this->setcookie( $this->_cookie, '', time() - YEAR_IN_SECONDS, $this->use_secure_cookie(), true );
265
+
266
+        wpinv_empty_cart();
267
+
268
+        $this->_data        = array();
269
+        $this->_dirty       = false;
270
+        $this->_customer_id = $this->generate_customer_id();
271
+    }
272
+
273
+    /**
274
+     * When a user is logged out, ensure they have a unique nonce by using the customer/session ID.
275
+     *
276
+     * @param int $uid User ID.
277
+     * @return string
278
+     */
279
+    public function nonce_user_logged_out( $uid ) {
280
+        return $this->has_session() && $this->_customer_id ? $this->_customer_id : $uid;
281
+    }
282
+
283
+    /**
284
+     * Returns the session.
285
+     *
286
+     * @param string $customer_id Customer ID.
287
+     * @param mixed  $default Default session value.
288
+     * @return string|array
289
+     */
290
+    public function get_session( $customer_id, $default = false ) {
291
+
292
+        if ( defined( 'WP_SETUP_CONFIG' ) ) {
293
+            return false;
294
+        }
295 295
 
296 296
         if ( !is_user_logged_in() ) {
297 297
             if(!wp_verify_nonce( $customer_id, 'wpinv-session-customer-id' )){
@@ -306,32 +306,32 @@  discard block
 block discarded – undo
306 306
             $value = $default;
307 307
         }
308 308
 
309
-		return maybe_unserialize( $value );
310
-	}
309
+        return maybe_unserialize( $value );
310
+    }
311 311
 
312
-	/**
313
-	 * Delete the session from the cache and database.
314
-	 *
315
-	 * @param int $customer_id Customer ID.
316
-	 */
317
-	public function delete_session( $customer_id ) {
312
+    /**
313
+     * Delete the session from the cache and database.
314
+     *
315
+     * @param int $customer_id Customer ID.
316
+     */
317
+    public function delete_session( $customer_id ) {
318 318
 
319 319
         $key = $this->generate_key($customer_id);
320 320
 
321
-		delete_transient($key);
322
-	}
321
+        delete_transient($key);
322
+    }
323 323
 
324
-	/**
325
-	 * Update the session expiry timestamp.
326
-	 *
327
-	 * @param string $customer_id Customer ID.
328
-	 * @param int    $timestamp Timestamp to expire the cookie.
329
-	 */
330
-	public function update_session_timestamp( $customer_id, $timestamp ) {
324
+    /**
325
+     * Update the session expiry timestamp.
326
+     *
327
+     * @param string $customer_id Customer ID.
328
+     * @param int    $timestamp Timestamp to expire the cookie.
329
+     */
330
+    public function update_session_timestamp( $customer_id, $timestamp ) {
331 331
 
332 332
         set_transient( $this->generate_key($customer_id), maybe_serialize( $this->_data ), $timestamp);
333 333
 
334
-	}
334
+    }
335 335
 }
336 336
 
337 337
 global $wpi_session;
Please login to merge, or discard this patch.
includes/abstracts/abstract-wpinv-session.php 1 patch
Indentation   +98 added lines, -98 removed lines patch added patch discarded remove patch
@@ -4,7 +4,7 @@  discard block
 block discarded – undo
4 4
  */
5 5
 
6 6
 if ( ! defined( 'ABSPATH' ) ) {
7
-	exit;
7
+    exit;
8 8
 }
9 9
 
10 10
 /**
@@ -12,112 +12,112 @@  discard block
 block discarded – undo
12 12
  */
13 13
 abstract class WPInv_Session {
14 14
 
15
-	/**
16
-	 * Customer ID.
17
-	 *
18
-	 * @var int $_customer_id Customer ID.
19
-	 */
20
-	protected $_customer_id;
15
+    /**
16
+     * Customer ID.
17
+     *
18
+     * @var int $_customer_id Customer ID.
19
+     */
20
+    protected $_customer_id;
21 21
 
22
-	/**
23
-	 * Session Data.
24
-	 *
25
-	 * @var array $_data Data array.
26
-	 */
27
-	protected $_data = array();
22
+    /**
23
+     * Session Data.
24
+     *
25
+     * @var array $_data Data array.
26
+     */
27
+    protected $_data = array();
28 28
 
29
-	/**
30
-	 * Dirty when the session needs saving.
31
-	 *
32
-	 * @var bool $_dirty When something changes
33
-	 */
34
-	protected $_dirty = false;
29
+    /**
30
+     * Dirty when the session needs saving.
31
+     *
32
+     * @var bool $_dirty When something changes
33
+     */
34
+    protected $_dirty = false;
35 35
 
36
-	/**
37
-	 * Init hooks and session data. Extended by child classes.
38
-	 *
39
-	 * @since 3.3.0
40
-	 */
41
-	public function init() {}
36
+    /**
37
+     * Init hooks and session data. Extended by child classes.
38
+     *
39
+     * @since 3.3.0
40
+     */
41
+    public function init() {}
42 42
 
43
-	/**
44
-	 * Cleanup session data. Extended by child classes.
45
-	 */
46
-	public function cleanup_sessions() {}
43
+    /**
44
+     * Cleanup session data. Extended by child classes.
45
+     */
46
+    public function cleanup_sessions() {}
47 47
 
48
-	/**
49
-	 * Magic get method.
50
-	 *
51
-	 * @param mixed $key Key to get.
52
-	 * @return mixed
53
-	 */
54
-	public function __get( $key ) {
55
-		return $this->get( $key );
56
-	}
48
+    /**
49
+     * Magic get method.
50
+     *
51
+     * @param mixed $key Key to get.
52
+     * @return mixed
53
+     */
54
+    public function __get( $key ) {
55
+        return $this->get( $key );
56
+    }
57 57
 
58
-	/**
59
-	 * Magic set method.
60
-	 *
61
-	 * @param mixed $key Key to set.
62
-	 * @param mixed $value Value to set.
63
-	 */
64
-	public function __set( $key, $value ) {
65
-		$this->set( $key, $value );
66
-	}
58
+    /**
59
+     * Magic set method.
60
+     *
61
+     * @param mixed $key Key to set.
62
+     * @param mixed $value Value to set.
63
+     */
64
+    public function __set( $key, $value ) {
65
+        $this->set( $key, $value );
66
+    }
67 67
 
68
-	/**
69
-	 * Magic isset method.
70
-	 *
71
-	 * @param mixed $key Key to check.
72
-	 * @return bool
73
-	 */
74
-	public function __isset( $key ) {
75
-		return isset( $this->_data[ sanitize_title( $key ) ] );
76
-	}
68
+    /**
69
+     * Magic isset method.
70
+     *
71
+     * @param mixed $key Key to check.
72
+     * @return bool
73
+     */
74
+    public function __isset( $key ) {
75
+        return isset( $this->_data[ sanitize_title( $key ) ] );
76
+    }
77 77
 
78
-	/**
79
-	 * Magic unset method.
80
-	 *
81
-	 * @param mixed $key Key to unset.
82
-	 */
83
-	public function __unset( $key ) {
84
-		if ( isset( $this->_data[ $key ] ) ) {
85
-			unset( $this->_data[ $key ] );
86
-			$this->_dirty = true;
87
-		}
88
-	}
78
+    /**
79
+     * Magic unset method.
80
+     *
81
+     * @param mixed $key Key to unset.
82
+     */
83
+    public function __unset( $key ) {
84
+        if ( isset( $this->_data[ $key ] ) ) {
85
+            unset( $this->_data[ $key ] );
86
+            $this->_dirty = true;
87
+        }
88
+    }
89 89
 
90
-	/**
91
-	 * Get a session variable.
92
-	 *
93
-	 * @param string $key Key to get.
94
-	 * @param mixed  $default used if the session variable isn't set.
95
-	 * @return array|string value of session variable
96
-	 */
97
-	public function get( $key, $default = null ) {
98
-		$key = sanitize_key( $key );
99
-		return isset( $this->_data[ $key ] ) ? maybe_unserialize( $this->_data[ $key ] ) : $default;
100
-	}
90
+    /**
91
+     * Get a session variable.
92
+     *
93
+     * @param string $key Key to get.
94
+     * @param mixed  $default used if the session variable isn't set.
95
+     * @return array|string value of session variable
96
+     */
97
+    public function get( $key, $default = null ) {
98
+        $key = sanitize_key( $key );
99
+        return isset( $this->_data[ $key ] ) ? maybe_unserialize( $this->_data[ $key ] ) : $default;
100
+    }
101 101
 
102
-	/**
103
-	 * Set a session variable.
104
-	 *
105
-	 * @param string $key Key to set.
106
-	 * @param mixed  $value Value to set.
107
-	 */
108
-	public function set( $key, $value ) {
109
-		if ( $value !== $this->get( $key ) ) {
110
-			$this->_data[ sanitize_key( $key ) ] = maybe_serialize( $value );
111
-			$this->_dirty                        = true;
112
-		}
113
-	}
102
+    /**
103
+     * Set a session variable.
104
+     *
105
+     * @param string $key Key to set.
106
+     * @param mixed  $value Value to set.
107
+     */
108
+    public function set( $key, $value ) {
109
+        if ( $value !== $this->get( $key ) ) {
110
+            $this->_data[ sanitize_key( $key ) ] = maybe_serialize( $value );
111
+            $this->_dirty                        = true;
112
+        }
113
+    }
114 114
 
115
-	/**
116
-	 * Get customer ID.
117
-	 *
118
-	 * @return int
119
-	 */
120
-	public function get_customer_id() {
121
-		return $this->_customer_id;
122
-	}
115
+    /**
116
+     * Get customer ID.
117
+     *
118
+     * @return int
119
+     */
120
+    public function get_customer_id() {
121
+        return $this->_customer_id;
122
+    }
123 123
 }
Please login to merge, or discard this patch.