Test Failed
Push — master ( 9ee67a...7fe2bc )
by Devin
11:42
created

Give_DB_Customers   A

Complexity

Total Complexity 11

Size/Duplication

Total Lines 49
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 1

Importance

Changes 0
Metric Value
dl 0
loc 49
rs 10
c 0
b 0
f 0
wmc 11
lcom 0
cbo 1
1
<?php
2
/**
3
 * Handle renamed classes.
4
 *
5
 * @package Give
6
 */
7
8
9
/**
10
 * Instantiate old properties for backwards compatibility.
11
 *
12
 * @param $instance Give()
13
 *
14
 * @return Give
15
 */
16
function give_load_deprecated_properties( $instance ) {
17
18
	// If a property is renamed then it gets placed below.
19
	$instance->customers     = new Give_DB_Customers();
20
	$instance->customer_meta = new Give_DB_Customer_Meta();
21
22
	return $instance;
23
24
}
25
26
add_action( 'give_init', 'give_load_deprecated_properties', 10, 1 );
27
28
/**
29
 * Give_DB_Customers Class (deprecated)
30
 *
31
 * This class is for interacting with the customers' database table.
32
 *
33
 * @since 1.0
34
 */
35
class Give_DB_Customers extends Give_DB_Donors {
36
37
	/**
38
	 * Give_DB_Customers constructor.
39
	 */
40
	public function __construct() {
41
		parent::__construct();
42
	}
43
44
	/**
45
	 * There are certain responsibility of this function:
46
	 *  1. handle backward compatibility for deprecated functions
47
	 *
48
	 * @since 1.8.8
49
	 *
50
	 * @param $name
51
	 * @param $arguments
52
	 *
53
	 * @return mixed
54
	 */
55
	public function __call( $name, $arguments ) {
56
		$deprecated_function_arr = array(
57
			'get_customer_by',
58
			'give_update_customer_email_on_user_update',
59
			'get_customers',
60
		);
61
62
		if ( in_array( $name, $deprecated_function_arr ) ) {
63
			switch ( $name ) {
64
				case 'get_customers':
65
					$args = ! empty( $arguments[0] ) ? $arguments[0] : array();
66
67
					return $this->get_donors( $args );
68
				case 'get_customer_by':
69
					$field    = ! empty( $arguments[0] ) ? $arguments[0] : 'id';
70
					$donor_id = ! empty( $arguments[1] ) ? $arguments[1] : 0;
71
72
					return $this->get_donor_by( $field, $donor_id );
73
74
				case 'give_update_customer_email_on_user_update':
75
					$user_id       = ! empty( $arguments[0] ) ? $arguments[0] : 0;
76
					$old_user_data = ! empty( $arguments[1] ) ? $arguments[1] : false;
77
78
					return $this->update_donor_email_on_user_update( $user_id, $old_user_data );
79
			}
80
		}
81
	}
82
83
}
84
85
86
/**
87
 * Give_Customer Class (Deprecated)
88
 *
89
 * @since 1.0
90
 */
91
class Give_Customer extends Give_Donor {
92
93
	/**
94
	 * Give_Customer constructor.
95
	 *
96
	 * @param bool $_id_or_email
97
	 * @param bool $by_user_id
98
	 */
99
	public function __construct( $_id_or_email = false, $by_user_id = false ) {
100
		parent::__construct( $_id_or_email, $by_user_id );
101
	}
102
103
	/**
104
	 * There are certain responsibility of this function:
105
	 *  1. handle backward compatibility for deprecated functions
106
	 *
107
	 * @since 1.8.8
108
	 *
109
	 * @param $name
110
	 * @param $arguments
111
	 *
112
	 * @return mixed
113
	 */
114
	public function __call( $name, $arguments ) {
115
	}
116
117
}
118
119
120
/**
121
 * Give_DB_Customer_Meta Class (Deprecated)
122
 *
123
 * @since 1.0
124
 */
125
class Give_DB_Customer_Meta extends Give_DB_Donor_Meta {
126
127
	/**
128
	 * Give_DB_Customer_Meta constructor.
129
	 */
130
	public function __construct() {
131
		/* @var WPDB $wpdb */
132
		global $wpdb;
133
134
		$this->table_name  = $wpdb->prefix . 'give_customermeta';
135
		$this->primary_key = 'meta_id';
136
		$this->version     = '1.0';
137
	}
138
139
140
	/**
141
	 * There are certain responsibility of this function:
142
	 *  1. handle backward compatibility for deprecated functions
143
	 *
144
	 * @since 1.8.8
145
	 *
146
	 * @param $name
147
	 * @param $arguments
148
	 *
149
	 * @return mixed
150
	 */
151
	public function __call( $name, $arguments ) {
152
153
	}
154
155
}
156