Completed
Push — update/security-widget-languag... ( 75ac2c...0fa1b8 )
by
unknown
126:04 queued 116:11
created

Jetpack_User_Event_Tracking::disable()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 4
Code Lines 2

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 1
eloc 2
nc 1
nop 1
dl 0
loc 4
rs 10
c 0
b 0
f 0
1
<?php
2
3
class Jetpack_User_Event_Tracking {
4
	public static $KEY = 'jetpack_event_tracking';
5
6
	static function is_enabled( $user_id ) {
7
		$user_tracking = get_user_meta( $user_id, self::$KEY, true );
8
		if ( ! is_numeric( $user_tracking ) ) {
9
			$user_tracking = self::default_value();
10
		}
11
		return (bool) $user_tracking;
12
	}
13
14
	static function has_value( $user_id ) {
15
		$user_tracking = get_user_meta( $user_id, self::$KEY, true );
16
		if ( is_numeric( $user_tracking ) ) {
17
			return true;
18
		}
19
		return false;
20
	}
21
22
	static function is_disabled( $user_id ) {
23
		return ! self::is_enabled( $user_id );
24
	}
25
26
	static function disable( $user_id ) {
27
		// user opted out
28
		return self::set( $user_id, 0 );
29
	}
30
31
	static function enable( $user_id ) {
32
		// user opted in
33
		return self::set( $user_id, 1 );
34
	}
35
36
	static private function set( $user_id, $value ) {
0 ignored issues
show
Coding Style introduced by
As per PSR2, the static declaration should come after the visibility declaration.
Loading history...
37
		return update_user_meta( $user_id, self::$KEY, $value );
38
	}
39
40
	static function default_value() {
41
		/**
42
		 * Return the default jetpack user event tracking opt out value.
43
		 *
44
		 * @since 6.0.0
45
		 *
46
		 * @param bool Default to true. (user tracking enabled)
47
		 */
48
		return apply_filters( 'jetpack_user_event_tracking', true );
49
	}
50
}
51