@@ -579,7 +579,7 @@ discard block |
||
579 | 579 | /** |
580 | 580 | * returns any events attached to this attendee ($_Event property); |
581 | 581 | * |
582 | - * @return array |
|
582 | + * @return EE_Base_Class[] |
|
583 | 583 | */ |
584 | 584 | public function events() |
585 | 585 | { |
@@ -594,7 +594,7 @@ discard block |
||
594 | 594 | * used to save the billing info |
595 | 595 | * |
596 | 596 | * @param EE_Payment_Method $payment_method the _gateway_name property on the gateway class |
597 | - * @return EE_Form_Section_Proper|null |
|
597 | + * @return null|EE_Billing_Info_Form |
|
598 | 598 | */ |
599 | 599 | public function billing_info_for_payment_method($payment_method) |
600 | 600 | { |
@@ -1,5 +1,5 @@ discard block |
||
1 | 1 | <?php if ( ! defined('EVENT_ESPRESSO_VERSION')) { |
2 | - exit('No direct script access allowed'); |
|
2 | + exit('No direct script access allowed'); |
|
3 | 3 | } |
4 | 4 | /** |
5 | 5 | * Event Espresso |
@@ -23,676 +23,676 @@ discard block |
||
23 | 23 | class EE_Attendee extends EE_CPT_Base implements EEI_Contact, EEI_Address, EEI_Admin_Links, EEI_Attendee |
24 | 24 | { |
25 | 25 | |
26 | - /** |
|
27 | - * Sets some dynamic defaults |
|
28 | - * |
|
29 | - * @param array $fieldValues |
|
30 | - * @param bool $bydb |
|
31 | - * @param string $timezone |
|
32 | - * @param array $date_formats |
|
33 | - */ |
|
34 | - protected function __construct($fieldValues = null, $bydb = false, $timezone = null, $date_formats = array()) |
|
35 | - { |
|
36 | - if ( ! isset($fieldValues['ATT_full_name'])) { |
|
37 | - $fname = isset($fieldValues['ATT_fname']) ? $fieldValues['ATT_fname'] . ' ' : ''; |
|
38 | - $lname = isset($fieldValues['ATT_lname']) ? $fieldValues['ATT_lname'] : ''; |
|
39 | - $fieldValues['ATT_full_name'] = $fname . $lname; |
|
40 | - } |
|
41 | - if ( ! isset($fieldValues['ATT_slug'])) { |
|
42 | - // $fieldValues['ATT_slug'] = sanitize_key(wp_generate_password(20)); |
|
43 | - $fieldValues['ATT_slug'] = sanitize_title($fieldValues['ATT_full_name']); |
|
44 | - } |
|
45 | - if ( ! isset($fieldValues['ATT_short_bio']) && isset($fieldValues['ATT_bio'])) { |
|
46 | - $fieldValues['ATT_short_bio'] = substr($fieldValues['ATT_bio'], 0, 50); |
|
47 | - } |
|
48 | - parent::__construct($fieldValues, $bydb, $timezone, $date_formats); |
|
49 | - } |
|
50 | - |
|
51 | - |
|
52 | - /** |
|
53 | - * @param array $props_n_values incoming values |
|
54 | - * @param string $timezone incoming timezone (if not set the timezone set for the website will be |
|
55 | - * used.) |
|
56 | - * @param array $date_formats incoming date_formats in an array where the first value is the |
|
57 | - * date_format and the second value is the time format |
|
58 | - * |
|
59 | - * @return EE_Attendee |
|
60 | - */ |
|
61 | - public static function new_instance($props_n_values = array(), $timezone = null, $date_formats = array()) |
|
62 | - { |
|
63 | - $has_object = parent::_check_for_object($props_n_values, __CLASS__, $timezone, $date_formats); |
|
26 | + /** |
|
27 | + * Sets some dynamic defaults |
|
28 | + * |
|
29 | + * @param array $fieldValues |
|
30 | + * @param bool $bydb |
|
31 | + * @param string $timezone |
|
32 | + * @param array $date_formats |
|
33 | + */ |
|
34 | + protected function __construct($fieldValues = null, $bydb = false, $timezone = null, $date_formats = array()) |
|
35 | + { |
|
36 | + if ( ! isset($fieldValues['ATT_full_name'])) { |
|
37 | + $fname = isset($fieldValues['ATT_fname']) ? $fieldValues['ATT_fname'] . ' ' : ''; |
|
38 | + $lname = isset($fieldValues['ATT_lname']) ? $fieldValues['ATT_lname'] : ''; |
|
39 | + $fieldValues['ATT_full_name'] = $fname . $lname; |
|
40 | + } |
|
41 | + if ( ! isset($fieldValues['ATT_slug'])) { |
|
42 | + // $fieldValues['ATT_slug'] = sanitize_key(wp_generate_password(20)); |
|
43 | + $fieldValues['ATT_slug'] = sanitize_title($fieldValues['ATT_full_name']); |
|
44 | + } |
|
45 | + if ( ! isset($fieldValues['ATT_short_bio']) && isset($fieldValues['ATT_bio'])) { |
|
46 | + $fieldValues['ATT_short_bio'] = substr($fieldValues['ATT_bio'], 0, 50); |
|
47 | + } |
|
48 | + parent::__construct($fieldValues, $bydb, $timezone, $date_formats); |
|
49 | + } |
|
50 | + |
|
51 | + |
|
52 | + /** |
|
53 | + * @param array $props_n_values incoming values |
|
54 | + * @param string $timezone incoming timezone (if not set the timezone set for the website will be |
|
55 | + * used.) |
|
56 | + * @param array $date_formats incoming date_formats in an array where the first value is the |
|
57 | + * date_format and the second value is the time format |
|
58 | + * |
|
59 | + * @return EE_Attendee |
|
60 | + */ |
|
61 | + public static function new_instance($props_n_values = array(), $timezone = null, $date_formats = array()) |
|
62 | + { |
|
63 | + $has_object = parent::_check_for_object($props_n_values, __CLASS__, $timezone, $date_formats); |
|
64 | 64 | |
65 | - return $has_object ? $has_object : new self($props_n_values, false, $timezone, $date_formats); |
|
66 | - } |
|
67 | - |
|
68 | - |
|
69 | - /** |
|
70 | - * @param array $props_n_values incoming values from the database |
|
71 | - * @param string $timezone incoming timezone as set by the model. If not set the timezone for |
|
72 | - * the website will be used. |
|
73 | - * |
|
74 | - * @return EE_Attendee |
|
75 | - */ |
|
76 | - public static function new_instance_from_db($props_n_values = array(), $timezone = null) |
|
77 | - { |
|
78 | - return new self($props_n_values, true, $timezone); |
|
79 | - } |
|
80 | - |
|
81 | - |
|
82 | - /** |
|
83 | - * Set Attendee First Name |
|
84 | - * |
|
85 | - * @access public |
|
86 | - * |
|
87 | - * @param string $fname |
|
88 | - */ |
|
89 | - public function set_fname($fname = '') |
|
90 | - { |
|
91 | - $this->set('ATT_fname', $fname); |
|
92 | - } |
|
93 | - |
|
94 | - |
|
95 | - /** |
|
96 | - * Set Attendee Last Name |
|
97 | - * |
|
98 | - * @access public |
|
99 | - * |
|
100 | - * @param string $lname |
|
101 | - */ |
|
102 | - public function set_lname($lname = '') |
|
103 | - { |
|
104 | - $this->set('ATT_lname', $lname); |
|
105 | - } |
|
106 | - |
|
107 | - |
|
108 | - /** |
|
109 | - * Set Attendee Address |
|
110 | - * |
|
111 | - * @access public |
|
112 | - * |
|
113 | - * @param string $address |
|
114 | - */ |
|
115 | - public function set_address($address = '') |
|
116 | - { |
|
117 | - $this->set('ATT_address', $address); |
|
118 | - } |
|
119 | - |
|
120 | - |
|
121 | - /** |
|
122 | - * Set Attendee Address2 |
|
123 | - * |
|
124 | - * @access public |
|
125 | - * |
|
126 | - * @param string $address2 |
|
127 | - */ |
|
128 | - public function set_address2($address2 = '') |
|
129 | - { |
|
130 | - $this->set('ATT_address2', $address2); |
|
131 | - } |
|
132 | - |
|
133 | - |
|
134 | - /** |
|
135 | - * Set Attendee City |
|
136 | - * |
|
137 | - * @access public |
|
138 | - * |
|
139 | - * @param string $city |
|
140 | - */ |
|
141 | - public function set_city($city = '') |
|
142 | - { |
|
143 | - $this->set('ATT_city', $city); |
|
144 | - } |
|
145 | - |
|
146 | - |
|
147 | - /** |
|
148 | - * Set Attendee State ID |
|
149 | - * |
|
150 | - * @access public |
|
151 | - * |
|
152 | - * @param int $STA_ID |
|
153 | - */ |
|
154 | - public function set_state($STA_ID = 0) |
|
155 | - { |
|
156 | - $this->set('STA_ID', $STA_ID); |
|
157 | - } |
|
158 | - |
|
159 | - |
|
160 | - /** |
|
161 | - * Set Attendee Country ISO Code |
|
162 | - * |
|
163 | - * @access public |
|
164 | - * |
|
165 | - * @param string $CNT_ISO |
|
166 | - */ |
|
167 | - public function set_country($CNT_ISO = '') |
|
168 | - { |
|
169 | - $this->set('CNT_ISO', $CNT_ISO); |
|
170 | - } |
|
171 | - |
|
172 | - |
|
173 | - /** |
|
174 | - * Set Attendee Zip/Postal Code |
|
175 | - * |
|
176 | - * @access public |
|
177 | - * |
|
178 | - * @param string $zip |
|
179 | - */ |
|
180 | - public function set_zip($zip = '') |
|
181 | - { |
|
182 | - $this->set('ATT_zip', $zip); |
|
183 | - } |
|
184 | - |
|
185 | - |
|
186 | - /** |
|
187 | - * Set Attendee Email Address |
|
188 | - * |
|
189 | - * @access public |
|
190 | - * |
|
191 | - * @param string $email |
|
192 | - */ |
|
193 | - public function set_email($email = '') |
|
194 | - { |
|
195 | - $this->set('ATT_email', $email); |
|
196 | - } |
|
197 | - |
|
198 | - |
|
199 | - /** |
|
200 | - * Set Attendee Phone |
|
201 | - * |
|
202 | - * @access public |
|
203 | - * |
|
204 | - * @param string $phone |
|
205 | - */ |
|
206 | - public function set_phone($phone = '') |
|
207 | - { |
|
208 | - $this->set('ATT_phone', $phone); |
|
209 | - } |
|
210 | - |
|
211 | - |
|
212 | - /** |
|
213 | - * set deleted |
|
214 | - * |
|
215 | - * @access public |
|
216 | - * |
|
217 | - * @param bool $ATT_deleted |
|
218 | - */ |
|
219 | - public function set_deleted($ATT_deleted = false) |
|
220 | - { |
|
221 | - $this->set('ATT_deleted', $ATT_deleted); |
|
222 | - } |
|
223 | - |
|
224 | - |
|
225 | - /** |
|
226 | - * Returns the value for the post_author id saved with the cpt |
|
227 | - * |
|
228 | - * @since 4.5.0 |
|
229 | - * @return int |
|
230 | - */ |
|
231 | - public function wp_user() |
|
232 | - { |
|
233 | - return $this->get('ATT_author'); |
|
234 | - } |
|
235 | - |
|
236 | - |
|
237 | - /** |
|
238 | - * get Attendee First Name |
|
239 | - * |
|
240 | - * @access public |
|
241 | - * @return string |
|
242 | - */ |
|
243 | - public function fname() |
|
244 | - { |
|
245 | - return $this->get('ATT_fname'); |
|
246 | - } |
|
247 | - |
|
248 | - |
|
249 | - /** |
|
250 | - * echoes out the attendee's first name |
|
251 | - * |
|
252 | - * @return void |
|
253 | - */ |
|
254 | - public function e_full_name() |
|
255 | - { |
|
256 | - echo $this->full_name(); |
|
257 | - } |
|
258 | - |
|
259 | - |
|
260 | - /** |
|
261 | - * Returns the first and last name concatenated together with a space. |
|
262 | - * |
|
263 | - * @param bool $apply_html_entities |
|
264 | - * |
|
265 | - * @return string |
|
266 | - */ |
|
267 | - public function full_name($apply_html_entities = false) |
|
268 | - { |
|
269 | - $full_name = $this->fname() . ' ' . $this->lname(); |
|
65 | + return $has_object ? $has_object : new self($props_n_values, false, $timezone, $date_formats); |
|
66 | + } |
|
67 | + |
|
68 | + |
|
69 | + /** |
|
70 | + * @param array $props_n_values incoming values from the database |
|
71 | + * @param string $timezone incoming timezone as set by the model. If not set the timezone for |
|
72 | + * the website will be used. |
|
73 | + * |
|
74 | + * @return EE_Attendee |
|
75 | + */ |
|
76 | + public static function new_instance_from_db($props_n_values = array(), $timezone = null) |
|
77 | + { |
|
78 | + return new self($props_n_values, true, $timezone); |
|
79 | + } |
|
80 | + |
|
81 | + |
|
82 | + /** |
|
83 | + * Set Attendee First Name |
|
84 | + * |
|
85 | + * @access public |
|
86 | + * |
|
87 | + * @param string $fname |
|
88 | + */ |
|
89 | + public function set_fname($fname = '') |
|
90 | + { |
|
91 | + $this->set('ATT_fname', $fname); |
|
92 | + } |
|
93 | + |
|
94 | + |
|
95 | + /** |
|
96 | + * Set Attendee Last Name |
|
97 | + * |
|
98 | + * @access public |
|
99 | + * |
|
100 | + * @param string $lname |
|
101 | + */ |
|
102 | + public function set_lname($lname = '') |
|
103 | + { |
|
104 | + $this->set('ATT_lname', $lname); |
|
105 | + } |
|
106 | + |
|
107 | + |
|
108 | + /** |
|
109 | + * Set Attendee Address |
|
110 | + * |
|
111 | + * @access public |
|
112 | + * |
|
113 | + * @param string $address |
|
114 | + */ |
|
115 | + public function set_address($address = '') |
|
116 | + { |
|
117 | + $this->set('ATT_address', $address); |
|
118 | + } |
|
119 | + |
|
120 | + |
|
121 | + /** |
|
122 | + * Set Attendee Address2 |
|
123 | + * |
|
124 | + * @access public |
|
125 | + * |
|
126 | + * @param string $address2 |
|
127 | + */ |
|
128 | + public function set_address2($address2 = '') |
|
129 | + { |
|
130 | + $this->set('ATT_address2', $address2); |
|
131 | + } |
|
132 | + |
|
133 | + |
|
134 | + /** |
|
135 | + * Set Attendee City |
|
136 | + * |
|
137 | + * @access public |
|
138 | + * |
|
139 | + * @param string $city |
|
140 | + */ |
|
141 | + public function set_city($city = '') |
|
142 | + { |
|
143 | + $this->set('ATT_city', $city); |
|
144 | + } |
|
145 | + |
|
146 | + |
|
147 | + /** |
|
148 | + * Set Attendee State ID |
|
149 | + * |
|
150 | + * @access public |
|
151 | + * |
|
152 | + * @param int $STA_ID |
|
153 | + */ |
|
154 | + public function set_state($STA_ID = 0) |
|
155 | + { |
|
156 | + $this->set('STA_ID', $STA_ID); |
|
157 | + } |
|
158 | + |
|
159 | + |
|
160 | + /** |
|
161 | + * Set Attendee Country ISO Code |
|
162 | + * |
|
163 | + * @access public |
|
164 | + * |
|
165 | + * @param string $CNT_ISO |
|
166 | + */ |
|
167 | + public function set_country($CNT_ISO = '') |
|
168 | + { |
|
169 | + $this->set('CNT_ISO', $CNT_ISO); |
|
170 | + } |
|
171 | + |
|
172 | + |
|
173 | + /** |
|
174 | + * Set Attendee Zip/Postal Code |
|
175 | + * |
|
176 | + * @access public |
|
177 | + * |
|
178 | + * @param string $zip |
|
179 | + */ |
|
180 | + public function set_zip($zip = '') |
|
181 | + { |
|
182 | + $this->set('ATT_zip', $zip); |
|
183 | + } |
|
184 | + |
|
185 | + |
|
186 | + /** |
|
187 | + * Set Attendee Email Address |
|
188 | + * |
|
189 | + * @access public |
|
190 | + * |
|
191 | + * @param string $email |
|
192 | + */ |
|
193 | + public function set_email($email = '') |
|
194 | + { |
|
195 | + $this->set('ATT_email', $email); |
|
196 | + } |
|
197 | + |
|
198 | + |
|
199 | + /** |
|
200 | + * Set Attendee Phone |
|
201 | + * |
|
202 | + * @access public |
|
203 | + * |
|
204 | + * @param string $phone |
|
205 | + */ |
|
206 | + public function set_phone($phone = '') |
|
207 | + { |
|
208 | + $this->set('ATT_phone', $phone); |
|
209 | + } |
|
210 | + |
|
211 | + |
|
212 | + /** |
|
213 | + * set deleted |
|
214 | + * |
|
215 | + * @access public |
|
216 | + * |
|
217 | + * @param bool $ATT_deleted |
|
218 | + */ |
|
219 | + public function set_deleted($ATT_deleted = false) |
|
220 | + { |
|
221 | + $this->set('ATT_deleted', $ATT_deleted); |
|
222 | + } |
|
223 | + |
|
224 | + |
|
225 | + /** |
|
226 | + * Returns the value for the post_author id saved with the cpt |
|
227 | + * |
|
228 | + * @since 4.5.0 |
|
229 | + * @return int |
|
230 | + */ |
|
231 | + public function wp_user() |
|
232 | + { |
|
233 | + return $this->get('ATT_author'); |
|
234 | + } |
|
235 | + |
|
236 | + |
|
237 | + /** |
|
238 | + * get Attendee First Name |
|
239 | + * |
|
240 | + * @access public |
|
241 | + * @return string |
|
242 | + */ |
|
243 | + public function fname() |
|
244 | + { |
|
245 | + return $this->get('ATT_fname'); |
|
246 | + } |
|
247 | + |
|
248 | + |
|
249 | + /** |
|
250 | + * echoes out the attendee's first name |
|
251 | + * |
|
252 | + * @return void |
|
253 | + */ |
|
254 | + public function e_full_name() |
|
255 | + { |
|
256 | + echo $this->full_name(); |
|
257 | + } |
|
258 | + |
|
259 | + |
|
260 | + /** |
|
261 | + * Returns the first and last name concatenated together with a space. |
|
262 | + * |
|
263 | + * @param bool $apply_html_entities |
|
264 | + * |
|
265 | + * @return string |
|
266 | + */ |
|
267 | + public function full_name($apply_html_entities = false) |
|
268 | + { |
|
269 | + $full_name = $this->fname() . ' ' . $this->lname(); |
|
270 | 270 | |
271 | - return $apply_html_entities ? htmlentities($full_name, ENT_QUOTES, 'UTF-8') : $full_name; |
|
272 | - } |
|
273 | - |
|
274 | - |
|
275 | - /** |
|
276 | - * get Attendee Last Name |
|
277 | - * |
|
278 | - * @access public |
|
279 | - * @return string |
|
280 | - */ |
|
281 | - public function lname() |
|
282 | - { |
|
283 | - return $this->get('ATT_lname'); |
|
284 | - } |
|
285 | - |
|
286 | - |
|
287 | - /** |
|
288 | - * Gets the attendee's full address as an array so client code can decide hwo to display it |
|
289 | - * |
|
290 | - * @return array numerically indexed, with each part of the address that is known. |
|
291 | - * Eg, if the user only responded to state and country, |
|
292 | - * it would be array(0=>'Alabama',1=>'USA') |
|
293 | - * @return array |
|
294 | - */ |
|
295 | - public function full_address_as_array() |
|
296 | - { |
|
297 | - $full_address_array = array(); |
|
298 | - $initial_address_fields = array('ATT_address', 'ATT_address2', 'ATT_city',); |
|
299 | - foreach ($initial_address_fields as $address_field_name) { |
|
300 | - $address_fields_value = $this->get($address_field_name); |
|
301 | - if ( ! empty($address_fields_value)) { |
|
302 | - $full_address_array[] = $address_fields_value; |
|
303 | - } |
|
304 | - } |
|
305 | - //now handle state and country |
|
306 | - $state_obj = $this->state_obj(); |
|
307 | - if ( ! empty($state_obj)) { |
|
308 | - $full_address_array[] = $state_obj->name(); |
|
309 | - } |
|
310 | - $country_obj = $this->country_obj(); |
|
311 | - if ( ! empty($country_obj)) { |
|
312 | - $full_address_array[] = $country_obj->name(); |
|
313 | - } |
|
314 | - //lastly get the xip |
|
315 | - $zip_value = $this->zip(); |
|
316 | - if ( ! empty($zip_value)) { |
|
317 | - $full_address_array[] = $zip_value; |
|
318 | - } |
|
271 | + return $apply_html_entities ? htmlentities($full_name, ENT_QUOTES, 'UTF-8') : $full_name; |
|
272 | + } |
|
273 | + |
|
274 | + |
|
275 | + /** |
|
276 | + * get Attendee Last Name |
|
277 | + * |
|
278 | + * @access public |
|
279 | + * @return string |
|
280 | + */ |
|
281 | + public function lname() |
|
282 | + { |
|
283 | + return $this->get('ATT_lname'); |
|
284 | + } |
|
285 | + |
|
286 | + |
|
287 | + /** |
|
288 | + * Gets the attendee's full address as an array so client code can decide hwo to display it |
|
289 | + * |
|
290 | + * @return array numerically indexed, with each part of the address that is known. |
|
291 | + * Eg, if the user only responded to state and country, |
|
292 | + * it would be array(0=>'Alabama',1=>'USA') |
|
293 | + * @return array |
|
294 | + */ |
|
295 | + public function full_address_as_array() |
|
296 | + { |
|
297 | + $full_address_array = array(); |
|
298 | + $initial_address_fields = array('ATT_address', 'ATT_address2', 'ATT_city',); |
|
299 | + foreach ($initial_address_fields as $address_field_name) { |
|
300 | + $address_fields_value = $this->get($address_field_name); |
|
301 | + if ( ! empty($address_fields_value)) { |
|
302 | + $full_address_array[] = $address_fields_value; |
|
303 | + } |
|
304 | + } |
|
305 | + //now handle state and country |
|
306 | + $state_obj = $this->state_obj(); |
|
307 | + if ( ! empty($state_obj)) { |
|
308 | + $full_address_array[] = $state_obj->name(); |
|
309 | + } |
|
310 | + $country_obj = $this->country_obj(); |
|
311 | + if ( ! empty($country_obj)) { |
|
312 | + $full_address_array[] = $country_obj->name(); |
|
313 | + } |
|
314 | + //lastly get the xip |
|
315 | + $zip_value = $this->zip(); |
|
316 | + if ( ! empty($zip_value)) { |
|
317 | + $full_address_array[] = $zip_value; |
|
318 | + } |
|
319 | 319 | |
320 | - return $full_address_array; |
|
321 | - } |
|
322 | - |
|
323 | - |
|
324 | - /** |
|
325 | - * get Attendee Address |
|
326 | - * |
|
327 | - * @return string |
|
328 | - */ |
|
329 | - public function address() |
|
330 | - { |
|
331 | - return $this->get('ATT_address'); |
|
332 | - } |
|
333 | - |
|
334 | - |
|
335 | - /** |
|
336 | - * get Attendee Address2 |
|
337 | - * |
|
338 | - * @return string |
|
339 | - */ |
|
340 | - public function address2() |
|
341 | - { |
|
342 | - return $this->get('ATT_address2'); |
|
343 | - } |
|
344 | - |
|
345 | - |
|
346 | - /** |
|
347 | - * get Attendee City |
|
348 | - * |
|
349 | - * @return string |
|
350 | - */ |
|
351 | - public function city() |
|
352 | - { |
|
353 | - return $this->get('ATT_city'); |
|
354 | - } |
|
355 | - |
|
356 | - |
|
357 | - /** |
|
358 | - * get Attendee State ID |
|
359 | - * |
|
360 | - * @return string |
|
361 | - */ |
|
362 | - public function state_ID() |
|
363 | - { |
|
364 | - return $this->get('STA_ID'); |
|
365 | - } |
|
366 | - |
|
367 | - |
|
368 | - /** |
|
369 | - * @return string |
|
370 | - */ |
|
371 | - public function state_abbrev() |
|
372 | - { |
|
373 | - return $this->state_obj() instanceof EE_State ? $this->state_obj()->abbrev() : ''; |
|
374 | - } |
|
375 | - |
|
376 | - |
|
377 | - /** |
|
378 | - * Gets the state set to this attendee |
|
379 | - * |
|
380 | - * @return EE_State |
|
381 | - */ |
|
382 | - public function state_obj() |
|
383 | - { |
|
384 | - return $this->get_first_related('State'); |
|
385 | - } |
|
386 | - |
|
387 | - |
|
388 | - /** |
|
389 | - * Returns the state's name, otherwise 'Unknown' |
|
390 | - * |
|
391 | - * @return string |
|
392 | - */ |
|
393 | - public function state_name() |
|
394 | - { |
|
395 | - if ($this->state_obj()) { |
|
396 | - return $this->state_obj()->name(); |
|
397 | - } else { |
|
398 | - return ''; |
|
399 | - } |
|
400 | - } |
|
401 | - |
|
402 | - |
|
403 | - /** |
|
404 | - * either displays the state abbreviation or the state name, as determined |
|
405 | - * by the "FHEE__EEI_Address__state__use_abbreviation" filter. |
|
406 | - * defaults to abbreviation |
|
407 | - * |
|
408 | - * @return string |
|
409 | - */ |
|
410 | - public function state() |
|
411 | - { |
|
412 | - if (apply_filters('FHEE__EEI_Address__state__use_abbreviation', true, $this->state_obj())) { |
|
413 | - return $this->state_abbrev(); |
|
414 | - } else { |
|
415 | - return $this->state_name(); |
|
416 | - } |
|
417 | - } |
|
418 | - |
|
419 | - |
|
420 | - /** |
|
421 | - * get Attendee Country ISO Code |
|
422 | - * |
|
423 | - * @return string |
|
424 | - */ |
|
425 | - public function country_ID() |
|
426 | - { |
|
427 | - return $this->get('CNT_ISO'); |
|
428 | - } |
|
429 | - |
|
430 | - |
|
431 | - /** |
|
432 | - * Gets country set for this attendee |
|
433 | - * |
|
434 | - * @return EE_Country |
|
435 | - */ |
|
436 | - public function country_obj() |
|
437 | - { |
|
438 | - return $this->get_first_related('Country'); |
|
439 | - } |
|
440 | - |
|
441 | - |
|
442 | - /** |
|
443 | - * Returns the country's name if known, otherwise 'Unknown' |
|
444 | - * |
|
445 | - * @return string |
|
446 | - */ |
|
447 | - public function country_name() |
|
448 | - { |
|
449 | - if ($this->country_obj()) { |
|
450 | - return $this->country_obj()->name(); |
|
451 | - } else { |
|
452 | - return ''; |
|
453 | - } |
|
454 | - } |
|
455 | - |
|
456 | - |
|
457 | - /** |
|
458 | - * either displays the country ISO2 code or the country name, as determined |
|
459 | - * by the "FHEE__EEI_Address__country__use_abbreviation" filter. |
|
460 | - * defaults to abbreviation |
|
461 | - * |
|
462 | - * @return string |
|
463 | - */ |
|
464 | - public function country() |
|
465 | - { |
|
466 | - if (apply_filters('FHEE__EEI_Address__country__use_abbreviation', true, $this->country_obj())) { |
|
467 | - return $this->country_ID(); |
|
468 | - } else { |
|
469 | - return $this->country_name(); |
|
470 | - } |
|
471 | - } |
|
472 | - |
|
473 | - |
|
474 | - /** |
|
475 | - * get Attendee Zip/Postal Code |
|
476 | - * |
|
477 | - * @return string |
|
478 | - */ |
|
479 | - public function zip() |
|
480 | - { |
|
481 | - return $this->get('ATT_zip'); |
|
482 | - } |
|
483 | - |
|
484 | - |
|
485 | - /** |
|
486 | - * get Attendee Email Address |
|
487 | - * |
|
488 | - * @return string |
|
489 | - */ |
|
490 | - public function email() |
|
491 | - { |
|
492 | - return $this->get('ATT_email'); |
|
493 | - } |
|
494 | - |
|
495 | - |
|
496 | - /** |
|
497 | - * get Attendee Phone # |
|
498 | - * |
|
499 | - * @return string |
|
500 | - */ |
|
501 | - public function phone() |
|
502 | - { |
|
503 | - return $this->get('ATT_phone'); |
|
504 | - } |
|
505 | - |
|
506 | - |
|
507 | - /** |
|
508 | - * get deleted |
|
509 | - * |
|
510 | - * @return bool |
|
511 | - */ |
|
512 | - public function deleted() |
|
513 | - { |
|
514 | - return $this->get('ATT_deleted'); |
|
515 | - } |
|
516 | - |
|
517 | - |
|
518 | - /** |
|
519 | - * Gets registrations of this attendee |
|
520 | - * |
|
521 | - * @param array $query_params |
|
522 | - * |
|
523 | - * @return EE_Registration[] |
|
524 | - */ |
|
525 | - public function get_registrations($query_params = array()) |
|
526 | - { |
|
527 | - return $this->get_many_related('Registration', $query_params); |
|
528 | - } |
|
529 | - |
|
530 | - |
|
531 | - /** |
|
532 | - * Gets the most recent registration of this attendee |
|
533 | - * |
|
534 | - * @return EE_Registration |
|
535 | - */ |
|
536 | - public function get_most_recent_registration() |
|
537 | - { |
|
538 | - return $this->get_first_related('Registration', |
|
539 | - array('order_by' => array('REG_date' => 'DESC'))); //null, 'REG_date', 'DESC', '=', 'OBJECT_K'); |
|
540 | - } |
|
541 | - |
|
542 | - |
|
543 | - /** |
|
544 | - * Gets the most recent registration for this attend at this event |
|
545 | - * |
|
546 | - * @param int $event_id |
|
547 | - * |
|
548 | - * @return EE_Registration |
|
549 | - */ |
|
550 | - public function get_most_recent_registration_for_event($event_id) |
|
551 | - { |
|
552 | - return $this->get_first_related('Registration', |
|
553 | - array(array('EVT_ID' => $event_id), 'order_by' => array('REG_date' => 'DESC')));//, '=', 'OBJECT_K' ); |
|
554 | - } |
|
555 | - |
|
556 | - |
|
557 | - /** |
|
558 | - * returns any events attached to this attendee ($_Event property); |
|
559 | - * |
|
560 | - * @return array |
|
561 | - */ |
|
562 | - public function events() |
|
563 | - { |
|
564 | - return $this->get_many_related('Event'); |
|
565 | - } |
|
566 | - |
|
567 | - |
|
568 | - /** |
|
569 | - * Gets the billing info array where keys match espresso_reg_page_billing_inputs(), |
|
570 | - * and keys are their cleaned values. @see EE_Attendee::save_and_clean_billing_info_for_payment_method() which was |
|
571 | - * used to save the billing info |
|
572 | - * |
|
573 | - * @param EE_Payment_Method $payment_method the _gateway_name property on the gateway class |
|
574 | - * |
|
575 | - * @return EE_Form_Section_Proper|null |
|
576 | - */ |
|
577 | - public function billing_info_for_payment_method($payment_method) |
|
578 | - { |
|
579 | - $pm_type = $payment_method->type_obj(); |
|
580 | - if ( ! $pm_type instanceof EE_PMT_Base) { |
|
581 | - return null; |
|
582 | - } |
|
583 | - $billing_info = $this->get_post_meta($this->get_billing_info_postmeta_name($payment_method), true); |
|
584 | - if ( ! $billing_info) { |
|
585 | - return null; |
|
586 | - } |
|
587 | - $billing_form = $pm_type->billing_form(); |
|
588 | - if ($billing_form instanceof EE_Form_Section_Proper) { |
|
589 | - $billing_form->receive_form_submission(array($billing_form->name() => $billing_info), false); |
|
590 | - } |
|
320 | + return $full_address_array; |
|
321 | + } |
|
322 | + |
|
323 | + |
|
324 | + /** |
|
325 | + * get Attendee Address |
|
326 | + * |
|
327 | + * @return string |
|
328 | + */ |
|
329 | + public function address() |
|
330 | + { |
|
331 | + return $this->get('ATT_address'); |
|
332 | + } |
|
333 | + |
|
334 | + |
|
335 | + /** |
|
336 | + * get Attendee Address2 |
|
337 | + * |
|
338 | + * @return string |
|
339 | + */ |
|
340 | + public function address2() |
|
341 | + { |
|
342 | + return $this->get('ATT_address2'); |
|
343 | + } |
|
344 | + |
|
345 | + |
|
346 | + /** |
|
347 | + * get Attendee City |
|
348 | + * |
|
349 | + * @return string |
|
350 | + */ |
|
351 | + public function city() |
|
352 | + { |
|
353 | + return $this->get('ATT_city'); |
|
354 | + } |
|
355 | + |
|
356 | + |
|
357 | + /** |
|
358 | + * get Attendee State ID |
|
359 | + * |
|
360 | + * @return string |
|
361 | + */ |
|
362 | + public function state_ID() |
|
363 | + { |
|
364 | + return $this->get('STA_ID'); |
|
365 | + } |
|
366 | + |
|
367 | + |
|
368 | + /** |
|
369 | + * @return string |
|
370 | + */ |
|
371 | + public function state_abbrev() |
|
372 | + { |
|
373 | + return $this->state_obj() instanceof EE_State ? $this->state_obj()->abbrev() : ''; |
|
374 | + } |
|
375 | + |
|
376 | + |
|
377 | + /** |
|
378 | + * Gets the state set to this attendee |
|
379 | + * |
|
380 | + * @return EE_State |
|
381 | + */ |
|
382 | + public function state_obj() |
|
383 | + { |
|
384 | + return $this->get_first_related('State'); |
|
385 | + } |
|
386 | + |
|
387 | + |
|
388 | + /** |
|
389 | + * Returns the state's name, otherwise 'Unknown' |
|
390 | + * |
|
391 | + * @return string |
|
392 | + */ |
|
393 | + public function state_name() |
|
394 | + { |
|
395 | + if ($this->state_obj()) { |
|
396 | + return $this->state_obj()->name(); |
|
397 | + } else { |
|
398 | + return ''; |
|
399 | + } |
|
400 | + } |
|
401 | + |
|
402 | + |
|
403 | + /** |
|
404 | + * either displays the state abbreviation or the state name, as determined |
|
405 | + * by the "FHEE__EEI_Address__state__use_abbreviation" filter. |
|
406 | + * defaults to abbreviation |
|
407 | + * |
|
408 | + * @return string |
|
409 | + */ |
|
410 | + public function state() |
|
411 | + { |
|
412 | + if (apply_filters('FHEE__EEI_Address__state__use_abbreviation', true, $this->state_obj())) { |
|
413 | + return $this->state_abbrev(); |
|
414 | + } else { |
|
415 | + return $this->state_name(); |
|
416 | + } |
|
417 | + } |
|
418 | + |
|
419 | + |
|
420 | + /** |
|
421 | + * get Attendee Country ISO Code |
|
422 | + * |
|
423 | + * @return string |
|
424 | + */ |
|
425 | + public function country_ID() |
|
426 | + { |
|
427 | + return $this->get('CNT_ISO'); |
|
428 | + } |
|
429 | + |
|
430 | + |
|
431 | + /** |
|
432 | + * Gets country set for this attendee |
|
433 | + * |
|
434 | + * @return EE_Country |
|
435 | + */ |
|
436 | + public function country_obj() |
|
437 | + { |
|
438 | + return $this->get_first_related('Country'); |
|
439 | + } |
|
440 | + |
|
441 | + |
|
442 | + /** |
|
443 | + * Returns the country's name if known, otherwise 'Unknown' |
|
444 | + * |
|
445 | + * @return string |
|
446 | + */ |
|
447 | + public function country_name() |
|
448 | + { |
|
449 | + if ($this->country_obj()) { |
|
450 | + return $this->country_obj()->name(); |
|
451 | + } else { |
|
452 | + return ''; |
|
453 | + } |
|
454 | + } |
|
455 | + |
|
456 | + |
|
457 | + /** |
|
458 | + * either displays the country ISO2 code or the country name, as determined |
|
459 | + * by the "FHEE__EEI_Address__country__use_abbreviation" filter. |
|
460 | + * defaults to abbreviation |
|
461 | + * |
|
462 | + * @return string |
|
463 | + */ |
|
464 | + public function country() |
|
465 | + { |
|
466 | + if (apply_filters('FHEE__EEI_Address__country__use_abbreviation', true, $this->country_obj())) { |
|
467 | + return $this->country_ID(); |
|
468 | + } else { |
|
469 | + return $this->country_name(); |
|
470 | + } |
|
471 | + } |
|
472 | + |
|
473 | + |
|
474 | + /** |
|
475 | + * get Attendee Zip/Postal Code |
|
476 | + * |
|
477 | + * @return string |
|
478 | + */ |
|
479 | + public function zip() |
|
480 | + { |
|
481 | + return $this->get('ATT_zip'); |
|
482 | + } |
|
483 | + |
|
484 | + |
|
485 | + /** |
|
486 | + * get Attendee Email Address |
|
487 | + * |
|
488 | + * @return string |
|
489 | + */ |
|
490 | + public function email() |
|
491 | + { |
|
492 | + return $this->get('ATT_email'); |
|
493 | + } |
|
494 | + |
|
495 | + |
|
496 | + /** |
|
497 | + * get Attendee Phone # |
|
498 | + * |
|
499 | + * @return string |
|
500 | + */ |
|
501 | + public function phone() |
|
502 | + { |
|
503 | + return $this->get('ATT_phone'); |
|
504 | + } |
|
505 | + |
|
506 | + |
|
507 | + /** |
|
508 | + * get deleted |
|
509 | + * |
|
510 | + * @return bool |
|
511 | + */ |
|
512 | + public function deleted() |
|
513 | + { |
|
514 | + return $this->get('ATT_deleted'); |
|
515 | + } |
|
516 | + |
|
517 | + |
|
518 | + /** |
|
519 | + * Gets registrations of this attendee |
|
520 | + * |
|
521 | + * @param array $query_params |
|
522 | + * |
|
523 | + * @return EE_Registration[] |
|
524 | + */ |
|
525 | + public function get_registrations($query_params = array()) |
|
526 | + { |
|
527 | + return $this->get_many_related('Registration', $query_params); |
|
528 | + } |
|
529 | + |
|
530 | + |
|
531 | + /** |
|
532 | + * Gets the most recent registration of this attendee |
|
533 | + * |
|
534 | + * @return EE_Registration |
|
535 | + */ |
|
536 | + public function get_most_recent_registration() |
|
537 | + { |
|
538 | + return $this->get_first_related('Registration', |
|
539 | + array('order_by' => array('REG_date' => 'DESC'))); //null, 'REG_date', 'DESC', '=', 'OBJECT_K'); |
|
540 | + } |
|
541 | + |
|
542 | + |
|
543 | + /** |
|
544 | + * Gets the most recent registration for this attend at this event |
|
545 | + * |
|
546 | + * @param int $event_id |
|
547 | + * |
|
548 | + * @return EE_Registration |
|
549 | + */ |
|
550 | + public function get_most_recent_registration_for_event($event_id) |
|
551 | + { |
|
552 | + return $this->get_first_related('Registration', |
|
553 | + array(array('EVT_ID' => $event_id), 'order_by' => array('REG_date' => 'DESC')));//, '=', 'OBJECT_K' ); |
|
554 | + } |
|
555 | + |
|
556 | + |
|
557 | + /** |
|
558 | + * returns any events attached to this attendee ($_Event property); |
|
559 | + * |
|
560 | + * @return array |
|
561 | + */ |
|
562 | + public function events() |
|
563 | + { |
|
564 | + return $this->get_many_related('Event'); |
|
565 | + } |
|
566 | + |
|
567 | + |
|
568 | + /** |
|
569 | + * Gets the billing info array where keys match espresso_reg_page_billing_inputs(), |
|
570 | + * and keys are their cleaned values. @see EE_Attendee::save_and_clean_billing_info_for_payment_method() which was |
|
571 | + * used to save the billing info |
|
572 | + * |
|
573 | + * @param EE_Payment_Method $payment_method the _gateway_name property on the gateway class |
|
574 | + * |
|
575 | + * @return EE_Form_Section_Proper|null |
|
576 | + */ |
|
577 | + public function billing_info_for_payment_method($payment_method) |
|
578 | + { |
|
579 | + $pm_type = $payment_method->type_obj(); |
|
580 | + if ( ! $pm_type instanceof EE_PMT_Base) { |
|
581 | + return null; |
|
582 | + } |
|
583 | + $billing_info = $this->get_post_meta($this->get_billing_info_postmeta_name($payment_method), true); |
|
584 | + if ( ! $billing_info) { |
|
585 | + return null; |
|
586 | + } |
|
587 | + $billing_form = $pm_type->billing_form(); |
|
588 | + if ($billing_form instanceof EE_Form_Section_Proper) { |
|
589 | + $billing_form->receive_form_submission(array($billing_form->name() => $billing_info), false); |
|
590 | + } |
|
591 | 591 | |
592 | - return $billing_form; |
|
593 | - } |
|
594 | - |
|
595 | - |
|
596 | - /** |
|
597 | - * Gets the postmeta key that holds this attendee's billing info for the |
|
598 | - * specified payment method |
|
599 | - * |
|
600 | - * @param EE_Payment_Method $payment_method |
|
601 | - * |
|
602 | - * @return string |
|
603 | - */ |
|
604 | - public function get_billing_info_postmeta_name($payment_method) |
|
605 | - { |
|
606 | - if ($payment_method->type_obj() instanceof EE_PMT_Base) { |
|
607 | - return 'billing_info_' . $payment_method->type_obj()->system_name(); |
|
608 | - } else { |
|
609 | - return null; |
|
610 | - } |
|
611 | - } |
|
612 | - |
|
613 | - |
|
614 | - /** |
|
615 | - * Saves the billing info to the attendee. @see EE_Attendee::billing_info_for_payment_method() which is used to |
|
616 | - * retrieve it |
|
617 | - * |
|
618 | - * @param EE_Billing_Attendee_Info_Form $billing_form |
|
619 | - * @param EE_Payment_Method $payment_method |
|
620 | - * |
|
621 | - * @return boolean |
|
622 | - */ |
|
623 | - public function save_and_clean_billing_info_for_payment_method($billing_form, $payment_method) |
|
624 | - { |
|
625 | - if ( ! $billing_form instanceof EE_Billing_Attendee_Info_Form) { |
|
626 | - EE_Error::add_error(__('Cannot save billing info because there is none.', 'event_espresso')); |
|
592 | + return $billing_form; |
|
593 | + } |
|
594 | + |
|
595 | + |
|
596 | + /** |
|
597 | + * Gets the postmeta key that holds this attendee's billing info for the |
|
598 | + * specified payment method |
|
599 | + * |
|
600 | + * @param EE_Payment_Method $payment_method |
|
601 | + * |
|
602 | + * @return string |
|
603 | + */ |
|
604 | + public function get_billing_info_postmeta_name($payment_method) |
|
605 | + { |
|
606 | + if ($payment_method->type_obj() instanceof EE_PMT_Base) { |
|
607 | + return 'billing_info_' . $payment_method->type_obj()->system_name(); |
|
608 | + } else { |
|
609 | + return null; |
|
610 | + } |
|
611 | + } |
|
612 | + |
|
613 | + |
|
614 | + /** |
|
615 | + * Saves the billing info to the attendee. @see EE_Attendee::billing_info_for_payment_method() which is used to |
|
616 | + * retrieve it |
|
617 | + * |
|
618 | + * @param EE_Billing_Attendee_Info_Form $billing_form |
|
619 | + * @param EE_Payment_Method $payment_method |
|
620 | + * |
|
621 | + * @return boolean |
|
622 | + */ |
|
623 | + public function save_and_clean_billing_info_for_payment_method($billing_form, $payment_method) |
|
624 | + { |
|
625 | + if ( ! $billing_form instanceof EE_Billing_Attendee_Info_Form) { |
|
626 | + EE_Error::add_error(__('Cannot save billing info because there is none.', 'event_espresso')); |
|
627 | 627 | |
628 | - return false; |
|
629 | - } |
|
630 | - $billing_form->clean_sensitive_data(); |
|
628 | + return false; |
|
629 | + } |
|
630 | + $billing_form->clean_sensitive_data(); |
|
631 | 631 | |
632 | - return update_post_meta($this->ID(), $this->get_billing_info_postmeta_name($payment_method), |
|
633 | - $billing_form->input_values(true)); |
|
634 | - } |
|
635 | - |
|
636 | - |
|
637 | - /** |
|
638 | - * Return the link to the admin details for the object. |
|
639 | - * |
|
640 | - * @return string |
|
641 | - */ |
|
642 | - public function get_admin_details_link() |
|
643 | - { |
|
644 | - return $this->get_admin_edit_link(); |
|
645 | - } |
|
646 | - |
|
647 | - |
|
648 | - /** |
|
649 | - * Returns the link to the editor for the object. Sometimes this is the same as the details. |
|
650 | - * |
|
651 | - * @return string |
|
652 | - */ |
|
653 | - public function get_admin_edit_link() |
|
654 | - { |
|
655 | - EE_Registry::instance()->load_helper('URL'); |
|
632 | + return update_post_meta($this->ID(), $this->get_billing_info_postmeta_name($payment_method), |
|
633 | + $billing_form->input_values(true)); |
|
634 | + } |
|
635 | + |
|
636 | + |
|
637 | + /** |
|
638 | + * Return the link to the admin details for the object. |
|
639 | + * |
|
640 | + * @return string |
|
641 | + */ |
|
642 | + public function get_admin_details_link() |
|
643 | + { |
|
644 | + return $this->get_admin_edit_link(); |
|
645 | + } |
|
646 | + |
|
647 | + |
|
648 | + /** |
|
649 | + * Returns the link to the editor for the object. Sometimes this is the same as the details. |
|
650 | + * |
|
651 | + * @return string |
|
652 | + */ |
|
653 | + public function get_admin_edit_link() |
|
654 | + { |
|
655 | + EE_Registry::instance()->load_helper('URL'); |
|
656 | 656 | |
657 | - return EEH_URL::add_query_args_and_nonce( |
|
658 | - array( |
|
659 | - 'page' => 'espresso_registrations', |
|
660 | - 'action' => 'edit_attendee', |
|
661 | - 'post' => $this->ID(), |
|
662 | - ), |
|
663 | - admin_url('admin.php') |
|
664 | - ); |
|
665 | - } |
|
666 | - |
|
667 | - |
|
668 | - /** |
|
669 | - * Returns the link to a settings page for the object. |
|
670 | - * |
|
671 | - * @return string |
|
672 | - */ |
|
673 | - public function get_admin_settings_link() |
|
674 | - { |
|
675 | - return $this->get_admin_edit_link(); |
|
676 | - } |
|
677 | - |
|
678 | - |
|
679 | - /** |
|
680 | - * Returns the link to the "overview" for the object (typically the "list table" view). |
|
681 | - * |
|
682 | - * @return string |
|
683 | - */ |
|
684 | - public function get_admin_overview_link() |
|
685 | - { |
|
686 | - EE_Registry::instance()->load_helper('URL'); |
|
657 | + return EEH_URL::add_query_args_and_nonce( |
|
658 | + array( |
|
659 | + 'page' => 'espresso_registrations', |
|
660 | + 'action' => 'edit_attendee', |
|
661 | + 'post' => $this->ID(), |
|
662 | + ), |
|
663 | + admin_url('admin.php') |
|
664 | + ); |
|
665 | + } |
|
666 | + |
|
667 | + |
|
668 | + /** |
|
669 | + * Returns the link to a settings page for the object. |
|
670 | + * |
|
671 | + * @return string |
|
672 | + */ |
|
673 | + public function get_admin_settings_link() |
|
674 | + { |
|
675 | + return $this->get_admin_edit_link(); |
|
676 | + } |
|
677 | + |
|
678 | + |
|
679 | + /** |
|
680 | + * Returns the link to the "overview" for the object (typically the "list table" view). |
|
681 | + * |
|
682 | + * @return string |
|
683 | + */ |
|
684 | + public function get_admin_overview_link() |
|
685 | + { |
|
686 | + EE_Registry::instance()->load_helper('URL'); |
|
687 | 687 | |
688 | - return EEH_URL::add_query_args_and_nonce( |
|
689 | - array( |
|
690 | - 'page' => 'espresso_registrations', |
|
691 | - 'action' => 'contact_list', |
|
692 | - ), |
|
693 | - admin_url('admin.php') |
|
694 | - ); |
|
695 | - } |
|
688 | + return EEH_URL::add_query_args_and_nonce( |
|
689 | + array( |
|
690 | + 'page' => 'espresso_registrations', |
|
691 | + 'action' => 'contact_list', |
|
692 | + ), |
|
693 | + admin_url('admin.php') |
|
694 | + ); |
|
695 | + } |
|
696 | 696 | |
697 | 697 | |
698 | 698 | } |
@@ -34,9 +34,9 @@ discard block |
||
34 | 34 | protected function __construct($fieldValues = null, $bydb = false, $timezone = null, $date_formats = array()) |
35 | 35 | { |
36 | 36 | if ( ! isset($fieldValues['ATT_full_name'])) { |
37 | - $fname = isset($fieldValues['ATT_fname']) ? $fieldValues['ATT_fname'] . ' ' : ''; |
|
37 | + $fname = isset($fieldValues['ATT_fname']) ? $fieldValues['ATT_fname'].' ' : ''; |
|
38 | 38 | $lname = isset($fieldValues['ATT_lname']) ? $fieldValues['ATT_lname'] : ''; |
39 | - $fieldValues['ATT_full_name'] = $fname . $lname; |
|
39 | + $fieldValues['ATT_full_name'] = $fname.$lname; |
|
40 | 40 | } |
41 | 41 | if ( ! isset($fieldValues['ATT_slug'])) { |
42 | 42 | // $fieldValues['ATT_slug'] = sanitize_key(wp_generate_password(20)); |
@@ -266,7 +266,7 @@ discard block |
||
266 | 266 | */ |
267 | 267 | public function full_name($apply_html_entities = false) |
268 | 268 | { |
269 | - $full_name = $this->fname() . ' ' . $this->lname(); |
|
269 | + $full_name = $this->fname().' '.$this->lname(); |
|
270 | 270 | |
271 | 271 | return $apply_html_entities ? htmlentities($full_name, ENT_QUOTES, 'UTF-8') : $full_name; |
272 | 272 | } |
@@ -550,7 +550,7 @@ discard block |
||
550 | 550 | public function get_most_recent_registration_for_event($event_id) |
551 | 551 | { |
552 | 552 | return $this->get_first_related('Registration', |
553 | - array(array('EVT_ID' => $event_id), 'order_by' => array('REG_date' => 'DESC')));//, '=', 'OBJECT_K' ); |
|
553 | + array(array('EVT_ID' => $event_id), 'order_by' => array('REG_date' => 'DESC'))); //, '=', 'OBJECT_K' ); |
|
554 | 554 | } |
555 | 555 | |
556 | 556 | |
@@ -604,7 +604,7 @@ discard block |
||
604 | 604 | public function get_billing_info_postmeta_name($payment_method) |
605 | 605 | { |
606 | 606 | if ($payment_method->type_obj() instanceof EE_PMT_Base) { |
607 | - return 'billing_info_' . $payment_method->type_obj()->system_name(); |
|
607 | + return 'billing_info_'.$payment_method->type_obj()->system_name(); |
|
608 | 608 | } else { |
609 | 609 | return null; |
610 | 610 | } |
@@ -1,6 +1,6 @@ discard block |
||
1 | 1 | <?php |
2 | 2 | |
3 | -if (!defined('EVENT_ESPRESSO_VERSION') ) |
|
3 | +if ( ! defined('EVENT_ESPRESSO_VERSION')) |
|
4 | 4 | exit('NO direct script access allowed'); |
5 | 5 | |
6 | 6 | /** |
@@ -59,24 +59,24 @@ discard block |
||
59 | 59 | * was not a new generated template but just reactivated (which only happens for global templates that |
60 | 60 | * already exist in the database. |
61 | 61 | */ |
62 | - public static function generate_new_templates( $messenger, $message_types, $GRP_ID = 0, $global = false ) { |
|
62 | + public static function generate_new_templates($messenger, $message_types, $GRP_ID = 0, $global = false) { |
|
63 | 63 | //make sure message_type is an array. |
64 | 64 | $message_types = (array) $message_types; |
65 | 65 | $templates = array(); |
66 | 66 | |
67 | - if ( empty( $messenger ) ) { |
|
68 | - throw new EE_Error( __('We need a messenger to generate templates!', 'event_espresso') ); |
|
67 | + if (empty($messenger)) { |
|
68 | + throw new EE_Error(__('We need a messenger to generate templates!', 'event_espresso')); |
|
69 | 69 | } |
70 | 70 | |
71 | 71 | //if we STILL have empty $message_types then we need to generate an error message b/c we NEED message types to do the template files. |
72 | - if ( empty( $message_types ) ) { |
|
73 | - throw new EE_Error( __('We need at least one message type to generate templates!', 'event_espresso') ); |
|
72 | + if (empty($message_types)) { |
|
73 | + throw new EE_Error(__('We need at least one message type to generate templates!', 'event_espresso')); |
|
74 | 74 | } |
75 | 75 | |
76 | 76 | EEH_MSG_Template::_set_autoloader(); |
77 | - foreach ( $message_types as $message_type ) { |
|
77 | + foreach ($message_types as $message_type) { |
|
78 | 78 | //if global then let's attempt to get the GRP_ID for this combo IF GRP_ID is empty. |
79 | - if ( $global && empty( $GRP_ID ) ) { |
|
79 | + if ($global && empty($GRP_ID)) { |
|
80 | 80 | $GRP_ID = EEM_Message_Template_Group::instance()->get_one( |
81 | 81 | array( |
82 | 82 | array( |
@@ -91,7 +91,7 @@ discard block |
||
91 | 91 | // if this is global template generation. |
92 | 92 | // First let's determine if we already HAVE global templates for this messenger and message_type combination. |
93 | 93 | // If we do then NO generation!! |
94 | - if ( $global && EEH_MSG_Template::already_generated( $messenger, $message_type, $GRP_ID ) ) { |
|
94 | + if ($global && EEH_MSG_Template::already_generated($messenger, $message_type, $GRP_ID)) { |
|
95 | 95 | $templates[] = array( |
96 | 96 | 'GRP_ID' => $GRP_ID, |
97 | 97 | 'MTP_context' => '', |
@@ -99,9 +99,9 @@ discard block |
||
99 | 99 | //we already have generated templates for this so let's go to the next message type. |
100 | 100 | continue; |
101 | 101 | } |
102 | - $new_message_template_group = EEH_MSG_Template::create_new_templates( $messenger, $message_type, $GRP_ID, $global ); |
|
102 | + $new_message_template_group = EEH_MSG_Template::create_new_templates($messenger, $message_type, $GRP_ID, $global); |
|
103 | 103 | |
104 | - if ( ! $new_message_template_group ) { |
|
104 | + if ( ! $new_message_template_group) { |
|
105 | 105 | continue; |
106 | 106 | } |
107 | 107 | $templates[] = $new_message_template_group; |
@@ -118,10 +118,10 @@ discard block |
||
118 | 118 | * @param int $GRP_ID GRP ID ( if a custom template) (if not provided then we're just doing global template check) |
119 | 119 | * @return bool true = generated, false = hasn't been generated. |
120 | 120 | */ |
121 | - public static function already_generated( $messenger, $message_type, $GRP_ID = 0 ) { |
|
121 | + public static function already_generated($messenger, $message_type, $GRP_ID = 0) { |
|
122 | 122 | EEH_MSG_Template::_set_autoloader(); |
123 | 123 | //what method we use depends on whether we have an GRP_ID or not |
124 | - $count = empty( $GRP_ID ) |
|
124 | + $count = empty($GRP_ID) |
|
125 | 125 | ? EEM_Message_Template::instance()->count( |
126 | 126 | array( |
127 | 127 | array( |
@@ -131,7 +131,7 @@ discard block |
||
131 | 131 | ) |
132 | 132 | ) |
133 | 133 | ) |
134 | - : EEM_Message_Template::instance()->count( array( array( 'GRP_ID' => $GRP_ID ) ) ); |
|
134 | + : EEM_Message_Template::instance()->count(array(array('GRP_ID' => $GRP_ID))); |
|
135 | 135 | |
136 | 136 | return $count > 0; |
137 | 137 | } |
@@ -147,15 +147,15 @@ discard block |
||
147 | 147 | * @param array $message_type_names Message type slug |
148 | 148 | * @return int count of updated records. |
149 | 149 | */ |
150 | - public static function update_to_active( $messenger_names, $message_type_names ) { |
|
151 | - $messenger_names = is_array( $messenger_names ) ? $messenger_names : array( $messenger_names ); |
|
152 | - $message_type_names = is_array( $message_type_names ) ? $message_type_names : array( $message_type_names ); |
|
150 | + public static function update_to_active($messenger_names, $message_type_names) { |
|
151 | + $messenger_names = is_array($messenger_names) ? $messenger_names : array($messenger_names); |
|
152 | + $message_type_names = is_array($message_type_names) ? $message_type_names : array($message_type_names); |
|
153 | 153 | return EEM_Message_Template_Group::instance()->update( |
154 | - array( 'MTP_is_active' => 1 ), |
|
154 | + array('MTP_is_active' => 1), |
|
155 | 155 | array( |
156 | 156 | array( |
157 | - 'MTP_messenger' => array( 'IN', $messenger_names ), |
|
158 | - 'MTP_message_type' => array( 'IN', $message_type_names ) |
|
157 | + 'MTP_messenger' => array('IN', $messenger_names), |
|
158 | + 'MTP_message_type' => array('IN', $message_type_names) |
|
159 | 159 | ) |
160 | 160 | ) |
161 | 161 | ); |
@@ -176,7 +176,7 @@ discard block |
||
176 | 176 | * |
177 | 177 | * @return int count of updated records. |
178 | 178 | */ |
179 | - public static function update_to_inactive( $messenger_names = array(), $message_type_names = array() ) { |
|
179 | + public static function update_to_inactive($messenger_names = array(), $message_type_names = array()) { |
|
180 | 180 | return EEM_Message_Template_Group::instance()->deactivate_message_template_groups_for( |
181 | 181 | $messenger_names, |
182 | 182 | $message_type_names |
@@ -193,9 +193,9 @@ discard block |
||
193 | 193 | * @param string $type |
194 | 194 | * @return array array consisting of installed messenger objects and installed message type objects. |
195 | 195 | */ |
196 | - public static function get_installed_message_objects( $type = 'all' ) { |
|
196 | + public static function get_installed_message_objects($type = 'all') { |
|
197 | 197 | self::_set_autoloader(); |
198 | - $message_resource_manager = EE_Registry::instance()->load_lib( 'Message_Resource_Manager' ); |
|
198 | + $message_resource_manager = EE_Registry::instance()->load_lib('Message_Resource_Manager'); |
|
199 | 199 | return array( |
200 | 200 | 'messenger' => $message_resource_manager->installed_messengers(), |
201 | 201 | 'message_type' => $message_resource_manager->installed_message_types() |
@@ -231,74 +231,74 @@ discard block |
||
231 | 231 | $context = 'admin', |
232 | 232 | $merged = false |
233 | 233 | ) { |
234 | - $messenger_name = str_replace( ' ', '_', ucwords( str_replace( '_', ' ', $messenger ) ) ); |
|
235 | - $mt_name = str_replace( ' ', '_', ucwords( str_replace( '_', ' ', $message_type ) ) ); |
|
234 | + $messenger_name = str_replace(' ', '_', ucwords(str_replace('_', ' ', $messenger))); |
|
235 | + $mt_name = str_replace(' ', '_', ucwords(str_replace('_', ' ', $message_type))); |
|
236 | 236 | /** @var EE_Message_Resource_Manager $message_resource_manager */ |
237 | - $message_resource_manager = EE_Registry::instance()->load_lib( 'Message_Resource_Manager' ); |
|
237 | + $message_resource_manager = EE_Registry::instance()->load_lib('Message_Resource_Manager'); |
|
238 | 238 | //convert slug to object |
239 | - $messenger = $message_resource_manager->get_messenger( $messenger ); |
|
239 | + $messenger = $message_resource_manager->get_messenger($messenger); |
|
240 | 240 | |
241 | 241 | //if messenger isn't a EE_messenger resource then bail. |
242 | - if ( ! $messenger instanceof EE_messenger ) { |
|
242 | + if ( ! $messenger instanceof EE_messenger) { |
|
243 | 243 | return array(); |
244 | 244 | } |
245 | 245 | |
246 | 246 | //validate class for getting our list of shortcodes |
247 | - $classname = 'EE_Messages_' . $messenger_name . '_' . $mt_name . '_Validator'; |
|
248 | - if ( ! class_exists( $classname ) ) { |
|
249 | - $msg[] = __( 'The Validator class was unable to load', 'event_espresso' ); |
|
247 | + $classname = 'EE_Messages_'.$messenger_name.'_'.$mt_name.'_Validator'; |
|
248 | + if ( ! class_exists($classname)) { |
|
249 | + $msg[] = __('The Validator class was unable to load', 'event_espresso'); |
|
250 | 250 | $msg[] = sprintf( |
251 | - __( 'The class name compiled was %s. Please check and make sure the spelling and case is correct for the class name and that there is an autoloader in place for this class', 'event_espresso' ), |
|
251 | + __('The class name compiled was %s. Please check and make sure the spelling and case is correct for the class name and that there is an autoloader in place for this class', 'event_espresso'), |
|
252 | 252 | $classname |
253 | 253 | ); |
254 | - throw new EE_Error( implode( '||', $msg ) ); |
|
254 | + throw new EE_Error(implode('||', $msg)); |
|
255 | 255 | } |
256 | 256 | |
257 | 257 | /** @type EE_Messages_Validator $_VLD */ |
258 | - $_VLD = new $classname( array(), $context ); |
|
258 | + $_VLD = new $classname(array(), $context); |
|
259 | 259 | $valid_shortcodes = $_VLD->get_validators(); |
260 | 260 | |
261 | 261 | //let's make sure we're only getting the shortcode part of the validators |
262 | 262 | $shortcodes = array(); |
263 | - foreach ( $valid_shortcodes as $field => $validators ) { |
|
264 | - $shortcodes[ $field ] = $validators['shortcodes']; |
|
263 | + foreach ($valid_shortcodes as $field => $validators) { |
|
264 | + $shortcodes[$field] = $validators['shortcodes']; |
|
265 | 265 | } |
266 | 266 | $valid_shortcodes = $shortcodes; |
267 | 267 | |
268 | 268 | //if not all fields let's make sure we ONLY include the shortcodes for the specified fields. |
269 | - if ( ! empty( $fields ) ) { |
|
269 | + if ( ! empty($fields)) { |
|
270 | 270 | $specified_shortcodes = array(); |
271 | - foreach ( $fields as $field ) { |
|
272 | - if ( isset( $valid_shortcodes[ $field ] ) ) { |
|
273 | - $specified_shortcodes[ $field ] = $valid_shortcodes[ $field ]; |
|
271 | + foreach ($fields as $field) { |
|
272 | + if (isset($valid_shortcodes[$field])) { |
|
273 | + $specified_shortcodes[$field] = $valid_shortcodes[$field]; |
|
274 | 274 | } |
275 | 275 | } |
276 | 276 | $valid_shortcodes = $specified_shortcodes; |
277 | 277 | } |
278 | 278 | |
279 | 279 | //if not merged then let's replace the fields with the localized fields |
280 | - if ( ! $merged ) { |
|
280 | + if ( ! $merged) { |
|
281 | 281 | //let's get all the fields for the set messenger so that we can get the localized label and use that in the returned array. |
282 | 282 | $field_settings = $messenger->get_template_fields(); |
283 | 283 | $localized = array(); |
284 | - foreach ( $valid_shortcodes as $field => $shortcodes ) { |
|
284 | + foreach ($valid_shortcodes as $field => $shortcodes) { |
|
285 | 285 | //get localized field label |
286 | - if ( isset( $field_settings[ $field ] ) ) { |
|
286 | + if (isset($field_settings[$field])) { |
|
287 | 287 | //possible that this is used as a main field. |
288 | - if ( empty( $field_settings[ $field ] ) ) { |
|
289 | - if ( isset( $field_settings['extra'][ $field ] ) ) { |
|
290 | - $_field = $field_settings['extra'][ $field ]['main']['label']; |
|
288 | + if (empty($field_settings[$field])) { |
|
289 | + if (isset($field_settings['extra'][$field])) { |
|
290 | + $_field = $field_settings['extra'][$field]['main']['label']; |
|
291 | 291 | } else { |
292 | 292 | $_field = $field; |
293 | 293 | } |
294 | 294 | } else { |
295 | - $_field = $field_settings[ $field ]['label']; |
|
295 | + $_field = $field_settings[$field]['label']; |
|
296 | 296 | } |
297 | - } else if ( isset( $field_settings['extra'] ) ) { |
|
297 | + } else if (isset($field_settings['extra'])) { |
|
298 | 298 | //loop through extra "main fields" and see if any of their children have our field |
299 | - foreach ( $field_settings['extra'] as $main_field => $fields ) { |
|
300 | - if ( isset( $fields[ $field ] ) ) { |
|
301 | - $_field = $fields[ $field ]['label']; |
|
299 | + foreach ($field_settings['extra'] as $main_field => $fields) { |
|
300 | + if (isset($fields[$field])) { |
|
301 | + $_field = $fields[$field]['label']; |
|
302 | 302 | } else { |
303 | 303 | $_field = $field; |
304 | 304 | } |
@@ -306,22 +306,22 @@ discard block |
||
306 | 306 | } else { |
307 | 307 | $_field = $field; |
308 | 308 | } |
309 | - if ( isset( $_field ) ) { |
|
310 | - $localized[ $_field ] = $shortcodes; |
|
309 | + if (isset($_field)) { |
|
310 | + $localized[$_field] = $shortcodes; |
|
311 | 311 | } |
312 | 312 | } |
313 | 313 | $valid_shortcodes = $localized; |
314 | 314 | } |
315 | 315 | |
316 | 316 | //if $merged then let's merge all the shortcodes into one list NOT indexed by field. |
317 | - if ( $merged ) { |
|
317 | + if ($merged) { |
|
318 | 318 | $merged_codes = array(); |
319 | - foreach ( $valid_shortcodes as $field => $shortcode ) { |
|
320 | - foreach ( $shortcode as $code => $label ) { |
|
321 | - if ( isset( $merged_codes[ $code ] ) ) { |
|
319 | + foreach ($valid_shortcodes as $field => $shortcode) { |
|
320 | + foreach ($shortcode as $code => $label) { |
|
321 | + if (isset($merged_codes[$code])) { |
|
322 | 322 | continue; |
323 | 323 | } else { |
324 | - $merged_codes[ $code ] = $label; |
|
324 | + $merged_codes[$code] = $label; |
|
325 | 325 | } |
326 | 326 | } |
327 | 327 | } |
@@ -341,10 +341,10 @@ discard block |
||
341 | 341 | * @throws \EE_Error |
342 | 342 | * @return EE_messenger |
343 | 343 | */ |
344 | - public static function messenger_obj( $messenger ) { |
|
344 | + public static function messenger_obj($messenger) { |
|
345 | 345 | /** @type EE_Message_Resource_Manager $Message_Resource_Manager */ |
346 | - $Message_Resource_Manager = EE_Registry::instance()->load_lib( 'Message_Resource_Manager' ); |
|
347 | - return $Message_Resource_Manager->get_messenger( $messenger ); |
|
346 | + $Message_Resource_Manager = EE_Registry::instance()->load_lib('Message_Resource_Manager'); |
|
347 | + return $Message_Resource_Manager->get_messenger($messenger); |
|
348 | 348 | } |
349 | 349 | |
350 | 350 | |
@@ -357,10 +357,10 @@ discard block |
||
357 | 357 | * @throws \EE_Error |
358 | 358 | * @return EE_message_type |
359 | 359 | */ |
360 | - public static function message_type_obj( $message_type ) { |
|
360 | + public static function message_type_obj($message_type) { |
|
361 | 361 | /** @type EE_Message_Resource_Manager $Message_Resource_Manager */ |
362 | - $Message_Resource_Manager = EE_Registry::instance()->load_lib( 'Message_Resource_Manager' ); |
|
363 | - return $Message_Resource_Manager->get_message_type( $message_type ); |
|
362 | + $Message_Resource_Manager = EE_Registry::instance()->load_lib('Message_Resource_Manager'); |
|
363 | + return $Message_Resource_Manager->get_message_type($message_type); |
|
364 | 364 | } |
365 | 365 | |
366 | 366 | |
@@ -374,11 +374,11 @@ discard block |
||
374 | 374 | * @param string $message_type message type to check for. |
375 | 375 | * @return boolean |
376 | 376 | */ |
377 | - public static function is_mt_active( $message_type ) { |
|
377 | + public static function is_mt_active($message_type) { |
|
378 | 378 | /** @type EE_Message_Resource_Manager $Message_Resource_Manager */ |
379 | - $Message_Resource_Manager = EE_Registry::instance()->load_lib( 'Message_Resource_Manager' ); |
|
379 | + $Message_Resource_Manager = EE_Registry::instance()->load_lib('Message_Resource_Manager'); |
|
380 | 380 | $active_mts = $Message_Resource_Manager->list_of_active_message_types(); |
381 | - return in_array( $message_type, $active_mts ); |
|
381 | + return in_array($message_type, $active_mts); |
|
382 | 382 | } |
383 | 383 | |
384 | 384 | |
@@ -391,10 +391,10 @@ discard block |
||
391 | 391 | * @param string $messenger slug for messenger to check. |
392 | 392 | * @return boolean |
393 | 393 | */ |
394 | - public static function is_messenger_active( $messenger ) { |
|
394 | + public static function is_messenger_active($messenger) { |
|
395 | 395 | /** @type EE_Message_Resource_Manager $Message_Resource_Manager */ |
396 | - $Message_Resource_Manager = EE_Registry::instance()->load_lib( 'Message_Resource_Manager' ); |
|
397 | - $active_messenger = $Message_Resource_Manager->get_active_messenger( $messenger ); |
|
396 | + $Message_Resource_Manager = EE_Registry::instance()->load_lib('Message_Resource_Manager'); |
|
397 | + $active_messenger = $Message_Resource_Manager->get_active_messenger($messenger); |
|
398 | 398 | return $active_messenger instanceof EE_messenger ? true : false; |
399 | 399 | } |
400 | 400 | |
@@ -412,11 +412,11 @@ discard block |
||
412 | 412 | public static function get_active_messengers_in_db() { |
413 | 413 | EE_Error::doing_it_wrong( |
414 | 414 | __METHOD__, |
415 | - __( 'Please use EE_Message_Resource_Manager::get_active_messengers_option() instead.', 'event_espresso' ), |
|
415 | + __('Please use EE_Message_Resource_Manager::get_active_messengers_option() instead.', 'event_espresso'), |
|
416 | 416 | '4.9.0' |
417 | 417 | ); |
418 | 418 | /** @var EE_Message_Resource_Manager $Message_Resource_Manager */ |
419 | - $Message_Resource_Manager = EE_Registry::instance()->load_lib( 'Message_Resource_Manager' ); |
|
419 | + $Message_Resource_Manager = EE_Registry::instance()->load_lib('Message_Resource_Manager'); |
|
420 | 420 | return $Message_Resource_Manager->get_active_messengers_option(); |
421 | 421 | } |
422 | 422 | |
@@ -433,15 +433,15 @@ discard block |
||
433 | 433 | * |
434 | 434 | * @return bool FALSE if not updated, TRUE if updated. |
435 | 435 | */ |
436 | - public static function update_active_messengers_in_db( $data_to_save ) { |
|
436 | + public static function update_active_messengers_in_db($data_to_save) { |
|
437 | 437 | EE_Error::doing_it_wrong( |
438 | 438 | __METHOD__, |
439 | - __( 'Please use EE_Message_Resource_Manager::update_active_messengers_option() instead.', 'event_espresso' ), |
|
439 | + __('Please use EE_Message_Resource_Manager::update_active_messengers_option() instead.', 'event_espresso'), |
|
440 | 440 | '4.9.0' |
441 | 441 | ); |
442 | 442 | /** @var EE_Message_Resource_Manager $Message_Resource_Manager */ |
443 | - $Message_Resource_Manager = EE_Registry::instance()->load_lib( 'Message_Resource_Manager' ); |
|
444 | - return $Message_Resource_Manager->update_active_messengers_option( $data_to_save ); |
|
443 | + $Message_Resource_Manager = EE_Registry::instance()->load_lib('Message_Resource_Manager'); |
|
444 | + return $Message_Resource_Manager->update_active_messengers_option($data_to_save); |
|
445 | 445 | } |
446 | 446 | |
447 | 447 | |
@@ -465,34 +465,34 @@ discard block |
||
465 | 465 | $sending_messenger = '' |
466 | 466 | ) { |
467 | 467 | //first determine if the url can be to the EE_Message object. |
468 | - if ( ! $message_type->always_generate() ) { |
|
469 | - return EEH_MSG_Template::generate_browser_trigger( $message ); |
|
468 | + if ( ! $message_type->always_generate()) { |
|
469 | + return EEH_MSG_Template::generate_browser_trigger($message); |
|
470 | 470 | } |
471 | 471 | |
472 | 472 | //if $registration object is not valid then exit early because there's nothing that can be generated. |
473 | - if ( ! $registration instanceof EE_Registration ) { |
|
473 | + if ( ! $registration instanceof EE_Registration) { |
|
474 | 474 | throw new EE_Error( |
475 | - __( 'Incoming value for registration is not a valid EE_Registration object.', 'event_espresso' ) |
|
475 | + __('Incoming value for registration is not a valid EE_Registration object.', 'event_espresso') |
|
476 | 476 | ); |
477 | 477 | } |
478 | 478 | |
479 | 479 | //validate given context |
480 | 480 | $contexts = $message_type->get_contexts(); |
481 | - if ( $message->context() !== '' && ! isset( $contexts[$message->context()] ) ) { |
|
481 | + if ($message->context() !== '' && ! isset($contexts[$message->context()])) { |
|
482 | 482 | throw new EE_Error( |
483 | 483 | sprintf( |
484 | - __( 'The context %s is not a valid context for %s.', 'event_espresso' ), |
|
484 | + __('The context %s is not a valid context for %s.', 'event_espresso'), |
|
485 | 485 | $message->context(), |
486 | - get_class( $message_type ) |
|
486 | + get_class($message_type) |
|
487 | 487 | ) |
488 | 488 | ); |
489 | 489 | } |
490 | 490 | |
491 | 491 | //valid sending messenger but only if sending messenger set. Otherwise generating messenger is used. |
492 | - if ( ! empty( $sending_messenger ) ) { |
|
492 | + if ( ! empty($sending_messenger)) { |
|
493 | 493 | $with_messengers = $message_type->with_messengers(); |
494 | - if ( ! isset( $with_messengers[$message->messenger()] ) |
|
495 | - || ! in_array( $sending_messenger, $with_messengers[$message->messenger()] ) ) { |
|
494 | + if ( ! isset($with_messengers[$message->messenger()]) |
|
495 | + || ! in_array($sending_messenger, $with_messengers[$message->messenger()])) { |
|
496 | 496 | throw new EE_Error( |
497 | 497 | sprintf( |
498 | 498 | __( |
@@ -500,7 +500,7 @@ discard block |
||
500 | 500 | 'event_espresso' |
501 | 501 | ), |
502 | 502 | $sending_messenger, |
503 | - get_class( $message_type ) |
|
503 | + get_class($message_type) |
|
504 | 504 | ) |
505 | 505 | ); |
506 | 506 | } |
@@ -523,14 +523,14 @@ discard block |
||
523 | 523 | * @param EE_Message $message |
524 | 524 | * @return string. |
525 | 525 | */ |
526 | - public static function generate_browser_trigger( EE_Message $message ) { |
|
526 | + public static function generate_browser_trigger(EE_Message $message) { |
|
527 | 527 | $query_args = array( |
528 | 528 | 'ee' => 'msg_browser_trigger', |
529 | 529 | 'token' => $message->MSG_token() |
530 | 530 | ); |
531 | 531 | return apply_filters( |
532 | 532 | 'FHEE__EEH_MSG_Template__generate_browser_trigger', |
533 | - add_query_arg( $query_args, site_url() ), |
|
533 | + add_query_arg($query_args, site_url()), |
|
534 | 534 | $message |
535 | 535 | ); |
536 | 536 | } |
@@ -545,7 +545,7 @@ discard block |
||
545 | 545 | * @param EE_Message $message |
546 | 546 | * @return string |
547 | 547 | */ |
548 | - public static function generate_error_display_trigger( EE_Message $message ) { |
|
548 | + public static function generate_error_display_trigger(EE_Message $message) { |
|
549 | 549 | return apply_filters( |
550 | 550 | 'FHEE__EEH_MSG_Template__generate_error_display_trigger', |
551 | 551 | add_query_arg( |
@@ -595,7 +595,7 @@ discard block |
||
595 | 595 | 'GRP_ID' => $message_template_group, |
596 | 596 | 'id' => $data_id |
597 | 597 | ); |
598 | - $url = add_query_arg( $query_args, get_home_url() ); |
|
598 | + $url = add_query_arg($query_args, get_home_url()); |
|
599 | 599 | |
600 | 600 | //made it here so now we can just get the url and filter it. Filtered globally and by message type. |
601 | 601 | $url = apply_filters( |
@@ -623,9 +623,9 @@ discard block |
||
623 | 623 | * @param string $type What action to return. |
624 | 624 | * @return string |
625 | 625 | */ |
626 | - public static function get_message_action_icon( $type ) { |
|
626 | + public static function get_message_action_icon($type) { |
|
627 | 627 | $action_icons = self::get_message_action_icons(); |
628 | - return isset( $action_icons[ $type ] ) ? $action_icons[ $type ] : ''; |
|
628 | + return isset($action_icons[$type]) ? $action_icons[$type] : ''; |
|
629 | 629 | } |
630 | 630 | |
631 | 631 | |
@@ -637,34 +637,34 @@ discard block |
||
637 | 637 | * @return array |
638 | 638 | */ |
639 | 639 | public static function get_message_action_icons() { |
640 | - return apply_filters( 'FHEE__EEH_MSG_Template__message_action_icons', |
|
640 | + return apply_filters('FHEE__EEH_MSG_Template__message_action_icons', |
|
641 | 641 | array( |
642 | 642 | 'view' => array( |
643 | - 'label' => __( 'View Message', 'event_espresso' ), |
|
643 | + 'label' => __('View Message', 'event_espresso'), |
|
644 | 644 | 'css_class' => 'dashicons dashicons-welcome-view-site', |
645 | 645 | ), |
646 | 646 | 'error' => array( |
647 | - 'label' => __( 'View Error Message', 'event_espresso' ), |
|
647 | + 'label' => __('View Error Message', 'event_espresso'), |
|
648 | 648 | 'css_class' => 'dashicons dashicons-info', |
649 | 649 | ), |
650 | 650 | 'see_notifications_for' => array( |
651 | - 'label' => __( 'View Related Messages', 'event_espresso' ), |
|
651 | + 'label' => __('View Related Messages', 'event_espresso'), |
|
652 | 652 | 'css_class' => 'dashicons dashicons-megaphone', |
653 | 653 | ), |
654 | 654 | 'generate_now' => array( |
655 | - 'label' => __( 'Generate the message now.', 'event_espresso' ), |
|
655 | + 'label' => __('Generate the message now.', 'event_espresso'), |
|
656 | 656 | 'css_class' => 'dashicons dashicons-admin-tools', |
657 | 657 | ), |
658 | 658 | 'send_now' => array( |
659 | - 'label' => __( 'Send Immediately', 'event_espresso' ), |
|
659 | + 'label' => __('Send Immediately', 'event_espresso'), |
|
660 | 660 | 'css_class' => 'dashicons dashicons-controls-forward', |
661 | 661 | ), |
662 | 662 | 'queue_for_resending' => array( |
663 | - 'label' => __( 'Queue for Resending', 'event_espresso' ), |
|
663 | + 'label' => __('Queue for Resending', 'event_espresso'), |
|
664 | 664 | 'css_class' => 'dashicons dashicons-controls-repeat', |
665 | 665 | ), |
666 | 666 | 'view_transaction' => array( |
667 | - 'label' => __( 'View related Transaction', 'event_espresso' ), |
|
667 | + 'label' => __('View related Transaction', 'event_espresso'), |
|
668 | 668 | 'css_class' => 'dashicons dashicons-cart', |
669 | 669 | ) |
670 | 670 | ) |
@@ -683,9 +683,9 @@ discard block |
||
683 | 683 | * |
684 | 684 | * @return string |
685 | 685 | */ |
686 | - public static function get_message_action_url( $type, EE_Message $message = null, $query_params = array() ) { |
|
687 | - $action_urls = self::get_message_action_urls( $message, $query_params ); |
|
688 | - return isset( $action_urls[ $type ] ) ? $action_urls[ $type ] : ''; |
|
686 | + public static function get_message_action_url($type, EE_Message $message = null, $query_params = array()) { |
|
687 | + $action_urls = self::get_message_action_urls($message, $query_params); |
|
688 | + return isset($action_urls[$type]) ? $action_urls[$type] : ''; |
|
689 | 689 | } |
690 | 690 | |
691 | 691 | |
@@ -700,15 +700,15 @@ discard block |
||
700 | 700 | * |
701 | 701 | * @return array |
702 | 702 | */ |
703 | - public static function get_message_action_urls( EE_Message $message = null, $query_params = array() ) { |
|
704 | - EE_Registry::instance()->load_helper( 'URL' ); |
|
703 | + public static function get_message_action_urls(EE_Message $message = null, $query_params = array()) { |
|
704 | + EE_Registry::instance()->load_helper('URL'); |
|
705 | 705 | //if $message is not an instance of EE_Message then let's just do a dummy. |
706 | - $message = empty( $message ) ? EE_Message_Factory::create() : $message; |
|
707 | - $action_urls = apply_filters( |
|
706 | + $message = empty($message) ? EE_Message_Factory::create() : $message; |
|
707 | + $action_urls = apply_filters( |
|
708 | 708 | 'FHEE__EEH_MSG_Template__get_message_action_url', |
709 | 709 | array( |
710 | - 'view' => EEH_MSG_Template::generate_browser_trigger( $message ), |
|
711 | - 'error' => EEH_MSG_Template::generate_error_display_trigger( $message ), |
|
710 | + 'view' => EEH_MSG_Template::generate_browser_trigger($message), |
|
711 | + 'error' => EEH_MSG_Template::generate_error_display_trigger($message), |
|
712 | 712 | 'see_notifications_for' => EEH_URL::add_query_args_and_nonce( |
713 | 713 | array_merge( |
714 | 714 | array( |
@@ -718,7 +718,7 @@ discard block |
||
718 | 718 | ), |
719 | 719 | $query_params |
720 | 720 | ), |
721 | - admin_url( 'admin.php' ) |
|
721 | + admin_url('admin.php') |
|
722 | 722 | ), |
723 | 723 | 'generate_now' => EEH_URL::add_query_args_and_nonce( |
724 | 724 | array( |
@@ -726,7 +726,7 @@ discard block |
||
726 | 726 | 'action' => 'generate_now', |
727 | 727 | 'MSG_ID' => $message->ID() |
728 | 728 | ), |
729 | - admin_url( 'admin.php' ) |
|
729 | + admin_url('admin.php') |
|
730 | 730 | ), |
731 | 731 | 'send_now' => EEH_URL::add_query_args_and_nonce( |
732 | 732 | array( |
@@ -734,7 +734,7 @@ discard block |
||
734 | 734 | 'action' => 'send_now', |
735 | 735 | 'MSG_ID' => $message->ID() |
736 | 736 | ), |
737 | - admin_url( 'admin.php' ) |
|
737 | + admin_url('admin.php') |
|
738 | 738 | ), |
739 | 739 | 'queue_for_resending' => EEH_URL::add_query_args_and_nonce( |
740 | 740 | array( |
@@ -742,7 +742,7 @@ discard block |
||
742 | 742 | 'action' => 'queue_for_resending', |
743 | 743 | 'MSG_ID' => $message->ID() |
744 | 744 | ), |
745 | - admin_url( 'admin.php' ) |
|
745 | + admin_url('admin.php') |
|
746 | 746 | ), |
747 | 747 | ) |
748 | 748 | ); |
@@ -760,7 +760,7 @@ discard block |
||
760 | 760 | 'action' => 'view_transaction', |
761 | 761 | 'TXN_ID' => $message->TXN_ID() |
762 | 762 | ), |
763 | - admin_url( 'admin.php' ) |
|
763 | + admin_url('admin.php') |
|
764 | 764 | ); |
765 | 765 | } else { |
766 | 766 | $action_urls['view_transaction'] = ''; |
@@ -781,26 +781,26 @@ discard block |
||
781 | 781 | * |
782 | 782 | * @return string |
783 | 783 | */ |
784 | - public static function get_message_action_link( $type, EE_Message $message = null, $query_params = array() ) { |
|
785 | - $url = EEH_MSG_Template::get_message_action_url( $type, $message, $query_params ); |
|
786 | - $icon_css = EEH_MSG_Template::get_message_action_icon( $type ); |
|
787 | - $title = isset( $icon_css['label'] ) ? 'title="' . $icon_css['label'] . '"' : ''; |
|
784 | + public static function get_message_action_link($type, EE_Message $message = null, $query_params = array()) { |
|
785 | + $url = EEH_MSG_Template::get_message_action_url($type, $message, $query_params); |
|
786 | + $icon_css = EEH_MSG_Template::get_message_action_icon($type); |
|
787 | + $title = isset($icon_css['label']) ? 'title="'.$icon_css['label'].'"' : ''; |
|
788 | 788 | |
789 | - if ( empty( $url ) || empty( $icon_css ) || ! isset( $icon_css['css_class'] ) ) { |
|
789 | + if (empty($url) || empty($icon_css) || ! isset($icon_css['css_class'])) { |
|
790 | 790 | return ''; |
791 | 791 | } |
792 | 792 | |
793 | 793 | $icon_css['css_class'] .= esc_attr( |
794 | 794 | apply_filters( |
795 | 795 | 'FHEE__EEH_MSG_Template__get_message_action_link__icon_css_class', |
796 | - ' js-ee-message-action-link ee-message-action-link-' . $type, |
|
796 | + ' js-ee-message-action-link ee-message-action-link-'.$type, |
|
797 | 797 | $type, |
798 | 798 | $message, |
799 | 799 | $query_params |
800 | 800 | ) |
801 | 801 | ); |
802 | 802 | |
803 | - return '<a href="' . $url . '"' . $title . '><span class="' . esc_attr( $icon_css['css_class'] ) . '"></span></a>'; |
|
803 | + return '<a href="'.$url.'"'.$title.'><span class="'.esc_attr($icon_css['css_class']).'"></span></a>'; |
|
804 | 804 | |
805 | 805 | } |
806 | 806 | |
@@ -838,9 +838,9 @@ discard block |
||
838 | 838 | * @param $reg_status |
839 | 839 | * @return string |
840 | 840 | */ |
841 | - public static function convert_reg_status_to_message_type( $reg_status ) { |
|
841 | + public static function convert_reg_status_to_message_type($reg_status) { |
|
842 | 842 | $reg_status_array = self::reg_status_to_message_type_array(); |
843 | - return isset( $reg_status_array[$reg_status] ) ? $reg_status_array[$reg_status] : ''; |
|
843 | + return isset($reg_status_array[$reg_status]) ? $reg_status_array[$reg_status] : ''; |
|
844 | 844 | } |
845 | 845 | |
846 | 846 | |
@@ -874,9 +874,9 @@ discard block |
||
874 | 874 | * @param $payment_status |
875 | 875 | * @return string |
876 | 876 | */ |
877 | - public static function convert_payment_status_to_message_type( $payment_status ) { |
|
877 | + public static function convert_payment_status_to_message_type($payment_status) { |
|
878 | 878 | $payment_status_array = self::payment_status_to_message_type_array(); |
879 | - return isset( $payment_status_array[$payment_status] ) ? $payment_status_array[$payment_status] : ''; |
|
879 | + return isset($payment_status_array[$payment_status]) ? $payment_status_array[$payment_status] : ''; |
|
880 | 880 | } |
881 | 881 | |
882 | 882 | |
@@ -887,32 +887,32 @@ discard block |
||
887 | 887 | * |
888 | 888 | * @return EE_Messages_Template_Pack |
889 | 889 | */ |
890 | - public static function get_template_pack( $template_pack_name ) { |
|
891 | - if ( ! self::$_template_pack_collection instanceof EE_Object_Collection ) { |
|
890 | + public static function get_template_pack($template_pack_name) { |
|
891 | + if ( ! self::$_template_pack_collection instanceof EE_Object_Collection) { |
|
892 | 892 | self::$_template_pack_collection = new EE_Messages_Template_Pack_Collection(); |
893 | 893 | } |
894 | 894 | |
895 | 895 | //first see if in collection already |
896 | - $template_pack = self::$_template_pack_collection->get_by_name( $template_pack_name ); |
|
896 | + $template_pack = self::$_template_pack_collection->get_by_name($template_pack_name); |
|
897 | 897 | |
898 | - if ( $template_pack instanceof EE_Messages_Template_Pack ) { |
|
898 | + if ($template_pack instanceof EE_Messages_Template_Pack) { |
|
899 | 899 | return $template_pack; |
900 | 900 | } |
901 | 901 | |
902 | 902 | //nope...let's get it. |
903 | 903 | //not set yet so let's attempt to get it. |
904 | - $pack_class_name = 'EE_Messages_Template_Pack_' . str_replace( |
|
904 | + $pack_class_name = 'EE_Messages_Template_Pack_'.str_replace( |
|
905 | 905 | ' ', |
906 | 906 | '_', |
907 | 907 | ucwords( |
908 | - str_replace( '_', ' ', $template_pack_name ) |
|
908 | + str_replace('_', ' ', $template_pack_name) |
|
909 | 909 | ) |
910 | 910 | ); |
911 | - if ( ! class_exists( $pack_class_name ) && $template_pack_name !== 'default' ) { |
|
912 | - return self::get_template_pack( 'default' ); |
|
911 | + if ( ! class_exists($pack_class_name) && $template_pack_name !== 'default') { |
|
912 | + return self::get_template_pack('default'); |
|
913 | 913 | } else { |
914 | 914 | $template_pack = new $pack_class_name; |
915 | - self::$_template_pack_collection->add( $template_pack ); |
|
915 | + self::$_template_pack_collection->add($template_pack); |
|
916 | 916 | return $template_pack; |
917 | 917 | } |
918 | 918 | } |
@@ -930,26 +930,26 @@ discard block |
||
930 | 930 | */ |
931 | 931 | public static function get_template_pack_collection() { |
932 | 932 | $new_collection = false; |
933 | - if ( ! self::$_template_pack_collection instanceof EE_Messages_Template_Pack_Collection ) { |
|
933 | + if ( ! self::$_template_pack_collection instanceof EE_Messages_Template_Pack_Collection) { |
|
934 | 934 | self::$_template_pack_collection = new EE_Messages_Template_Pack_Collection(); |
935 | 935 | $new_collection = true; |
936 | 936 | } |
937 | 937 | |
938 | 938 | //glob the defaults directory for messages |
939 | - $templates = glob( EE_LIBRARIES . 'messages/defaults/*', GLOB_ONLYDIR ); |
|
940 | - foreach( $templates as $template_path ) { |
|
939 | + $templates = glob(EE_LIBRARIES.'messages/defaults/*', GLOB_ONLYDIR); |
|
940 | + foreach ($templates as $template_path) { |
|
941 | 941 | //grab folder name |
942 | - $template = basename( $template_path ); |
|
942 | + $template = basename($template_path); |
|
943 | 943 | |
944 | - if ( ! $new_collection ) { |
|
944 | + if ( ! $new_collection) { |
|
945 | 945 | //already have it? |
946 | - if ( self::$_template_pack_collection->get_by_name( $template ) instanceof EE_Messages_Template_Pack ) { |
|
946 | + if (self::$_template_pack_collection->get_by_name($template) instanceof EE_Messages_Template_Pack) { |
|
947 | 947 | continue; |
948 | 948 | } |
949 | 949 | } |
950 | 950 | |
951 | 951 | //setup classname. |
952 | - $template_pack_class_name = 'EE_Messages_Template_Pack_' . str_replace( |
|
952 | + $template_pack_class_name = 'EE_Messages_Template_Pack_'.str_replace( |
|
953 | 953 | ' ', |
954 | 954 | '_', |
955 | 955 | ucwords( |
@@ -960,20 +960,20 @@ discard block |
||
960 | 960 | ) |
961 | 961 | ) |
962 | 962 | ); |
963 | - if ( ! class_exists( $template_pack_class_name ) ) { |
|
963 | + if ( ! class_exists($template_pack_class_name)) { |
|
964 | 964 | continue; |
965 | 965 | } |
966 | - self::$_template_pack_collection->add( new $template_pack_class_name ); |
|
966 | + self::$_template_pack_collection->add(new $template_pack_class_name); |
|
967 | 967 | } |
968 | 968 | |
969 | 969 | /** |
970 | 970 | * Filter for plugins to add in any additional template packs |
971 | 971 | * Note the filter name here is for backward compat, this used to be found in EED_Messages. |
972 | 972 | */ |
973 | - $additional_template_packs = apply_filters( 'FHEE__EED_Messages__get_template_packs__template_packs', array() ); |
|
974 | - foreach ( (array) $additional_template_packs as $template_pack ) { |
|
975 | - if ( ! self::$_template_pack_collection->contains($template_pack ) ) { |
|
976 | - self::$_template_pack_collection->add( $template_pack ); |
|
973 | + $additional_template_packs = apply_filters('FHEE__EED_Messages__get_template_packs__template_packs', array()); |
|
974 | + foreach ((array) $additional_template_packs as $template_pack) { |
|
975 | + if ( ! self::$_template_pack_collection->contains($template_pack)) { |
|
976 | + self::$_template_pack_collection->add($template_pack); |
|
977 | 977 | } |
978 | 978 | } |
979 | 979 | return self::$_template_pack_collection; |
@@ -991,16 +991,16 @@ discard block |
||
991 | 991 | * @return array |
992 | 992 | * @throws \EE_Error |
993 | 993 | */ |
994 | - public static function create_new_templates( $messenger_name, $message_type_name, $GRP_ID = 0, $global = false ) { |
|
994 | + public static function create_new_templates($messenger_name, $message_type_name, $GRP_ID = 0, $global = false) { |
|
995 | 995 | /** @type EE_Message_Resource_Manager $Message_Resource_Manager */ |
996 | - $Message_Resource_Manager = EE_Registry::instance()->load_lib( 'Message_Resource_Manager' ); |
|
997 | - $messenger = $Message_Resource_Manager->valid_messenger( $messenger_name ); |
|
998 | - $message_type = $Message_Resource_Manager->valid_message_type( $message_type_name ); |
|
999 | - if ( ! EEH_MSG_Template::message_type_has_active_templates_for_messenger( $messenger, $message_type, $global ) ) { |
|
996 | + $Message_Resource_Manager = EE_Registry::instance()->load_lib('Message_Resource_Manager'); |
|
997 | + $messenger = $Message_Resource_Manager->valid_messenger($messenger_name); |
|
998 | + $message_type = $Message_Resource_Manager->valid_message_type($message_type_name); |
|
999 | + if ( ! EEH_MSG_Template::message_type_has_active_templates_for_messenger($messenger, $message_type, $global)) { |
|
1000 | 1000 | return array(); |
1001 | 1001 | } |
1002 | 1002 | //whew made it this far! Okay, let's go ahead and create the templates then |
1003 | - return EEH_MSG_Template::_create_new_templates( $messenger, $message_type, $GRP_ID, $global ); |
|
1003 | + return EEH_MSG_Template::_create_new_templates($messenger, $message_type, $GRP_ID, $global); |
|
1004 | 1004 | } |
1005 | 1005 | |
1006 | 1006 | |
@@ -1012,15 +1012,15 @@ discard block |
||
1012 | 1012 | * @param $global |
1013 | 1013 | * @return array|mixed |
1014 | 1014 | */ |
1015 | - protected static function _create_new_templates( EE_messenger $messenger, EE_message_type $message_type, $GRP_ID, $global ) { |
|
1015 | + protected static function _create_new_templates(EE_messenger $messenger, EE_message_type $message_type, $GRP_ID, $global) { |
|
1016 | 1016 | //if we're creating a custom template then we don't need to use the defaults class |
1017 | - if ( ! $global ) { |
|
1018 | - return EEH_MSG_Template::_create_custom_template_group( $messenger, $message_type, $GRP_ID ); |
|
1017 | + if ( ! $global) { |
|
1018 | + return EEH_MSG_Template::_create_custom_template_group($messenger, $message_type, $GRP_ID); |
|
1019 | 1019 | } |
1020 | 1020 | /** @type EE_Messages_Template_Defaults $Message_Template_Defaults */ |
1021 | 1021 | $Message_Template_Defaults = EE_Registry::factory( |
1022 | 1022 | 'EE_Messages_Template_Defaults', |
1023 | - array( $messenger, $message_type, $GRP_ID ) |
|
1023 | + array($messenger, $message_type, $GRP_ID) |
|
1024 | 1024 | ); |
1025 | 1025 | //generate templates |
1026 | 1026 | $success = $Message_Template_Defaults->create_new_templates(); |
@@ -1028,10 +1028,10 @@ discard block |
||
1028 | 1028 | //if creating the template failed. Then we should deactivate the related message_type for the messenger because |
1029 | 1029 | //its not active if it doesn't have a template. Note this is only happening for GLOBAL template creation |
1030 | 1030 | //attempts. |
1031 | - if ( ! $success ) { |
|
1031 | + if ( ! $success) { |
|
1032 | 1032 | /** @var EE_Message_Resource_Manager $message_resource_manager */ |
1033 | - $message_resource_manager = EE_Registry::instance()->load_lib( 'Message_Resource_Manager' ); |
|
1034 | - $message_resource_manager->deactivate_message_type_for_messenger( $message_type->name, $messenger->name ); |
|
1033 | + $message_resource_manager = EE_Registry::instance()->load_lib('Message_Resource_Manager'); |
|
1034 | + $message_resource_manager->deactivate_message_type_for_messenger($message_type->name, $messenger->name); |
|
1035 | 1035 | } |
1036 | 1036 | |
1037 | 1037 | /** |
@@ -1059,11 +1059,11 @@ discard block |
||
1059 | 1059 | * ) |
1060 | 1060 | * @access private |
1061 | 1061 | */ |
1062 | - private static function _create_custom_template_group( EE_messenger $messenger, EE_message_type $message_type, $GRP_ID ) { |
|
1062 | + private static function _create_custom_template_group(EE_messenger $messenger, EE_message_type $message_type, $GRP_ID) { |
|
1063 | 1063 | //defaults |
1064 | - $success = array( 'GRP_ID' => null, 'MTP_context' => '' ); |
|
1064 | + $success = array('GRP_ID' => null, 'MTP_context' => ''); |
|
1065 | 1065 | //get the template group to use as a template from the db. If $GRP_ID is empty then we'll assume the base will be the global template matching the messenger and message type. |
1066 | - $Message_Template_Group = empty( $GRP_ID ) |
|
1066 | + $Message_Template_Group = empty($GRP_ID) |
|
1067 | 1067 | ? EEM_Message_Template_Group::instance()->get_one( |
1068 | 1068 | array( |
1069 | 1069 | array( |
@@ -1073,9 +1073,9 @@ discard block |
||
1073 | 1073 | ) |
1074 | 1074 | ) |
1075 | 1075 | ) |
1076 | - : EEM_Message_Template_Group::instance()->get_one_by_ID( $GRP_ID ); |
|
1076 | + : EEM_Message_Template_Group::instance()->get_one_by_ID($GRP_ID); |
|
1077 | 1077 | //if we don't have a mtg at this point then we need to bail. |
1078 | - if ( ! $Message_Template_Group instanceof EE_Message_Template_Group ) { |
|
1078 | + if ( ! $Message_Template_Group instanceof EE_Message_Template_Group) { |
|
1079 | 1079 | EE_Error::add_error( |
1080 | 1080 | sprintf( |
1081 | 1081 | __( |
@@ -1094,42 +1094,42 @@ discard block |
||
1094 | 1094 | $message_templates = $Message_Template_Group->message_templates(); |
1095 | 1095 | //now we have what we need to setup the new template |
1096 | 1096 | $new_mtg = clone $Message_Template_Group; |
1097 | - $new_mtg->set( 'GRP_ID', 0 ); |
|
1098 | - $new_mtg->set( 'MTP_is_global', false ); |
|
1099 | - $template_name = defined( 'DOING_AJAX' ) && ! empty( $_POST[ 'templateName' ] ) |
|
1100 | - ? $_POST[ 'templateName' ] |
|
1097 | + $new_mtg->set('GRP_ID', 0); |
|
1098 | + $new_mtg->set('MTP_is_global', false); |
|
1099 | + $template_name = defined('DOING_AJAX') && ! empty($_POST['templateName']) |
|
1100 | + ? $_POST['templateName'] |
|
1101 | 1101 | : __( |
1102 | 1102 | 'New Custom Template', |
1103 | 1103 | 'event_espresso' |
1104 | 1104 | ); |
1105 | - $template_description = defined( "DOING_AJAX" ) && ! empty( $_POST[ 'templateDescription' ] ) |
|
1106 | - ? $_POST[ 'templateDescription' ] |
|
1105 | + $template_description = defined("DOING_AJAX") && ! empty($_POST['templateDescription']) |
|
1106 | + ? $_POST['templateDescription'] |
|
1107 | 1107 | : sprintf( |
1108 | 1108 | __( |
1109 | 1109 | 'This is a custom template that was created for the %s messenger and %s message type.', |
1110 | 1110 | 'event_espresso' |
1111 | 1111 | ), |
1112 | - $new_mtg->messenger_obj()->label[ 'singular' ], |
|
1113 | - $new_mtg->message_type_obj()->label[ 'singular' ] |
|
1112 | + $new_mtg->messenger_obj()->label['singular'], |
|
1113 | + $new_mtg->message_type_obj()->label['singular'] |
|
1114 | 1114 | ); |
1115 | - $new_mtg->set( 'MTP_name', $template_name ); |
|
1116 | - $new_mtg->set( 'MTP_description', $template_description ); |
|
1115 | + $new_mtg->set('MTP_name', $template_name); |
|
1116 | + $new_mtg->set('MTP_description', $template_description); |
|
1117 | 1117 | //remove ALL relations on this template group so they don't get saved! |
1118 | - $new_mtg->_remove_relations( 'Message_Template' ); |
|
1118 | + $new_mtg->_remove_relations('Message_Template'); |
|
1119 | 1119 | $new_mtg->save(); |
1120 | - $success[ 'GRP_ID' ] = $new_mtg->ID(); |
|
1121 | - $success[ 'template_name' ] = $template_name; |
|
1120 | + $success['GRP_ID'] = $new_mtg->ID(); |
|
1121 | + $success['template_name'] = $template_name; |
|
1122 | 1122 | //add new message templates and add relation to. |
1123 | - foreach ( $message_templates as $message_template ) { |
|
1124 | - if ( ! $message_template instanceof EE_Message_Template ) { |
|
1123 | + foreach ($message_templates as $message_template) { |
|
1124 | + if ( ! $message_template instanceof EE_Message_Template) { |
|
1125 | 1125 | continue; |
1126 | 1126 | } |
1127 | 1127 | $new_message_template = clone $message_template; |
1128 | - $new_message_template->set( 'MTP_ID', 0 ); |
|
1129 | - $new_message_template->set( 'GRP_ID', $new_mtg->ID() ); //relation |
|
1128 | + $new_message_template->set('MTP_ID', 0); |
|
1129 | + $new_message_template->set('GRP_ID', $new_mtg->ID()); //relation |
|
1130 | 1130 | $new_message_template->save(); |
1131 | - if ( empty( $success[ 'MTP_context' ] ) ) { |
|
1132 | - $success[ 'MTP_context' ] = $new_message_template->get( 'MTP_context' ); |
|
1131 | + if (empty($success['MTP_context'])) { |
|
1132 | + $success['MTP_context'] = $new_message_template->get('MTP_context'); |
|
1133 | 1133 | } |
1134 | 1134 | } |
1135 | 1135 | return $success; |
@@ -1151,7 +1151,7 @@ discard block |
||
1151 | 1151 | $global = false |
1152 | 1152 | ) { |
1153 | 1153 | //is given message_type valid for given messenger (if this is not a global save) |
1154 | - if ( $global ) { |
|
1154 | + if ($global) { |
|
1155 | 1155 | return true; |
1156 | 1156 | } |
1157 | 1157 | $active_templates = EEM_Message_Template_Group::instance()->count( |
@@ -1163,7 +1163,7 @@ discard block |
||
1163 | 1163 | ) |
1164 | 1164 | ) |
1165 | 1165 | ); |
1166 | - if ( $active_templates > 0 ) { |
|
1166 | + if ($active_templates > 0) { |
|
1167 | 1167 | return true; |
1168 | 1168 | } |
1169 | 1169 | EE_Error::add_error( |
@@ -1192,24 +1192,24 @@ discard block |
||
1192 | 1192 | * @param string $message_type_name name of EE_message_type |
1193 | 1193 | * @return array |
1194 | 1194 | */ |
1195 | - public static function get_fields( $messenger_name, $message_type_name ) { |
|
1195 | + public static function get_fields($messenger_name, $message_type_name) { |
|
1196 | 1196 | $template_fields = array(); |
1197 | 1197 | /** @type EE_Message_Resource_Manager $Message_Resource_Manager */ |
1198 | - $Message_Resource_Manager = EE_Registry::instance()->load_lib( 'Message_Resource_Manager' ); |
|
1199 | - $messenger = $Message_Resource_Manager->valid_messenger( $messenger_name ); |
|
1200 | - $message_type = $Message_Resource_Manager->valid_message_type( $message_type_name ); |
|
1201 | - if ( ! EEH_MSG_Template::message_type_has_active_templates_for_messenger( $messenger, $message_type ) ) { |
|
1198 | + $Message_Resource_Manager = EE_Registry::instance()->load_lib('Message_Resource_Manager'); |
|
1199 | + $messenger = $Message_Resource_Manager->valid_messenger($messenger_name); |
|
1200 | + $message_type = $Message_Resource_Manager->valid_message_type($message_type_name); |
|
1201 | + if ( ! EEH_MSG_Template::message_type_has_active_templates_for_messenger($messenger, $message_type)) { |
|
1202 | 1202 | return array(); |
1203 | 1203 | } |
1204 | 1204 | //okay now let's assemble an array with the messenger template fields added to the message_type contexts. |
1205 | - foreach ( $message_type->get_contexts() as $context => $details ) { |
|
1206 | - foreach ( $messenger->get_template_fields() as $field => $value ) { |
|
1207 | - $template_fields[ $context ][ $field ] = $value; |
|
1205 | + foreach ($message_type->get_contexts() as $context => $details) { |
|
1206 | + foreach ($messenger->get_template_fields() as $field => $value) { |
|
1207 | + $template_fields[$context][$field] = $value; |
|
1208 | 1208 | } |
1209 | 1209 | } |
1210 | - if ( empty( $template_fields ) ) { |
|
1210 | + if (empty($template_fields)) { |
|
1211 | 1211 | EE_Error::add_error( |
1212 | - __( 'Something went wrong and we couldn\'t get any templates assembled', 'event_espresso' ), |
|
1212 | + __('Something went wrong and we couldn\'t get any templates assembled', 'event_espresso'), |
|
1213 | 1213 | __FILE__, |
1214 | 1214 | __FUNCTION__, |
1215 | 1215 | __LINE__ |
@@ -1,4 +1,4 @@ discard block |
||
1 | -<?php if ( ! defined( 'EVENT_ESPRESSO_VERSION')) {exit('No direct script access allowed');} |
|
1 | +<?php if ( ! defined('EVENT_ESPRESSO_VERSION')) {exit('No direct script access allowed'); } |
|
2 | 2 | /** |
3 | 3 | * EEH_Activation Helper |
4 | 4 | * |
@@ -54,8 +54,8 @@ discard block |
||
54 | 54 | * @return \EventEspresso\core\services\database\TableAnalysis |
55 | 55 | */ |
56 | 56 | public static function getTableAnalysis() { |
57 | - if ( ! self::$table_analysis instanceof \EventEspresso\core\services\database\TableAnalysis ) { |
|
58 | - self::$table_analysis = EE_Registry::instance()->create( 'TableAnalysis', array(), true ); |
|
57 | + if ( ! self::$table_analysis instanceof \EventEspresso\core\services\database\TableAnalysis) { |
|
58 | + self::$table_analysis = EE_Registry::instance()->create('TableAnalysis', array(), true); |
|
59 | 59 | } |
60 | 60 | return self::$table_analysis; |
61 | 61 | } |
@@ -66,8 +66,8 @@ discard block |
||
66 | 66 | * @return \EventEspresso\core\services\database\TableManager |
67 | 67 | */ |
68 | 68 | public static function getTableManager() { |
69 | - if ( ! self::$table_manager instanceof \EventEspresso\core\services\database\TableManager ) { |
|
70 | - self::$table_manager = EE_Registry::instance()->create( 'TableManager', array(), true ); |
|
69 | + if ( ! self::$table_manager instanceof \EventEspresso\core\services\database\TableManager) { |
|
70 | + self::$table_manager = EE_Registry::instance()->create('TableManager', array(), true); |
|
71 | 71 | } |
72 | 72 | return self::$table_manager; |
73 | 73 | } |
@@ -82,8 +82,8 @@ discard block |
||
82 | 82 | * @param $table_name |
83 | 83 | * @return string |
84 | 84 | */ |
85 | - public static function ensure_table_name_has_prefix( $table_name ) { |
|
86 | - return \EEH_Activation::getTableAnalysis()->ensureTableNameHasPrefix( $table_name ); |
|
85 | + public static function ensure_table_name_has_prefix($table_name) { |
|
86 | + return \EEH_Activation::getTableAnalysis()->ensureTableNameHasPrefix($table_name); |
|
87 | 87 | } |
88 | 88 | |
89 | 89 | |
@@ -111,7 +111,7 @@ discard block |
||
111 | 111 | * @return boolean success, whether the database and folders are setup properly |
112 | 112 | * @throws \EE_Error |
113 | 113 | */ |
114 | - public static function initialize_db_and_folders(){ |
|
114 | + public static function initialize_db_and_folders() { |
|
115 | 115 | $good_filesystem = EEH_Activation::create_upload_directories(); |
116 | 116 | $good_db = EEH_Activation::create_database_tables(); |
117 | 117 | return $good_filesystem && $good_db; |
@@ -127,9 +127,9 @@ discard block |
||
127 | 127 | * |
128 | 128 | * @throws \EE_Error |
129 | 129 | */ |
130 | - public static function initialize_db_content(){ |
|
130 | + public static function initialize_db_content() { |
|
131 | 131 | //let's avoid doing all this logic repeatedly, especially when addons are requesting it |
132 | - if( EEH_Activation::$_initialized_db_content_already_in_this_request ) { |
|
132 | + if (EEH_Activation::$_initialized_db_content_already_in_this_request) { |
|
133 | 133 | return; |
134 | 134 | } |
135 | 135 | EEH_Activation::$_initialized_db_content_already_in_this_request = true; |
@@ -146,9 +146,9 @@ discard block |
||
146 | 146 | EEH_Activation::remove_cron_tasks(); |
147 | 147 | EEH_Activation::create_cron_tasks(); |
148 | 148 | // remove all TXN locks since that is being done via extra meta now |
149 | - delete_option( 'ee_locked_transactions' ); |
|
149 | + delete_option('ee_locked_transactions'); |
|
150 | 150 | //also, check for CAF default db content |
151 | - do_action( 'AHEE__EEH_Activation__initialize_db_content' ); |
|
151 | + do_action('AHEE__EEH_Activation__initialize_db_content'); |
|
152 | 152 | //also: EEM_Gateways::load_all_gateways() outputs a lot of success messages |
153 | 153 | //which users really won't care about on initial activation |
154 | 154 | EE_Error::overwrite_success(); |
@@ -168,7 +168,7 @@ discard block |
||
168 | 168 | * @return array |
169 | 169 | * @throws \EE_Error |
170 | 170 | */ |
171 | - public static function get_cron_tasks( $which_to_include ) { |
|
171 | + public static function get_cron_tasks($which_to_include) { |
|
172 | 172 | $cron_tasks = apply_filters( |
173 | 173 | 'FHEE__EEH_Activation__get_cron_tasks', |
174 | 174 | array( |
@@ -177,16 +177,16 @@ discard block |
||
177 | 177 | 'AHEE__EE_Cron_Tasks__update_transaction_with_payment' => EEH_Activation::cron_task_no_longer_in_use, //there may have been a bug which prevented from these cron tasks from getting unscheduled, so we might want to remove these for a few updates |
178 | 178 | ) |
179 | 179 | ); |
180 | - if ( $which_to_include === 'old' ) { |
|
180 | + if ($which_to_include === 'old') { |
|
181 | 181 | $cron_tasks = array_filter( |
182 | 182 | $cron_tasks, |
183 | - function ( $value ) { |
|
183 | + function($value) { |
|
184 | 184 | return $value === EEH_Activation::cron_task_no_longer_in_use; |
185 | 185 | } |
186 | 186 | ); |
187 | - } elseif ( $which_to_include === 'current' ) { |
|
188 | - $cron_tasks = array_filter( $cron_tasks ); |
|
189 | - } elseif ( WP_DEBUG && $which_to_include !== 'all' ) { |
|
187 | + } elseif ($which_to_include === 'current') { |
|
188 | + $cron_tasks = array_filter($cron_tasks); |
|
189 | + } elseif (WP_DEBUG && $which_to_include !== 'all') { |
|
190 | 190 | throw new EE_Error( |
191 | 191 | sprintf( |
192 | 192 | __( |
@@ -209,9 +209,9 @@ discard block |
||
209 | 209 | */ |
210 | 210 | public static function create_cron_tasks() { |
211 | 211 | |
212 | - foreach( EEH_Activation::get_cron_tasks( 'current' ) as $hook_name => $frequency ) { |
|
213 | - if( ! wp_next_scheduled( $hook_name ) ) { |
|
214 | - wp_schedule_event( time(), $frequency, $hook_name ); |
|
212 | + foreach (EEH_Activation::get_cron_tasks('current') as $hook_name => $frequency) { |
|
213 | + if ( ! wp_next_scheduled($hook_name)) { |
|
214 | + wp_schedule_event(time(), $frequency, $hook_name); |
|
215 | 215 | } |
216 | 216 | } |
217 | 217 | |
@@ -225,10 +225,10 @@ discard block |
||
225 | 225 | * @param boolean $remove_all whether to only remove the old ones, or remove absolutely ALL the EE ones |
226 | 226 | * @throws \EE_Error |
227 | 227 | */ |
228 | - public static function remove_cron_tasks( $remove_all = true ) { |
|
228 | + public static function remove_cron_tasks($remove_all = true) { |
|
229 | 229 | $cron_tasks_to_remove = $remove_all ? 'all' : 'old'; |
230 | 230 | $crons = _get_cron_array(); |
231 | - $crons = is_array( $crons ) ? $crons : array(); |
|
231 | + $crons = is_array($crons) ? $crons : array(); |
|
232 | 232 | /* reminder of what $crons look like: |
233 | 233 | * Top-level keys are timestamps, and their values are arrays. |
234 | 234 | * The 2nd level arrays have keys with each of the cron task hook names to run at that time |
@@ -246,23 +246,23 @@ discard block |
||
246 | 246 | * ... |
247 | 247 | * ... |
248 | 248 | */ |
249 | - $ee_cron_tasks_to_remove = EEH_Activation::get_cron_tasks( $cron_tasks_to_remove ); |
|
250 | - foreach ( $crons as $timestamp => $hooks_to_fire_at_time ) { |
|
251 | - if ( is_array( $hooks_to_fire_at_time ) ) { |
|
252 | - foreach ( $hooks_to_fire_at_time as $hook_name => $hook_actions ) { |
|
253 | - if ( isset( $ee_cron_tasks_to_remove[ $hook_name ] ) |
|
254 | - && is_array( $ee_cron_tasks_to_remove[ $hook_name ] ) |
|
249 | + $ee_cron_tasks_to_remove = EEH_Activation::get_cron_tasks($cron_tasks_to_remove); |
|
250 | + foreach ($crons as $timestamp => $hooks_to_fire_at_time) { |
|
251 | + if (is_array($hooks_to_fire_at_time)) { |
|
252 | + foreach ($hooks_to_fire_at_time as $hook_name => $hook_actions) { |
|
253 | + if (isset($ee_cron_tasks_to_remove[$hook_name]) |
|
254 | + && is_array($ee_cron_tasks_to_remove[$hook_name]) |
|
255 | 255 | ) { |
256 | - unset( $crons[ $timestamp ][ $hook_name ] ); |
|
256 | + unset($crons[$timestamp][$hook_name]); |
|
257 | 257 | } |
258 | 258 | } |
259 | 259 | //also take care of any empty cron timestamps. |
260 | - if ( empty( $hooks_to_fire_at_time ) ) { |
|
261 | - unset( $crons[ $timestamp ] ); |
|
260 | + if (empty($hooks_to_fire_at_time)) { |
|
261 | + unset($crons[$timestamp]); |
|
262 | 262 | } |
263 | 263 | } |
264 | 264 | } |
265 | - _set_cron_array( $crons ); |
|
265 | + _set_cron_array($crons); |
|
266 | 266 | } |
267 | 267 | |
268 | 268 | |
@@ -277,7 +277,7 @@ discard block |
||
277 | 277 | */ |
278 | 278 | public static function CPT_initialization() { |
279 | 279 | // register Custom Post Types |
280 | - EE_Registry::instance()->load_core( 'Register_CPTs' ); |
|
280 | + EE_Registry::instance()->load_core('Register_CPTs'); |
|
281 | 281 | flush_rewrite_rules(); |
282 | 282 | } |
283 | 283 | |
@@ -295,11 +295,11 @@ discard block |
||
295 | 295 | * @return void |
296 | 296 | */ |
297 | 297 | public static function reset_and_update_config() { |
298 | - do_action( 'AHEE__EE_Config___load_core_config__start', array( 'EEH_Activation', 'load_calendar_config' ) ); |
|
299 | - add_filter( 'FHEE__EE_Config___load_core_config__config_settings', array( 'EEH_Activation', 'migrate_old_config_data' ), 10, 3 ); |
|
298 | + do_action('AHEE__EE_Config___load_core_config__start', array('EEH_Activation', 'load_calendar_config')); |
|
299 | + add_filter('FHEE__EE_Config___load_core_config__config_settings', array('EEH_Activation', 'migrate_old_config_data'), 10, 3); |
|
300 | 300 | //EE_Config::reset(); |
301 | - if ( ! EE_Config::logging_enabled() ) { |
|
302 | - delete_option( EE_Config::LOG_NAME ); |
|
301 | + if ( ! EE_Config::logging_enabled()) { |
|
302 | + delete_option(EE_Config::LOG_NAME); |
|
303 | 303 | } |
304 | 304 | } |
305 | 305 | |
@@ -312,28 +312,28 @@ discard block |
||
312 | 312 | */ |
313 | 313 | public static function load_calendar_config() { |
314 | 314 | // grab array of all plugin folders and loop thru it |
315 | - $plugins = glob( WP_PLUGIN_DIR . DS . '*', GLOB_ONLYDIR ); |
|
316 | - if ( empty( $plugins ) ) { |
|
315 | + $plugins = glob(WP_PLUGIN_DIR.DS.'*', GLOB_ONLYDIR); |
|
316 | + if (empty($plugins)) { |
|
317 | 317 | return; |
318 | 318 | } |
319 | - foreach ( $plugins as $plugin_path ) { |
|
319 | + foreach ($plugins as $plugin_path) { |
|
320 | 320 | // grab plugin folder name from path |
321 | - $plugin = basename( $plugin_path ); |
|
321 | + $plugin = basename($plugin_path); |
|
322 | 322 | // drill down to Espresso plugins |
323 | 323 | // then to calendar related plugins |
324 | 324 | if ( |
325 | - strpos( $plugin, 'espresso' ) !== FALSE |
|
326 | - || strpos( $plugin, 'Espresso' ) !== FALSE |
|
327 | - || strpos( $plugin, 'ee4' ) !== FALSE |
|
328 | - || strpos( $plugin, 'EE4' ) !== FALSE |
|
329 | - || strpos( $plugin, 'calendar' ) !== false |
|
325 | + strpos($plugin, 'espresso') !== FALSE |
|
326 | + || strpos($plugin, 'Espresso') !== FALSE |
|
327 | + || strpos($plugin, 'ee4') !== FALSE |
|
328 | + || strpos($plugin, 'EE4') !== FALSE |
|
329 | + || strpos($plugin, 'calendar') !== false |
|
330 | 330 | ) { |
331 | 331 | // this is what we are looking for |
332 | - $calendar_config = $plugin_path . DS . 'EE_Calendar_Config.php'; |
|
332 | + $calendar_config = $plugin_path.DS.'EE_Calendar_Config.php'; |
|
333 | 333 | // does it exist in this folder ? |
334 | - if ( is_readable( $calendar_config )) { |
|
334 | + if (is_readable($calendar_config)) { |
|
335 | 335 | // YEAH! let's load it |
336 | - require_once( $calendar_config ); |
|
336 | + require_once($calendar_config); |
|
337 | 337 | } |
338 | 338 | } |
339 | 339 | } |
@@ -349,21 +349,21 @@ discard block |
||
349 | 349 | * @param \EE_Config $EE_Config |
350 | 350 | * @return \stdClass |
351 | 351 | */ |
352 | - public static function migrate_old_config_data( $settings = array(), $config = '', EE_Config $EE_Config ) { |
|
353 | - $convert_from_array = array( 'addons' ); |
|
352 | + public static function migrate_old_config_data($settings = array(), $config = '', EE_Config $EE_Config) { |
|
353 | + $convert_from_array = array('addons'); |
|
354 | 354 | // in case old settings were saved as an array |
355 | - if ( is_array( $settings ) && in_array( $config, $convert_from_array )) { |
|
355 | + if (is_array($settings) && in_array($config, $convert_from_array)) { |
|
356 | 356 | // convert existing settings to an object |
357 | 357 | $config_array = $settings; |
358 | 358 | $settings = new stdClass(); |
359 | - foreach ( $config_array as $key => $value ){ |
|
360 | - if ( $key === 'calendar' && class_exists( 'EE_Calendar_Config' )) { |
|
361 | - $EE_Config->set_config( 'addons', 'EE_Calendar', 'EE_Calendar_Config', $value ); |
|
359 | + foreach ($config_array as $key => $value) { |
|
360 | + if ($key === 'calendar' && class_exists('EE_Calendar_Config')) { |
|
361 | + $EE_Config->set_config('addons', 'EE_Calendar', 'EE_Calendar_Config', $value); |
|
362 | 362 | } else { |
363 | 363 | $settings->{$key} = $value; |
364 | 364 | } |
365 | 365 | } |
366 | - add_filter( 'FHEE__EE_Config___load_core_config__update_espresso_config', '__return_true' ); |
|
366 | + add_filter('FHEE__EE_Config___load_core_config__update_espresso_config', '__return_true'); |
|
367 | 367 | } |
368 | 368 | return $settings; |
369 | 369 | } |
@@ -379,8 +379,8 @@ discard block |
||
379 | 379 | */ |
380 | 380 | public static function deactivate_event_espresso() { |
381 | 381 | // check permissions |
382 | - if ( current_user_can( 'activate_plugins' )) { |
|
383 | - deactivate_plugins( EE_PLUGIN_BASENAME, TRUE ); |
|
382 | + if (current_user_can('activate_plugins')) { |
|
383 | + deactivate_plugins(EE_PLUGIN_BASENAME, TRUE); |
|
384 | 384 | } |
385 | 385 | } |
386 | 386 | |
@@ -402,25 +402,25 @@ discard block |
||
402 | 402 | $critical_pages = array( |
403 | 403 | array( |
404 | 404 | 'id' =>'reg_page_id', |
405 | - 'name' => __( 'Registration Checkout', 'event_espresso' ), |
|
405 | + 'name' => __('Registration Checkout', 'event_espresso'), |
|
406 | 406 | 'post' => NULL, |
407 | 407 | 'code' => 'ESPRESSO_CHECKOUT' |
408 | 408 | ), |
409 | 409 | array( |
410 | 410 | 'id' => 'txn_page_id', |
411 | - 'name' => __( 'Transactions', 'event_espresso' ), |
|
411 | + 'name' => __('Transactions', 'event_espresso'), |
|
412 | 412 | 'post' => NULL, |
413 | 413 | 'code' => 'ESPRESSO_TXN_PAGE' |
414 | 414 | ), |
415 | 415 | array( |
416 | 416 | 'id' => 'thank_you_page_id', |
417 | - 'name' => __( 'Thank You', 'event_espresso' ), |
|
417 | + 'name' => __('Thank You', 'event_espresso'), |
|
418 | 418 | 'post' => NULL, |
419 | 419 | 'code' => 'ESPRESSO_THANK_YOU' |
420 | 420 | ), |
421 | 421 | array( |
422 | 422 | 'id' => 'cancel_page_id', |
423 | - 'name' => __( 'Registration Cancelled', 'event_espresso' ), |
|
423 | + 'name' => __('Registration Cancelled', 'event_espresso'), |
|
424 | 424 | 'post' => NULL, |
425 | 425 | 'code' => 'ESPRESSO_CANCELLED' |
426 | 426 | ), |
@@ -428,62 +428,62 @@ discard block |
||
428 | 428 | |
429 | 429 | $EE_Core_Config = EE_Registry::instance()->CFG->core; |
430 | 430 | |
431 | - foreach ( $critical_pages as $critical_page ) { |
|
431 | + foreach ($critical_pages as $critical_page) { |
|
432 | 432 | // is critical page ID set in config ? |
433 | - if ( $EE_Core_Config->{$critical_page[ 'id' ]} !== FALSE ) { |
|
433 | + if ($EE_Core_Config->{$critical_page['id']} !== FALSE) { |
|
434 | 434 | // attempt to find post by ID |
435 | - $critical_page['post'] = get_post( $EE_Core_Config->{$critical_page[ 'id' ]} ); |
|
435 | + $critical_page['post'] = get_post($EE_Core_Config->{$critical_page['id']} ); |
|
436 | 436 | } |
437 | 437 | // no dice? |
438 | - if ( $critical_page['post'] === null ) { |
|
438 | + if ($critical_page['post'] === null) { |
|
439 | 439 | // attempt to find post by title |
440 | - $critical_page['post'] = self::get_page_by_ee_shortcode( $critical_page['code'] ); |
|
440 | + $critical_page['post'] = self::get_page_by_ee_shortcode($critical_page['code']); |
|
441 | 441 | // still nothing? |
442 | - if ( $critical_page['post'] === null ) { |
|
443 | - $critical_page = EEH_Activation::create_critical_page( $critical_page ); |
|
442 | + if ($critical_page['post'] === null) { |
|
443 | + $critical_page = EEH_Activation::create_critical_page($critical_page); |
|
444 | 444 | // REALLY? Still nothing ??!?!? |
445 | - if ( $critical_page['post'] === null ) { |
|
446 | - $msg = __( 'The Event Espresso critical page configuration settings could not be updated.', 'event_espresso' ); |
|
447 | - EE_Error::add_error( $msg, __FILE__, __FUNCTION__, __LINE__ ); |
|
445 | + if ($critical_page['post'] === null) { |
|
446 | + $msg = __('The Event Espresso critical page configuration settings could not be updated.', 'event_espresso'); |
|
447 | + EE_Error::add_error($msg, __FILE__, __FUNCTION__, __LINE__); |
|
448 | 448 | break; |
449 | 449 | } |
450 | 450 | } |
451 | 451 | } |
452 | 452 | // track post_shortcodes |
453 | - if ( $critical_page['post'] ) { |
|
454 | - EEH_Activation::_track_critical_page_post_shortcodes( $critical_page ); |
|
453 | + if ($critical_page['post']) { |
|
454 | + EEH_Activation::_track_critical_page_post_shortcodes($critical_page); |
|
455 | 455 | } |
456 | 456 | // check that Post ID matches critical page ID in config |
457 | 457 | if ( |
458 | - isset( $critical_page['post']->ID ) |
|
459 | - && $critical_page['post']->ID !== $EE_Core_Config->{$critical_page[ 'id' ]} |
|
458 | + isset($critical_page['post']->ID) |
|
459 | + && $critical_page['post']->ID !== $EE_Core_Config->{$critical_page['id']} |
|
460 | 460 | ) { |
461 | 461 | //update Config with post ID |
462 | - $EE_Core_Config->{$critical_page[ 'id' ]} = $critical_page['post']->ID; |
|
463 | - if ( ! EE_Config::instance()->update_espresso_config( FALSE, FALSE ) ) { |
|
464 | - $msg = __( 'The Event Espresso critical page configuration settings could not be updated.', 'event_espresso' ); |
|
465 | - EE_Error::add_error( $msg, __FILE__, __FUNCTION__, __LINE__ ); |
|
462 | + $EE_Core_Config->{$critical_page['id']} = $critical_page['post']->ID; |
|
463 | + if ( ! EE_Config::instance()->update_espresso_config(FALSE, FALSE)) { |
|
464 | + $msg = __('The Event Espresso critical page configuration settings could not be updated.', 'event_espresso'); |
|
465 | + EE_Error::add_error($msg, __FILE__, __FUNCTION__, __LINE__); |
|
466 | 466 | } |
467 | 467 | } |
468 | 468 | |
469 | 469 | $critical_page_problem = |
470 | - ! isset( $critical_page['post']->post_status ) |
|
470 | + ! isset($critical_page['post']->post_status) |
|
471 | 471 | || $critical_page['post']->post_status !== 'publish' |
472 | - || strpos( $critical_page['post']->post_content, $critical_page['code'] ) === FALSE |
|
472 | + || strpos($critical_page['post']->post_content, $critical_page['code']) === FALSE |
|
473 | 473 | ? TRUE |
474 | 474 | : $critical_page_problem; |
475 | 475 | |
476 | 476 | } |
477 | 477 | |
478 | - if ( $critical_page_problem ) { |
|
478 | + if ($critical_page_problem) { |
|
479 | 479 | $msg = sprintf( |
480 | - __('A potential issue has been detected with one or more of your Event Espresso pages. Go to %s to view your Event Espresso pages.', 'event_espresso' ), |
|
481 | - '<a href="' . admin_url('admin.php?page=espresso_general_settings&action=critical_pages') . '">' . __('Event Espresso Critical Pages Settings', 'event_espresso') . '</a>' |
|
480 | + __('A potential issue has been detected with one or more of your Event Espresso pages. Go to %s to view your Event Espresso pages.', 'event_espresso'), |
|
481 | + '<a href="'.admin_url('admin.php?page=espresso_general_settings&action=critical_pages').'">'.__('Event Espresso Critical Pages Settings', 'event_espresso').'</a>' |
|
482 | 482 | ); |
483 | - EE_Error::add_persistent_admin_notice( 'critical_page_problem', $msg ); |
|
483 | + EE_Error::add_persistent_admin_notice('critical_page_problem', $msg); |
|
484 | 484 | } |
485 | - if ( EE_Error::has_notices() ) { |
|
486 | - EE_Error::get_notices( FALSE, TRUE, TRUE ); |
|
485 | + if (EE_Error::has_notices()) { |
|
486 | + EE_Error::get_notices(FALSE, TRUE, TRUE); |
|
487 | 487 | } |
488 | 488 | } |
489 | 489 | |
@@ -495,13 +495,13 @@ discard block |
||
495 | 495 | * parameter to the shortcode |
496 | 496 | * @return WP_Post or NULl |
497 | 497 | */ |
498 | - public static function get_page_by_ee_shortcode($ee_shortcode){ |
|
498 | + public static function get_page_by_ee_shortcode($ee_shortcode) { |
|
499 | 499 | global $wpdb; |
500 | 500 | $shortcode_and_opening_bracket = '['.$ee_shortcode; |
501 | 501 | $post_id = $wpdb->get_var("SELECT ID FROM {$wpdb->posts} WHERE post_content LIKE '%$shortcode_and_opening_bracket%' LIMIT 1"); |
502 | - if($post_id){ |
|
502 | + if ($post_id) { |
|
503 | 503 | return get_post($post_id); |
504 | - }else{ |
|
504 | + } else { |
|
505 | 505 | return NULL; |
506 | 506 | } |
507 | 507 | |
@@ -518,32 +518,32 @@ discard block |
||
518 | 518 | * @param array $critical_page |
519 | 519 | * @return array |
520 | 520 | */ |
521 | - public static function create_critical_page( $critical_page ) { |
|
521 | + public static function create_critical_page($critical_page) { |
|
522 | 522 | |
523 | 523 | $post_args = array( |
524 | 524 | 'post_title' => $critical_page['name'], |
525 | 525 | 'post_status' => 'publish', |
526 | 526 | 'post_type' => 'page', |
527 | 527 | 'comment_status' => 'closed', |
528 | - 'post_content' => '[' . $critical_page['code'] . ']' |
|
528 | + 'post_content' => '['.$critical_page['code'].']' |
|
529 | 529 | ); |
530 | 530 | |
531 | - $post_id = wp_insert_post( $post_args ); |
|
532 | - if ( ! $post_id ) { |
|
531 | + $post_id = wp_insert_post($post_args); |
|
532 | + if ( ! $post_id) { |
|
533 | 533 | $msg = sprintf( |
534 | - __( 'The Event Espresso critical page entitled "%s" could not be created.', 'event_espresso' ), |
|
534 | + __('The Event Espresso critical page entitled "%s" could not be created.', 'event_espresso'), |
|
535 | 535 | $critical_page['name'] |
536 | 536 | ); |
537 | - EE_Error::add_error( $msg, __FILE__, __FUNCTION__, __LINE__ ); |
|
537 | + EE_Error::add_error($msg, __FILE__, __FUNCTION__, __LINE__); |
|
538 | 538 | return $critical_page; |
539 | 539 | } |
540 | 540 | // get newly created post's details |
541 | - if ( ! $critical_page['post'] = get_post( $post_id )) { |
|
541 | + if ( ! $critical_page['post'] = get_post($post_id)) { |
|
542 | 542 | $msg = sprintf( |
543 | - __( 'The Event Espresso critical page entitled "%s" could not be retrieved.', 'event_espresso' ), |
|
543 | + __('The Event Espresso critical page entitled "%s" could not be retrieved.', 'event_espresso'), |
|
544 | 544 | $critical_page['name'] |
545 | 545 | ); |
546 | - EE_Error::add_error( $msg, __FILE__, __FUNCTION__, __LINE__ ); |
|
546 | + EE_Error::add_error($msg, __FILE__, __FUNCTION__, __LINE__); |
|
547 | 547 | } |
548 | 548 | |
549 | 549 | return $critical_page; |
@@ -562,35 +562,35 @@ discard block |
||
562 | 562 | * @param array $critical_page |
563 | 563 | * @return void |
564 | 564 | */ |
565 | - private static function _track_critical_page_post_shortcodes( $critical_page = array() ) { |
|
565 | + private static function _track_critical_page_post_shortcodes($critical_page = array()) { |
|
566 | 566 | // check the goods |
567 | - if ( ! $critical_page['post'] instanceof WP_Post ) { |
|
567 | + if ( ! $critical_page['post'] instanceof WP_Post) { |
|
568 | 568 | $msg = sprintf( |
569 | - __( 'The Event Espresso critical page shortcode for the page %s can not be tracked because it is not a WP_Post object.', 'event_espresso' ), |
|
569 | + __('The Event Espresso critical page shortcode for the page %s can not be tracked because it is not a WP_Post object.', 'event_espresso'), |
|
570 | 570 | $critical_page['name'] |
571 | 571 | ); |
572 | - EE_Error::add_error( $msg, __FILE__, __FUNCTION__, __LINE__ ); |
|
572 | + EE_Error::add_error($msg, __FILE__, __FUNCTION__, __LINE__); |
|
573 | 573 | return; |
574 | 574 | } |
575 | 575 | $EE_Core_Config = EE_Registry::instance()->CFG->core; |
576 | 576 | // map shortcode to post |
577 | - $EE_Core_Config->post_shortcodes[ $critical_page['post']->post_name ][ $critical_page['code'] ] = $critical_page['post']->ID; |
|
577 | + $EE_Core_Config->post_shortcodes[$critical_page['post']->post_name][$critical_page['code']] = $critical_page['post']->ID; |
|
578 | 578 | // and make sure it's NOT added to the WP "Posts Page" |
579 | 579 | // name of the WP Posts Page |
580 | 580 | $posts_page = EE_Config::get_page_for_posts(); |
581 | - if ( isset( $EE_Core_Config->post_shortcodes[ $posts_page ] )) { |
|
582 | - unset( $EE_Core_Config->post_shortcodes[ $posts_page ][ $critical_page['code'] ] ); |
|
581 | + if (isset($EE_Core_Config->post_shortcodes[$posts_page])) { |
|
582 | + unset($EE_Core_Config->post_shortcodes[$posts_page][$critical_page['code']]); |
|
583 | 583 | } |
584 | - if ( $posts_page !== 'posts' && isset( $EE_Core_Config->post_shortcodes['posts'] )) { |
|
585 | - unset( $EE_Core_Config->post_shortcodes['posts'][ $critical_page['code'] ] ); |
|
584 | + if ($posts_page !== 'posts' && isset($EE_Core_Config->post_shortcodes['posts'])) { |
|
585 | + unset($EE_Core_Config->post_shortcodes['posts'][$critical_page['code']]); |
|
586 | 586 | } |
587 | 587 | // update post_shortcode CFG |
588 | - if ( ! EE_Config::instance()->update_espresso_config( FALSE, FALSE )) { |
|
588 | + if ( ! EE_Config::instance()->update_espresso_config(FALSE, FALSE)) { |
|
589 | 589 | $msg = sprintf( |
590 | - __( 'The Event Espresso critical page shortcode for the %s page could not be configured properly.', 'event_espresso' ), |
|
590 | + __('The Event Espresso critical page shortcode for the %s page could not be configured properly.', 'event_espresso'), |
|
591 | 591 | $critical_page['name'] |
592 | 592 | ); |
593 | - EE_Error::add_error( $msg, __FILE__, __FUNCTION__, __LINE__ ); |
|
593 | + EE_Error::add_error($msg, __FILE__, __FUNCTION__, __LINE__); |
|
594 | 594 | } |
595 | 595 | } |
596 | 596 | |
@@ -608,24 +608,24 @@ discard block |
||
608 | 608 | public static function get_default_creator_id() { |
609 | 609 | global $wpdb; |
610 | 610 | |
611 | - if ( ! empty( self::$_default_creator_id ) ) { |
|
611 | + if ( ! empty(self::$_default_creator_id)) { |
|
612 | 612 | return self::$_default_creator_id; |
613 | 613 | }/**/ |
614 | 614 | |
615 | - $role_to_check = apply_filters( 'FHEE__EEH_Activation__get_default_creator_id__role_to_check', 'administrator' ); |
|
615 | + $role_to_check = apply_filters('FHEE__EEH_Activation__get_default_creator_id__role_to_check', 'administrator'); |
|
616 | 616 | |
617 | 617 | //let's allow pre_filtering for early exits by alternative methods for getting id. We check for truthy result and if so then exit early. |
618 | - $pre_filtered_id = apply_filters( 'FHEE__EEH_Activation__get_default_creator_id__pre_filtered_id', false, $role_to_check ); |
|
619 | - if ( $pre_filtered_id !== false ) { |
|
618 | + $pre_filtered_id = apply_filters('FHEE__EEH_Activation__get_default_creator_id__pre_filtered_id', false, $role_to_check); |
|
619 | + if ($pre_filtered_id !== false) { |
|
620 | 620 | return (int) $pre_filtered_id; |
621 | 621 | } |
622 | 622 | |
623 | - $capabilities_key = \EEH_Activation::getTableAnalysis()->ensureTableNameHasPrefix( 'capabilities' ); |
|
624 | - $query = $wpdb->prepare( "SELECT user_id FROM $wpdb->usermeta WHERE meta_key = '$capabilities_key' AND meta_value LIKE %s ORDER BY user_id ASC LIMIT 0,1", '%' . $role_to_check . '%' ); |
|
625 | - $user_id = $wpdb->get_var( $query ); |
|
626 | - $user_id = apply_filters( 'FHEE__EEH_Activation_Helper__get_default_creator_id__user_id', $user_id ); |
|
627 | - if ( $user_id && (int)$user_id ) { |
|
628 | - self::$_default_creator_id = (int)$user_id; |
|
623 | + $capabilities_key = \EEH_Activation::getTableAnalysis()->ensureTableNameHasPrefix('capabilities'); |
|
624 | + $query = $wpdb->prepare("SELECT user_id FROM $wpdb->usermeta WHERE meta_key = '$capabilities_key' AND meta_value LIKE %s ORDER BY user_id ASC LIMIT 0,1", '%'.$role_to_check.'%'); |
|
625 | + $user_id = $wpdb->get_var($query); |
|
626 | + $user_id = apply_filters('FHEE__EEH_Activation_Helper__get_default_creator_id__user_id', $user_id); |
|
627 | + if ($user_id && (int) $user_id) { |
|
628 | + self::$_default_creator_id = (int) $user_id; |
|
629 | 629 | return self::$_default_creator_id; |
630 | 630 | } else { |
631 | 631 | return NULL; |
@@ -654,28 +654,28 @@ discard block |
||
654 | 654 | * @return void |
655 | 655 | * @throws EE_Error if there are database errors |
656 | 656 | */ |
657 | - public static function create_table( $table_name, $sql, $engine = 'ENGINE=MyISAM ', $drop_pre_existing_table = false ) { |
|
658 | - if( apply_filters( 'FHEE__EEH_Activation__create_table__short_circuit', FALSE, $table_name, $sql ) ){ |
|
657 | + public static function create_table($table_name, $sql, $engine = 'ENGINE=MyISAM ', $drop_pre_existing_table = false) { |
|
658 | + if (apply_filters('FHEE__EEH_Activation__create_table__short_circuit', FALSE, $table_name, $sql)) { |
|
659 | 659 | return; |
660 | 660 | } |
661 | - do_action( 'AHEE_log', __FILE__, __FUNCTION__, '' ); |
|
662 | - if ( ! function_exists( 'dbDelta' )) { |
|
663 | - require_once( ABSPATH . 'wp-admin/includes/upgrade.php' ); |
|
661 | + do_action('AHEE_log', __FILE__, __FUNCTION__, ''); |
|
662 | + if ( ! function_exists('dbDelta')) { |
|
663 | + require_once(ABSPATH.'wp-admin/includes/upgrade.php'); |
|
664 | 664 | } |
665 | 665 | $tableAnalysis = \EEH_Activation::getTableAnalysis(); |
666 | - $wp_table_name = $tableAnalysis->ensureTableNameHasPrefix( $table_name ); |
|
666 | + $wp_table_name = $tableAnalysis->ensureTableNameHasPrefix($table_name); |
|
667 | 667 | // do we need to first delete an existing version of this table ? |
668 | - if ( $drop_pre_existing_table && $tableAnalysis->tableExists( $wp_table_name ) ){ |
|
668 | + if ($drop_pre_existing_table && $tableAnalysis->tableExists($wp_table_name)) { |
|
669 | 669 | // ok, delete the table... but ONLY if it's empty |
670 | - $deleted_safely = EEH_Activation::delete_db_table_if_empty( $wp_table_name ); |
|
670 | + $deleted_safely = EEH_Activation::delete_db_table_if_empty($wp_table_name); |
|
671 | 671 | // table is NOT empty, are you SURE you want to delete this table ??? |
672 | - if ( ! $deleted_safely && defined( 'EE_DROP_BAD_TABLES' ) && EE_DROP_BAD_TABLES ){ |
|
673 | - \EEH_Activation::getTableManager()->dropTable( $wp_table_name ); |
|
674 | - } else if ( ! $deleted_safely ) { |
|
672 | + if ( ! $deleted_safely && defined('EE_DROP_BAD_TABLES') && EE_DROP_BAD_TABLES) { |
|
673 | + \EEH_Activation::getTableManager()->dropTable($wp_table_name); |
|
674 | + } else if ( ! $deleted_safely) { |
|
675 | 675 | // so we should be more cautious rather than just dropping tables so easily |
676 | 676 | EE_Error::add_persistent_admin_notice( |
677 | - 'bad_table_' . $wp_table_name . '_detected', |
|
678 | - sprintf( __( 'Database table %1$s exists when it shouldn\'t, and may contain erroneous data. If you have previously restored your database from a backup that didn\'t remove the old tables, then we recommend adding %2$s to your %3$s file then restore to that backup again. This will clear out the invalid data from %1$s. Afterwards you should undo that change from your %3$s file. %4$sIf you cannot edit %3$s, you should remove the data from %1$s manually then restore to the backup again.', 'event_espresso' ), |
|
677 | + 'bad_table_'.$wp_table_name.'_detected', |
|
678 | + sprintf(__('Database table %1$s exists when it shouldn\'t, and may contain erroneous data. If you have previously restored your database from a backup that didn\'t remove the old tables, then we recommend adding %2$s to your %3$s file then restore to that backup again. This will clear out the invalid data from %1$s. Afterwards you should undo that change from your %3$s file. %4$sIf you cannot edit %3$s, you should remove the data from %1$s manually then restore to the backup again.', 'event_espresso'), |
|
679 | 679 | $wp_table_name, |
680 | 680 | "<pre>define( 'EE_DROP_BAD_TABLES', TRUE );</pre>", |
681 | 681 | '<b>wp-config.php</b>', |
@@ -683,8 +683,8 @@ discard block |
||
683 | 683 | TRUE ); |
684 | 684 | } |
685 | 685 | } |
686 | - $engine = str_replace( 'ENGINE=', '', $engine ); |
|
687 | - \EEH_Activation::getTableManager()->createTable( $table_name, $sql, $engine ); |
|
686 | + $engine = str_replace('ENGINE=', '', $engine); |
|
687 | + \EEH_Activation::getTableManager()->createTable($table_name, $sql, $engine); |
|
688 | 688 | } |
689 | 689 | |
690 | 690 | |
@@ -702,8 +702,8 @@ discard block |
||
702 | 702 | * 'VARCHAR(10)' |
703 | 703 | * @return bool|int |
704 | 704 | */ |
705 | - public static function add_column_if_it_doesnt_exist($table_name,$column_name,$column_info='INT UNSIGNED NOT NULL'){ |
|
706 | - return \EEH_Activation::getTableManager()->addColumn( $table_name, $column_name, $column_info ); |
|
705 | + public static function add_column_if_it_doesnt_exist($table_name, $column_name, $column_info = 'INT UNSIGNED NOT NULL') { |
|
706 | + return \EEH_Activation::getTableManager()->addColumn($table_name, $column_name, $column_info); |
|
707 | 707 | } |
708 | 708 | |
709 | 709 | |
@@ -719,8 +719,8 @@ discard block |
||
719 | 719 | * @param string $table_name, without prefixed $wpdb->prefix |
720 | 720 | * @return array of database column names |
721 | 721 | */ |
722 | - public static function get_fields_on_table( $table_name = NULL ) { |
|
723 | - return \EEH_Activation::getTableManager()->getTableColumns( $table_name ); |
|
722 | + public static function get_fields_on_table($table_name = NULL) { |
|
723 | + return \EEH_Activation::getTableManager()->getTableColumns($table_name); |
|
724 | 724 | } |
725 | 725 | |
726 | 726 | |
@@ -734,8 +734,8 @@ discard block |
||
734 | 734 | * @param string $table_name |
735 | 735 | * @return bool |
736 | 736 | */ |
737 | - public static function db_table_is_empty( $table_name ) { |
|
738 | - return \EEH_Activation::getTableAnalysis()->tableIsEmpty( $table_name ); |
|
737 | + public static function db_table_is_empty($table_name) { |
|
738 | + return \EEH_Activation::getTableAnalysis()->tableIsEmpty($table_name); |
|
739 | 739 | } |
740 | 740 | |
741 | 741 | |
@@ -748,9 +748,9 @@ discard block |
||
748 | 748 | * @param string $table_name |
749 | 749 | * @return bool | int |
750 | 750 | */ |
751 | - public static function delete_db_table_if_empty( $table_name ) { |
|
752 | - if ( \EEH_Activation::getTableAnalysis()->tableIsEmpty( $table_name ) ) { |
|
753 | - return \EEH_Activation::getTableManager()->dropTable( $table_name ); |
|
751 | + public static function delete_db_table_if_empty($table_name) { |
|
752 | + if (\EEH_Activation::getTableAnalysis()->tableIsEmpty($table_name)) { |
|
753 | + return \EEH_Activation::getTableManager()->dropTable($table_name); |
|
754 | 754 | } |
755 | 755 | return false; |
756 | 756 | } |
@@ -766,8 +766,8 @@ discard block |
||
766 | 766 | * @param string $table_name |
767 | 767 | * @return bool | int |
768 | 768 | */ |
769 | - public static function delete_unused_db_table( $table_name ) { |
|
770 | - return \EEH_Activation::getTableManager()->dropTable( $table_name ); |
|
769 | + public static function delete_unused_db_table($table_name) { |
|
770 | + return \EEH_Activation::getTableManager()->dropTable($table_name); |
|
771 | 771 | } |
772 | 772 | |
773 | 773 | |
@@ -782,8 +782,8 @@ discard block |
||
782 | 782 | * @param string $index_name |
783 | 783 | * @return bool | int |
784 | 784 | */ |
785 | - public static function drop_index( $table_name, $index_name ) { |
|
786 | - return \EEH_Activation::getTableManager()->dropIndex( $table_name, $index_name ); |
|
785 | + public static function drop_index($table_name, $index_name) { |
|
786 | + return \EEH_Activation::getTableManager()->dropIndex($table_name, $index_name); |
|
787 | 787 | } |
788 | 788 | |
789 | 789 | |
@@ -797,27 +797,27 @@ discard block |
||
797 | 797 | * @return boolean success (whether database is setup properly or not) |
798 | 798 | */ |
799 | 799 | public static function create_database_tables() { |
800 | - EE_Registry::instance()->load_core( 'Data_Migration_Manager' ); |
|
800 | + EE_Registry::instance()->load_core('Data_Migration_Manager'); |
|
801 | 801 | //find the migration script that sets the database to be compatible with the code |
802 | 802 | $dms_name = EE_Data_Migration_Manager::instance()->get_most_up_to_date_dms(); |
803 | - if( $dms_name ){ |
|
804 | - $current_data_migration_script = EE_Registry::instance()->load_dms( $dms_name ); |
|
805 | - $current_data_migration_script->set_migrating( false ); |
|
803 | + if ($dms_name) { |
|
804 | + $current_data_migration_script = EE_Registry::instance()->load_dms($dms_name); |
|
805 | + $current_data_migration_script->set_migrating(false); |
|
806 | 806 | $current_data_migration_script->schema_changes_before_migration(); |
807 | 807 | $current_data_migration_script->schema_changes_after_migration(); |
808 | - if( $current_data_migration_script->get_errors() ){ |
|
809 | - if( WP_DEBUG ){ |
|
810 | - foreach( $current_data_migration_script->get_errors() as $error ){ |
|
811 | - EE_Error::add_error($error, __FILE__, __FUNCTION__, __LINE__ ); |
|
808 | + if ($current_data_migration_script->get_errors()) { |
|
809 | + if (WP_DEBUG) { |
|
810 | + foreach ($current_data_migration_script->get_errors() as $error) { |
|
811 | + EE_Error::add_error($error, __FILE__, __FUNCTION__, __LINE__); |
|
812 | 812 | } |
813 | - }else{ |
|
814 | - EE_Error::add_error( __( 'There were errors creating the Event Espresso database tables and Event Espresso has been deactivated. To view the errors, please enable WP_DEBUG in your wp-config.php file.', 'event_espresso' ) ); |
|
813 | + } else { |
|
814 | + EE_Error::add_error(__('There were errors creating the Event Espresso database tables and Event Espresso has been deactivated. To view the errors, please enable WP_DEBUG in your wp-config.php file.', 'event_espresso')); |
|
815 | 815 | } |
816 | 816 | return false; |
817 | 817 | } |
818 | 818 | EE_Data_Migration_Manager::instance()->update_current_database_state_to(); |
819 | - }else{ |
|
820 | - EE_Error::add_error( __( 'Could not determine most up-to-date data migration script from which to pull database schema structure. So database is probably not setup properly', 'event_espresso' ), __FILE__, __FUNCTION__, __LINE__); |
|
819 | + } else { |
|
820 | + EE_Error::add_error(__('Could not determine most up-to-date data migration script from which to pull database schema structure. So database is probably not setup properly', 'event_espresso'), __FILE__, __FUNCTION__, __LINE__); |
|
821 | 821 | return false; |
822 | 822 | } |
823 | 823 | return true; |
@@ -837,27 +837,27 @@ discard block |
||
837 | 837 | public static function initialize_system_questions() { |
838 | 838 | // QUESTION GROUPS |
839 | 839 | global $wpdb; |
840 | - $table_name = \EEH_Activation::getTableAnalysis()->ensureTableNameHasPrefix( 'esp_question_group' ); |
|
840 | + $table_name = \EEH_Activation::getTableAnalysis()->ensureTableNameHasPrefix('esp_question_group'); |
|
841 | 841 | $SQL = "SELECT QSG_system FROM $table_name WHERE QSG_system != 0"; |
842 | 842 | // what we have |
843 | - $question_groups = $wpdb->get_col( $SQL ); |
|
843 | + $question_groups = $wpdb->get_col($SQL); |
|
844 | 844 | // check the response |
845 | - $question_groups = is_array( $question_groups ) ? $question_groups : array(); |
|
845 | + $question_groups = is_array($question_groups) ? $question_groups : array(); |
|
846 | 846 | // what we should have |
847 | - $QSG_systems = array( 1, 2 ); |
|
847 | + $QSG_systems = array(1, 2); |
|
848 | 848 | // loop thru what we should have and compare to what we have |
849 | - foreach ( $QSG_systems as $QSG_system ) { |
|
849 | + foreach ($QSG_systems as $QSG_system) { |
|
850 | 850 | // reset values array |
851 | 851 | $QSG_values = array(); |
852 | 852 | // if we don't have what we should have (but use $QST_system as as string because that's what we got from the db) |
853 | - if ( ! in_array( "$QSG_system", $question_groups )) { |
|
853 | + if ( ! in_array("$QSG_system", $question_groups)) { |
|
854 | 854 | // add it |
855 | - switch ( $QSG_system ) { |
|
855 | + switch ($QSG_system) { |
|
856 | 856 | |
857 | 857 | case 1: |
858 | 858 | $QSG_values = array( |
859 | - 'QSG_name' => __( 'Personal Information', 'event_espresso' ), |
|
860 | - 'QSG_identifier' => 'personal-information-' . time(), |
|
859 | + 'QSG_name' => __('Personal Information', 'event_espresso'), |
|
860 | + 'QSG_identifier' => 'personal-information-'.time(), |
|
861 | 861 | 'QSG_desc' => '', |
862 | 862 | 'QSG_order' => 1, |
863 | 863 | 'QSG_show_group_name' => 1, |
@@ -869,8 +869,8 @@ discard block |
||
869 | 869 | |
870 | 870 | case 2: |
871 | 871 | $QSG_values = array( |
872 | - 'QSG_name' => __( 'Address Information','event_espresso' ), |
|
873 | - 'QSG_identifier' => 'address-information-' . time(), |
|
872 | + 'QSG_name' => __('Address Information', 'event_espresso'), |
|
873 | + 'QSG_identifier' => 'address-information-'.time(), |
|
874 | 874 | 'QSG_desc' => '', |
875 | 875 | 'QSG_order' => 2, |
876 | 876 | 'QSG_show_group_name' => 1, |
@@ -882,14 +882,14 @@ discard block |
||
882 | 882 | |
883 | 883 | } |
884 | 884 | // make sure we have some values before inserting them |
885 | - if ( ! empty( $QSG_values )) { |
|
885 | + if ( ! empty($QSG_values)) { |
|
886 | 886 | // insert system question |
887 | 887 | $wpdb->insert( |
888 | 888 | $table_name, |
889 | 889 | $QSG_values, |
890 | - array('%s', '%s', '%s', '%d', '%d', '%d', '%d', '%d' ) |
|
890 | + array('%s', '%s', '%s', '%d', '%d', '%d', '%d', '%d') |
|
891 | 891 | ); |
892 | - $QSG_IDs[ $QSG_system ] = $wpdb->insert_id; |
|
892 | + $QSG_IDs[$QSG_system] = $wpdb->insert_id; |
|
893 | 893 | } |
894 | 894 | } |
895 | 895 | } |
@@ -898,10 +898,10 @@ discard block |
||
898 | 898 | |
899 | 899 | // QUESTIONS |
900 | 900 | global $wpdb; |
901 | - $table_name = \EEH_Activation::getTableAnalysis()->ensureTableNameHasPrefix( 'esp_question' ); |
|
901 | + $table_name = \EEH_Activation::getTableAnalysis()->ensureTableNameHasPrefix('esp_question'); |
|
902 | 902 | $SQL = "SELECT QST_system FROM $table_name WHERE QST_system != ''"; |
903 | 903 | // what we have |
904 | - $questions = $wpdb->get_col( $SQL ); |
|
904 | + $questions = $wpdb->get_col($SQL); |
|
905 | 905 | // what we should have |
906 | 906 | $QST_systems = array( |
907 | 907 | 'fname', |
@@ -918,25 +918,25 @@ discard block |
||
918 | 918 | $order_for_group_1 = 1; |
919 | 919 | $order_for_group_2 = 1; |
920 | 920 | // loop thru what we should have and compare to what we have |
921 | - foreach ( $QST_systems as $QST_system ) { |
|
921 | + foreach ($QST_systems as $QST_system) { |
|
922 | 922 | // reset values array |
923 | 923 | $QST_values = array(); |
924 | 924 | // if we don't have what we should have |
925 | - if ( ! in_array( $QST_system, $questions )) { |
|
925 | + if ( ! in_array($QST_system, $questions)) { |
|
926 | 926 | // add it |
927 | - switch ( $QST_system ) { |
|
927 | + switch ($QST_system) { |
|
928 | 928 | |
929 | 929 | case 'fname': |
930 | 930 | $QST_values = array( |
931 | - 'QST_display_text' => __( 'First Name', 'event_espresso' ), |
|
932 | - 'QST_admin_label' => __( 'First Name - System Question', 'event_espresso' ), |
|
931 | + 'QST_display_text' => __('First Name', 'event_espresso'), |
|
932 | + 'QST_admin_label' => __('First Name - System Question', 'event_espresso'), |
|
933 | 933 | 'QST_system' => 'fname', |
934 | 934 | 'QST_type' => 'TEXT', |
935 | 935 | 'QST_required' => 1, |
936 | - 'QST_required_text' => __( 'This field is required', 'event_espresso' ), |
|
936 | + 'QST_required_text' => __('This field is required', 'event_espresso'), |
|
937 | 937 | 'QST_order' => 1, |
938 | 938 | 'QST_admin_only' => 0, |
939 | - 'QST_max' => EEM_Question::instance()->absolute_max_for_system_question( $QST_system ), |
|
939 | + 'QST_max' => EEM_Question::instance()->absolute_max_for_system_question($QST_system), |
|
940 | 940 | 'QST_wp_user' => self::get_default_creator_id(), |
941 | 941 | 'QST_deleted' => 0 |
942 | 942 | ); |
@@ -944,15 +944,15 @@ discard block |
||
944 | 944 | |
945 | 945 | case 'lname': |
946 | 946 | $QST_values = array( |
947 | - 'QST_display_text' => __( 'Last Name', 'event_espresso' ), |
|
948 | - 'QST_admin_label' => __( 'Last Name - System Question', 'event_espresso' ), |
|
947 | + 'QST_display_text' => __('Last Name', 'event_espresso'), |
|
948 | + 'QST_admin_label' => __('Last Name - System Question', 'event_espresso'), |
|
949 | 949 | 'QST_system' => 'lname', |
950 | 950 | 'QST_type' => 'TEXT', |
951 | 951 | 'QST_required' => 1, |
952 | - 'QST_required_text' => __( 'This field is required', 'event_espresso' ), |
|
952 | + 'QST_required_text' => __('This field is required', 'event_espresso'), |
|
953 | 953 | 'QST_order' => 2, |
954 | 954 | 'QST_admin_only' => 0, |
955 | - 'QST_max' => EEM_Question::instance()->absolute_max_for_system_question( $QST_system ), |
|
955 | + 'QST_max' => EEM_Question::instance()->absolute_max_for_system_question($QST_system), |
|
956 | 956 | 'QST_wp_user' => self::get_default_creator_id(), |
957 | 957 | 'QST_deleted' => 0 |
958 | 958 | ); |
@@ -960,15 +960,15 @@ discard block |
||
960 | 960 | |
961 | 961 | case 'email': |
962 | 962 | $QST_values = array( |
963 | - 'QST_display_text' => __( 'Email Address', 'event_espresso' ), |
|
964 | - 'QST_admin_label' => __( 'Email Address - System Question', 'event_espresso' ), |
|
963 | + 'QST_display_text' => __('Email Address', 'event_espresso'), |
|
964 | + 'QST_admin_label' => __('Email Address - System Question', 'event_espresso'), |
|
965 | 965 | 'QST_system' => 'email', |
966 | 966 | 'QST_type' => 'EMAIL', |
967 | 967 | 'QST_required' => 1, |
968 | - 'QST_required_text' => __( 'This field is required', 'event_espresso' ), |
|
968 | + 'QST_required_text' => __('This field is required', 'event_espresso'), |
|
969 | 969 | 'QST_order' => 3, |
970 | 970 | 'QST_admin_only' => 0, |
971 | - 'QST_max' => EEM_Question::instance()->absolute_max_for_system_question( $QST_system ), |
|
971 | + 'QST_max' => EEM_Question::instance()->absolute_max_for_system_question($QST_system), |
|
972 | 972 | 'QST_wp_user' => self::get_default_creator_id(), |
973 | 973 | 'QST_deleted' => 0 |
974 | 974 | ); |
@@ -976,15 +976,15 @@ discard block |
||
976 | 976 | |
977 | 977 | case 'address': |
978 | 978 | $QST_values = array( |
979 | - 'QST_display_text' => __( 'Address', 'event_espresso' ), |
|
980 | - 'QST_admin_label' => __( 'Address - System Question', 'event_espresso' ), |
|
979 | + 'QST_display_text' => __('Address', 'event_espresso'), |
|
980 | + 'QST_admin_label' => __('Address - System Question', 'event_espresso'), |
|
981 | 981 | 'QST_system' => 'address', |
982 | 982 | 'QST_type' => 'TEXT', |
983 | 983 | 'QST_required' => 0, |
984 | - 'QST_required_text' => __( 'This field is required', 'event_espresso' ), |
|
984 | + 'QST_required_text' => __('This field is required', 'event_espresso'), |
|
985 | 985 | 'QST_order' => 4, |
986 | 986 | 'QST_admin_only' => 0, |
987 | - 'QST_max' => EEM_Question::instance()->absolute_max_for_system_question( $QST_system ), |
|
987 | + 'QST_max' => EEM_Question::instance()->absolute_max_for_system_question($QST_system), |
|
988 | 988 | 'QST_wp_user' => self::get_default_creator_id(), |
989 | 989 | 'QST_deleted' => 0 |
990 | 990 | ); |
@@ -992,15 +992,15 @@ discard block |
||
992 | 992 | |
993 | 993 | case 'address2': |
994 | 994 | $QST_values = array( |
995 | - 'QST_display_text' => __( 'Address2', 'event_espresso' ), |
|
996 | - 'QST_admin_label' => __( 'Address2 - System Question', 'event_espresso' ), |
|
995 | + 'QST_display_text' => __('Address2', 'event_espresso'), |
|
996 | + 'QST_admin_label' => __('Address2 - System Question', 'event_espresso'), |
|
997 | 997 | 'QST_system' => 'address2', |
998 | 998 | 'QST_type' => 'TEXT', |
999 | 999 | 'QST_required' => 0, |
1000 | - 'QST_required_text' => __( 'This field is required', 'event_espresso' ), |
|
1000 | + 'QST_required_text' => __('This field is required', 'event_espresso'), |
|
1001 | 1001 | 'QST_order' => 5, |
1002 | 1002 | 'QST_admin_only' => 0, |
1003 | - 'QST_max' => EEM_Question::instance()->absolute_max_for_system_question( $QST_system ), |
|
1003 | + 'QST_max' => EEM_Question::instance()->absolute_max_for_system_question($QST_system), |
|
1004 | 1004 | 'QST_wp_user' => self::get_default_creator_id(), |
1005 | 1005 | 'QST_deleted' => 0 |
1006 | 1006 | ); |
@@ -1008,27 +1008,27 @@ discard block |
||
1008 | 1008 | |
1009 | 1009 | case 'city': |
1010 | 1010 | $QST_values = array( |
1011 | - 'QST_display_text' => __( 'City', 'event_espresso' ), |
|
1012 | - 'QST_admin_label' => __( 'City - System Question', 'event_espresso' ), |
|
1011 | + 'QST_display_text' => __('City', 'event_espresso'), |
|
1012 | + 'QST_admin_label' => __('City - System Question', 'event_espresso'), |
|
1013 | 1013 | 'QST_system' => 'city', |
1014 | 1014 | 'QST_type' => 'TEXT', |
1015 | 1015 | 'QST_required' => 0, |
1016 | - 'QST_required_text' => __( 'This field is required', 'event_espresso' ), |
|
1016 | + 'QST_required_text' => __('This field is required', 'event_espresso'), |
|
1017 | 1017 | 'QST_order' => 6, |
1018 | 1018 | 'QST_admin_only' => 0, |
1019 | - 'QST_max' => EEM_Question::instance()->absolute_max_for_system_question( $QST_system ), |
|
1019 | + 'QST_max' => EEM_Question::instance()->absolute_max_for_system_question($QST_system), |
|
1020 | 1020 | 'QST_wp_user' => self::get_default_creator_id(), |
1021 | 1021 | 'QST_deleted' => 0 |
1022 | 1022 | ); |
1023 | 1023 | break; |
1024 | 1024 | case 'country' : |
1025 | 1025 | $QST_values = array( |
1026 | - 'QST_display_text' => __( 'Country', 'event_espresso' ), |
|
1027 | - 'QST_admin_label' => __( 'Country - System Question', 'event_espresso' ), |
|
1026 | + 'QST_display_text' => __('Country', 'event_espresso'), |
|
1027 | + 'QST_admin_label' => __('Country - System Question', 'event_espresso'), |
|
1028 | 1028 | 'QST_system' => 'country', |
1029 | 1029 | 'QST_type' => 'COUNTRY', |
1030 | 1030 | 'QST_required' => 0, |
1031 | - 'QST_required_text' => __( 'This field is required', 'event_espresso' ), |
|
1031 | + 'QST_required_text' => __('This field is required', 'event_espresso'), |
|
1032 | 1032 | 'QST_order' => 7, |
1033 | 1033 | 'QST_admin_only' => 0, |
1034 | 1034 | 'QST_wp_user' => self::get_default_creator_id(), |
@@ -1038,12 +1038,12 @@ discard block |
||
1038 | 1038 | |
1039 | 1039 | case 'state': |
1040 | 1040 | $QST_values = array( |
1041 | - 'QST_display_text' => __( 'State/Province', 'event_espresso' ), |
|
1042 | - 'QST_admin_label' => __( 'State/Province - System Question', 'event_espresso' ), |
|
1041 | + 'QST_display_text' => __('State/Province', 'event_espresso'), |
|
1042 | + 'QST_admin_label' => __('State/Province - System Question', 'event_espresso'), |
|
1043 | 1043 | 'QST_system' => 'state', |
1044 | 1044 | 'QST_type' => 'STATE', |
1045 | 1045 | 'QST_required' => 0, |
1046 | - 'QST_required_text' => __( 'This field is required', 'event_espresso' ), |
|
1046 | + 'QST_required_text' => __('This field is required', 'event_espresso'), |
|
1047 | 1047 | 'QST_order' => 8, |
1048 | 1048 | 'QST_admin_only' => 0, |
1049 | 1049 | 'QST_wp_user' => self::get_default_creator_id(), |
@@ -1053,15 +1053,15 @@ discard block |
||
1053 | 1053 | |
1054 | 1054 | case 'zip': |
1055 | 1055 | $QST_values = array( |
1056 | - 'QST_display_text' => __( 'Zip/Postal Code', 'event_espresso' ), |
|
1057 | - 'QST_admin_label' => __( 'Zip/Postal Code - System Question', 'event_espresso' ), |
|
1056 | + 'QST_display_text' => __('Zip/Postal Code', 'event_espresso'), |
|
1057 | + 'QST_admin_label' => __('Zip/Postal Code - System Question', 'event_espresso'), |
|
1058 | 1058 | 'QST_system' => 'zip', |
1059 | 1059 | 'QST_type' => 'TEXT', |
1060 | 1060 | 'QST_required' => 0, |
1061 | - 'QST_required_text' => __( 'This field is required', 'event_espresso' ), |
|
1061 | + 'QST_required_text' => __('This field is required', 'event_espresso'), |
|
1062 | 1062 | 'QST_order' => 9, |
1063 | 1063 | 'QST_admin_only' => 0, |
1064 | - 'QST_max' => EEM_Question::instance()->absolute_max_for_system_question( $QST_system ), |
|
1064 | + 'QST_max' => EEM_Question::instance()->absolute_max_for_system_question($QST_system), |
|
1065 | 1065 | 'QST_wp_user' => self::get_default_creator_id(), |
1066 | 1066 | 'QST_deleted' => 0 |
1067 | 1067 | ); |
@@ -1069,49 +1069,49 @@ discard block |
||
1069 | 1069 | |
1070 | 1070 | case 'phone': |
1071 | 1071 | $QST_values = array( |
1072 | - 'QST_display_text' => __( 'Phone Number', 'event_espresso' ), |
|
1073 | - 'QST_admin_label' => __( 'Phone Number - System Question', 'event_espresso' ), |
|
1072 | + 'QST_display_text' => __('Phone Number', 'event_espresso'), |
|
1073 | + 'QST_admin_label' => __('Phone Number - System Question', 'event_espresso'), |
|
1074 | 1074 | 'QST_system' => 'phone', |
1075 | 1075 | 'QST_type' => 'TEXT', |
1076 | 1076 | 'QST_required' => 0, |
1077 | - 'QST_required_text' => __( 'This field is required', 'event_espresso' ), |
|
1077 | + 'QST_required_text' => __('This field is required', 'event_espresso'), |
|
1078 | 1078 | 'QST_order' => 10, |
1079 | 1079 | 'QST_admin_only' => 0, |
1080 | - 'QST_max' => EEM_Question::instance()->absolute_max_for_system_question( $QST_system ), |
|
1080 | + 'QST_max' => EEM_Question::instance()->absolute_max_for_system_question($QST_system), |
|
1081 | 1081 | 'QST_wp_user' => self::get_default_creator_id(), |
1082 | 1082 | 'QST_deleted' => 0 |
1083 | 1083 | ); |
1084 | 1084 | break; |
1085 | 1085 | |
1086 | 1086 | } |
1087 | - if ( ! empty( $QST_values )) { |
|
1087 | + if ( ! empty($QST_values)) { |
|
1088 | 1088 | // insert system question |
1089 | 1089 | $wpdb->insert( |
1090 | 1090 | $table_name, |
1091 | 1091 | $QST_values, |
1092 | - array( '%s', '%s', '%s', '%s', '%d', '%s', '%d', '%d', '%d', '%d' ) |
|
1092 | + array('%s', '%s', '%s', '%s', '%d', '%s', '%d', '%d', '%d', '%d') |
|
1093 | 1093 | ); |
1094 | 1094 | $QST_ID = $wpdb->insert_id; |
1095 | 1095 | |
1096 | 1096 | // QUESTION GROUP QUESTIONS |
1097 | - if( in_array( $QST_system, array( 'fname', 'lname', 'email' ) ) ) { |
|
1097 | + if (in_array($QST_system, array('fname', 'lname', 'email'))) { |
|
1098 | 1098 | $system_question_we_want = EEM_Question_Group::system_personal; |
1099 | 1099 | } else { |
1100 | 1100 | $system_question_we_want = EEM_Question_Group::system_address; |
1101 | 1101 | } |
1102 | - if( isset( $QSG_IDs[ $system_question_we_want ] ) ) { |
|
1103 | - $QSG_ID = $QSG_IDs[ $system_question_we_want ]; |
|
1102 | + if (isset($QSG_IDs[$system_question_we_want])) { |
|
1103 | + $QSG_ID = $QSG_IDs[$system_question_we_want]; |
|
1104 | 1104 | } else { |
1105 | - $id_col = EEM_Question_Group::instance()->get_col( array( array( 'QSG_system' => $system_question_we_want ) ) ); |
|
1106 | - if( is_array( $id_col ) ) { |
|
1107 | - $QSG_ID = reset( $id_col ); |
|
1105 | + $id_col = EEM_Question_Group::instance()->get_col(array(array('QSG_system' => $system_question_we_want))); |
|
1106 | + if (is_array($id_col)) { |
|
1107 | + $QSG_ID = reset($id_col); |
|
1108 | 1108 | } else { |
1109 | 1109 | //ok so we didn't find it in the db either?? that's weird because we should have inserted it at the start of this method |
1110 | 1110 | EE_Log::instance()->log( |
1111 | 1111 | __FILE__, |
1112 | 1112 | __FUNCTION__, |
1113 | 1113 | sprintf( |
1114 | - __( 'Could not associate question %1$s to a question group because no system question group existed', 'event_espresso'), |
|
1114 | + __('Could not associate question %1$s to a question group because no system question group existed', 'event_espresso'), |
|
1115 | 1115 | $QST_ID ), |
1116 | 1116 | 'error' ); |
1117 | 1117 | continue; |
@@ -1120,12 +1120,12 @@ discard block |
||
1120 | 1120 | |
1121 | 1121 | // add system questions to groups |
1122 | 1122 | $wpdb->insert( |
1123 | - \EEH_Activation::getTableAnalysis()->ensureTableNameHasPrefix( 'esp_question_group_question' ), |
|
1124 | - array( 'QSG_ID' => $QSG_ID, |
|
1123 | + \EEH_Activation::getTableAnalysis()->ensureTableNameHasPrefix('esp_question_group_question'), |
|
1124 | + array('QSG_ID' => $QSG_ID, |
|
1125 | 1125 | 'QST_ID' => $QST_ID, |
1126 | - 'QGQ_order' => ( $QSG_ID === 1 ) ? $order_for_group_1++ : $order_for_group_2++ |
|
1126 | + 'QGQ_order' => ($QSG_ID === 1) ? $order_for_group_1++ : $order_for_group_2++ |
|
1127 | 1127 | ), |
1128 | - array( '%d', '%d', '%d' ) |
|
1128 | + array('%d', '%d', '%d') |
|
1129 | 1129 | ); |
1130 | 1130 | } |
1131 | 1131 | } |
@@ -1141,11 +1141,11 @@ discard block |
||
1141 | 1141 | * |
1142 | 1142 | * @throws \EE_Error |
1143 | 1143 | */ |
1144 | - public static function insert_default_payment_methods(){ |
|
1145 | - if( ! EEM_Payment_Method::instance()->count_active( EEM_Payment_Method::scope_cart ) ){ |
|
1146 | - EE_Registry::instance()->load_lib( 'Payment_Method_Manager' ); |
|
1147 | - EE_Payment_Method_Manager::instance()->activate_a_payment_method_of_type( 'Invoice' ); |
|
1148 | - }else{ |
|
1144 | + public static function insert_default_payment_methods() { |
|
1145 | + if ( ! EEM_Payment_Method::instance()->count_active(EEM_Payment_Method::scope_cart)) { |
|
1146 | + EE_Registry::instance()->load_lib('Payment_Method_Manager'); |
|
1147 | + EE_Payment_Method_Manager::instance()->activate_a_payment_method_of_type('Invoice'); |
|
1148 | + } else { |
|
1149 | 1149 | EEM_Payment_Method::instance()->verify_button_urls(); |
1150 | 1150 | } |
1151 | 1151 | } |
@@ -1161,7 +1161,7 @@ discard block |
||
1161 | 1161 | |
1162 | 1162 | global $wpdb; |
1163 | 1163 | |
1164 | - if ( \EEH_Activation::getTableAnalysis()->tableExists( EEM_Status::instance()->table() ) ) { |
|
1164 | + if (\EEH_Activation::getTableAnalysis()->tableExists(EEM_Status::instance()->table())) { |
|
1165 | 1165 | |
1166 | 1166 | $table_name = EEM_Status::instance()->table(); |
1167 | 1167 | |
@@ -1237,33 +1237,33 @@ discard block |
||
1237 | 1237 | $folders = array( |
1238 | 1238 | EVENT_ESPRESSO_TEMPLATE_DIR, |
1239 | 1239 | EVENT_ESPRESSO_GATEWAY_DIR, |
1240 | - EVENT_ESPRESSO_UPLOAD_DIR . 'logs/', |
|
1241 | - EVENT_ESPRESSO_UPLOAD_DIR . 'css/', |
|
1242 | - EVENT_ESPRESSO_UPLOAD_DIR . 'tickets/' |
|
1240 | + EVENT_ESPRESSO_UPLOAD_DIR.'logs/', |
|
1241 | + EVENT_ESPRESSO_UPLOAD_DIR.'css/', |
|
1242 | + EVENT_ESPRESSO_UPLOAD_DIR.'tickets/' |
|
1243 | 1243 | ); |
1244 | - foreach ( $folders as $folder ) { |
|
1244 | + foreach ($folders as $folder) { |
|
1245 | 1245 | try { |
1246 | - EEH_File::ensure_folder_exists_and_is_writable( $folder ); |
|
1247 | - @ chmod( $folder, 0755 ); |
|
1248 | - } catch( EE_Error $e ){ |
|
1246 | + EEH_File::ensure_folder_exists_and_is_writable($folder); |
|
1247 | + @ chmod($folder, 0755); |
|
1248 | + } catch (EE_Error $e) { |
|
1249 | 1249 | EE_Error::add_error( |
1250 | 1250 | sprintf( |
1251 | - __( 'Could not create the folder at "%1$s" because: %2$s', 'event_espresso' ), |
|
1251 | + __('Could not create the folder at "%1$s" because: %2$s', 'event_espresso'), |
|
1252 | 1252 | $folder, |
1253 | - '<br />' . $e->getMessage() |
|
1253 | + '<br />'.$e->getMessage() |
|
1254 | 1254 | ), |
1255 | 1255 | __FILE__, __FUNCTION__, __LINE__ |
1256 | 1256 | ); |
1257 | 1257 | //indicate we'll need to fix this later |
1258 | - update_option( EEH_Activation::upload_directories_incomplete_option_name, true ); |
|
1258 | + update_option(EEH_Activation::upload_directories_incomplete_option_name, true); |
|
1259 | 1259 | return FALSE; |
1260 | 1260 | } |
1261 | 1261 | } |
1262 | 1262 | //just add the .htaccess file to the logs directory to begin with. Even if logging |
1263 | 1263 | //is disabled, there might be activation errors recorded in there |
1264 | - EEH_File::add_htaccess_deny_from_all( EVENT_ESPRESSO_UPLOAD_DIR . 'logs/' ); |
|
1264 | + EEH_File::add_htaccess_deny_from_all(EVENT_ESPRESSO_UPLOAD_DIR.'logs/'); |
|
1265 | 1265 | //remember EE's folders are all good |
1266 | - delete_option( EEH_Activation::upload_directories_incomplete_option_name ); |
|
1266 | + delete_option(EEH_Activation::upload_directories_incomplete_option_name); |
|
1267 | 1267 | return TRUE; |
1268 | 1268 | } |
1269 | 1269 | |
@@ -1276,7 +1276,7 @@ discard block |
||
1276 | 1276 | * @return boolean |
1277 | 1277 | */ |
1278 | 1278 | public static function upload_directories_incomplete() { |
1279 | - return get_option( EEH_Activation::upload_directories_incomplete_option_name, false ); |
|
1279 | + return get_option(EEH_Activation::upload_directories_incomplete_option_name, false); |
|
1280 | 1280 | } |
1281 | 1281 | |
1282 | 1282 | |
@@ -1293,7 +1293,7 @@ discard block |
||
1293 | 1293 | */ |
1294 | 1294 | public static function generate_default_message_templates() { |
1295 | 1295 | /** @type EE_Message_Resource_Manager $message_resource_manager */ |
1296 | - $message_resource_manager = EE_Registry::instance()->load_lib( 'Message_Resource_Manager' ); |
|
1296 | + $message_resource_manager = EE_Registry::instance()->load_lib('Message_Resource_Manager'); |
|
1297 | 1297 | /* |
1298 | 1298 | * This first method is taking care of ensuring any default messengers |
1299 | 1299 | * that should be made active and have templates generated are done. |
@@ -1329,22 +1329,22 @@ discard block |
||
1329 | 1329 | $active_messengers = $message_resource_manager->active_messengers(); |
1330 | 1330 | $installed_message_types = $message_resource_manager->installed_message_types(); |
1331 | 1331 | $templates_created = false; |
1332 | - foreach ( $active_messengers as $active_messenger ) { |
|
1332 | + foreach ($active_messengers as $active_messenger) { |
|
1333 | 1333 | $default_message_type_names_for_messenger = $active_messenger->get_default_message_types(); |
1334 | 1334 | $default_message_type_names_to_activate = array(); |
1335 | 1335 | // looping through each default message type reported by the messenger |
1336 | 1336 | // and setup the actual message types to activate. |
1337 | - foreach ( $default_message_type_names_for_messenger as $default_message_type_name_for_messenger ) { |
|
1337 | + foreach ($default_message_type_names_for_messenger as $default_message_type_name_for_messenger) { |
|
1338 | 1338 | // if already active or has already been activated before we skip |
1339 | 1339 | // (otherwise we might reactivate something user's intentionally deactivated.) |
1340 | 1340 | // we also skip if the message type is not installed. |
1341 | 1341 | if ( |
1342 | - $message_resource_manager->has_message_type_been_activated_for_messenger( $default_message_type_name_for_messenger, $active_messenger->name ) |
|
1342 | + $message_resource_manager->has_message_type_been_activated_for_messenger($default_message_type_name_for_messenger, $active_messenger->name) |
|
1343 | 1343 | || $message_resource_manager->is_message_type_active_for_messenger( |
1344 | 1344 | $active_messenger->name, |
1345 | 1345 | $default_message_type_name_for_messenger |
1346 | 1346 | ) |
1347 | - || ! isset( $installed_message_types[ $default_message_type_name_for_messenger ] ) |
|
1347 | + || ! isset($installed_message_types[$default_message_type_name_for_messenger]) |
|
1348 | 1348 | ) { |
1349 | 1349 | continue; |
1350 | 1350 | } |
@@ -1357,7 +1357,7 @@ discard block |
||
1357 | 1357 | false |
1358 | 1358 | ); |
1359 | 1359 | //activate the templates for these message types |
1360 | - if ( ! empty( $default_message_type_names_to_activate ) ) { |
|
1360 | + if ( ! empty($default_message_type_names_to_activate)) { |
|
1361 | 1361 | $templates_created = EEH_MSG_Template::generate_new_templates( |
1362 | 1362 | $active_messenger->name, |
1363 | 1363 | $default_message_type_names_for_messenger, |
@@ -1384,18 +1384,18 @@ discard block |
||
1384 | 1384 | EE_Message_Resource_Manager $message_resource_manager |
1385 | 1385 | ) { |
1386 | 1386 | /** @type EE_messenger[] $messengers_to_generate */ |
1387 | - $messengers_to_generate = self::_get_default_messengers_to_generate_on_activation( $message_resource_manager ); |
|
1387 | + $messengers_to_generate = self::_get_default_messengers_to_generate_on_activation($message_resource_manager); |
|
1388 | 1388 | $installed_message_types = $message_resource_manager->installed_message_types(); |
1389 | 1389 | $templates_generated = false; |
1390 | - foreach ( $messengers_to_generate as $messenger_to_generate ) { |
|
1390 | + foreach ($messengers_to_generate as $messenger_to_generate) { |
|
1391 | 1391 | $default_message_type_names_for_messenger = $messenger_to_generate->get_default_message_types(); |
1392 | 1392 | //verify the default message types match an installed message type. |
1393 | - foreach ( $default_message_type_names_for_messenger as $key => $name ) { |
|
1393 | + foreach ($default_message_type_names_for_messenger as $key => $name) { |
|
1394 | 1394 | if ( |
1395 | - ! isset( $installed_message_types[ $name ] ) |
|
1396 | - || $message_resource_manager->has_message_type_been_activated_for_messenger( $name, $messenger_to_generate->name ) |
|
1395 | + ! isset($installed_message_types[$name]) |
|
1396 | + || $message_resource_manager->has_message_type_been_activated_for_messenger($name, $messenger_to_generate->name) |
|
1397 | 1397 | ) { |
1398 | - unset( $default_message_type_names_for_messenger[ $key ] ); |
|
1398 | + unset($default_message_type_names_for_messenger[$key]); |
|
1399 | 1399 | } |
1400 | 1400 | } |
1401 | 1401 | // in previous iterations, the active_messengers option in the db |
@@ -1409,7 +1409,7 @@ discard block |
||
1409 | 1409 | false |
1410 | 1410 | ); |
1411 | 1411 | //create any templates needing created (or will reactivate templates already generated as necessary). |
1412 | - if ( ! empty( $default_message_type_names_for_messenger ) ) { |
|
1412 | + if ( ! empty($default_message_type_names_for_messenger)) { |
|
1413 | 1413 | $templates_generated = EEH_MSG_Template::generate_new_templates( |
1414 | 1414 | $messenger_to_generate->name, |
1415 | 1415 | $default_message_type_names_for_messenger, |
@@ -1441,18 +1441,18 @@ discard block |
||
1441 | 1441 | $has_activated = $message_resource_manager->get_has_activated_messengers_option(); |
1442 | 1442 | |
1443 | 1443 | $messengers_to_generate = array(); |
1444 | - foreach ( $installed_messengers as $installed_messenger ) { |
|
1444 | + foreach ($installed_messengers as $installed_messenger) { |
|
1445 | 1445 | //if installed messenger is a messenger that should be activated on install |
1446 | 1446 | //and is not already active |
1447 | 1447 | //and has never been activated |
1448 | 1448 | if ( |
1449 | 1449 | ! $installed_messenger->activate_on_install |
1450 | - || isset( $active_messengers[ $installed_messenger->name ] ) |
|
1451 | - || isset( $has_activated[ $installed_messenger->name ] ) |
|
1450 | + || isset($active_messengers[$installed_messenger->name]) |
|
1451 | + || isset($has_activated[$installed_messenger->name]) |
|
1452 | 1452 | ) { |
1453 | 1453 | continue; |
1454 | 1454 | } |
1455 | - $messengers_to_generate[ $installed_messenger->name ] = $installed_messenger; |
|
1455 | + $messengers_to_generate[$installed_messenger->name] = $installed_messenger; |
|
1456 | 1456 | } |
1457 | 1457 | return $messengers_to_generate; |
1458 | 1458 | } |
@@ -1477,9 +1477,9 @@ discard block |
||
1477 | 1477 | */ |
1478 | 1478 | public static function validate_messages_system() { |
1479 | 1479 | /** @type EE_Message_Resource_Manager $message_resource_manager */ |
1480 | - $message_resource_manager = EE_Registry::instance()->load_lib( 'Message_Resource_Manager' ); |
|
1480 | + $message_resource_manager = EE_Registry::instance()->load_lib('Message_Resource_Manager'); |
|
1481 | 1481 | $message_resource_manager->validate_active_message_types_are_installed(); |
1482 | - do_action( 'AHEE__EEH_Activation__validate_messages_system' ); |
|
1482 | + do_action('AHEE__EEH_Activation__validate_messages_system'); |
|
1483 | 1483 | } |
1484 | 1484 | |
1485 | 1485 | |
@@ -1492,12 +1492,12 @@ discard block |
||
1492 | 1492 | * @static |
1493 | 1493 | * @return void |
1494 | 1494 | */ |
1495 | - public static function create_no_ticket_prices_array(){ |
|
1495 | + public static function create_no_ticket_prices_array() { |
|
1496 | 1496 | // this creates an array for tracking events that have no active ticket prices created |
1497 | 1497 | // this allows us to warn admins of the situation so that it can be corrected |
1498 | - $espresso_no_ticket_prices = get_option( 'ee_no_ticket_prices', FALSE ); |
|
1499 | - if ( ! $espresso_no_ticket_prices ) { |
|
1500 | - add_option( 'ee_no_ticket_prices', array(), '', FALSE ); |
|
1498 | + $espresso_no_ticket_prices = get_option('ee_no_ticket_prices', FALSE); |
|
1499 | + if ( ! $espresso_no_ticket_prices) { |
|
1500 | + add_option('ee_no_ticket_prices', array(), '', FALSE); |
|
1501 | 1501 | } |
1502 | 1502 | } |
1503 | 1503 | |
@@ -1522,24 +1522,24 @@ discard block |
||
1522 | 1522 | * @global wpdb $wpdb |
1523 | 1523 | * @throws \EE_Error |
1524 | 1524 | */ |
1525 | - public static function delete_all_espresso_cpt_data(){ |
|
1525 | + public static function delete_all_espresso_cpt_data() { |
|
1526 | 1526 | global $wpdb; |
1527 | 1527 | //get all the CPT post_types |
1528 | 1528 | $ee_post_types = array(); |
1529 | - foreach(EE_Registry::instance()->non_abstract_db_models as $model_name){ |
|
1530 | - if ( method_exists( $model_name, 'instance' )) { |
|
1531 | - $model_obj = call_user_func( array( $model_name, 'instance' )); |
|
1532 | - if ( $model_obj instanceof EEM_CPT_Base ) { |
|
1533 | - $ee_post_types[] = $wpdb->prepare("%s",$model_obj->post_type()); |
|
1529 | + foreach (EE_Registry::instance()->non_abstract_db_models as $model_name) { |
|
1530 | + if (method_exists($model_name, 'instance')) { |
|
1531 | + $model_obj = call_user_func(array($model_name, 'instance')); |
|
1532 | + if ($model_obj instanceof EEM_CPT_Base) { |
|
1533 | + $ee_post_types[] = $wpdb->prepare("%s", $model_obj->post_type()); |
|
1534 | 1534 | } |
1535 | 1535 | } |
1536 | 1536 | } |
1537 | 1537 | //get all our CPTs |
1538 | - $query = "SELECT ID FROM {$wpdb->posts} WHERE post_type IN (".implode(",",$ee_post_types).")"; |
|
1538 | + $query = "SELECT ID FROM {$wpdb->posts} WHERE post_type IN (".implode(",", $ee_post_types).")"; |
|
1539 | 1539 | $cpt_ids = $wpdb->get_col($query); |
1540 | 1540 | //delete each post meta and term relations too |
1541 | - foreach($cpt_ids as $post_id){ |
|
1542 | - wp_delete_post($post_id,true); |
|
1541 | + foreach ($cpt_ids as $post_id) { |
|
1542 | + wp_delete_post($post_id, true); |
|
1543 | 1543 | } |
1544 | 1544 | } |
1545 | 1545 | |
@@ -1551,12 +1551,12 @@ discard block |
||
1551 | 1551 | public static function drop_espresso_tables() { |
1552 | 1552 | $tables = array(); |
1553 | 1553 | // load registry |
1554 | - foreach( EE_Registry::instance()->non_abstract_db_models as $model_name ){ |
|
1555 | - if ( method_exists( $model_name, 'instance' )) { |
|
1556 | - $model_obj = call_user_func( array( $model_name, 'instance' )); |
|
1557 | - if ( $model_obj instanceof EEM_Base ) { |
|
1558 | - foreach ( $model_obj->get_tables() as $table ) { |
|
1559 | - if ( strpos( $table->get_table_name(), 'esp_' ) |
|
1554 | + foreach (EE_Registry::instance()->non_abstract_db_models as $model_name) { |
|
1555 | + if (method_exists($model_name, 'instance')) { |
|
1556 | + $model_obj = call_user_func(array($model_name, 'instance')); |
|
1557 | + if ($model_obj instanceof EEM_Base) { |
|
1558 | + foreach ($model_obj->get_tables() as $table) { |
|
1559 | + if (strpos($table->get_table_name(), 'esp_') |
|
1560 | 1560 | && |
1561 | 1561 | ( |
1562 | 1562 | is_main_site()//main site? nuke them all |
@@ -1579,10 +1579,10 @@ discard block |
||
1579 | 1579 | 'esp_promotion_rule', |
1580 | 1580 | 'esp_rule' |
1581 | 1581 | ); |
1582 | - foreach( $tables_without_models as $table ){ |
|
1582 | + foreach ($tables_without_models as $table) { |
|
1583 | 1583 | $tables[] = $table; |
1584 | 1584 | } |
1585 | - return \EEH_Activation::getTableManager()->dropTables( $tables ); |
|
1585 | + return \EEH_Activation::getTableManager()->dropTables($tables); |
|
1586 | 1586 | } |
1587 | 1587 | |
1588 | 1588 | /** |
@@ -1594,8 +1594,8 @@ discard block |
||
1594 | 1594 | * @param array $table_names |
1595 | 1595 | * @return array of table names which we deleted |
1596 | 1596 | */ |
1597 | - public static function drop_tables( $table_names ) { |
|
1598 | - return \EEH_Activation::getTableManager()->dropTables( $table_names ); |
|
1597 | + public static function drop_tables($table_names) { |
|
1598 | + return \EEH_Activation::getTableManager()->dropTables($table_names); |
|
1599 | 1599 | } |
1600 | 1600 | /** |
1601 | 1601 | * plugin_uninstall |
@@ -1605,7 +1605,7 @@ discard block |
||
1605 | 1605 | * @param bool $remove_all |
1606 | 1606 | * @return void |
1607 | 1607 | */ |
1608 | - public static function delete_all_espresso_tables_and_data( $remove_all = true ) { |
|
1608 | + public static function delete_all_espresso_tables_and_data($remove_all = true) { |
|
1609 | 1609 | global $wpdb; |
1610 | 1610 | self::drop_espresso_tables(); |
1611 | 1611 | |
@@ -1643,50 +1643,50 @@ discard block |
||
1643 | 1643 | 'ee_job_parameters_' => false, |
1644 | 1644 | 'ee_upload_directories_incomplete' => true, |
1645 | 1645 | ); |
1646 | - if( is_main_site() ) { |
|
1647 | - $wp_options_to_delete[ 'ee_network_config' ] = true; |
|
1646 | + if (is_main_site()) { |
|
1647 | + $wp_options_to_delete['ee_network_config'] = true; |
|
1648 | 1648 | } |
1649 | 1649 | |
1650 | 1650 | $undeleted_options = array(); |
1651 | - foreach ( $wp_options_to_delete as $option_name => $no_wildcard ) { |
|
1651 | + foreach ($wp_options_to_delete as $option_name => $no_wildcard) { |
|
1652 | 1652 | |
1653 | - if( $no_wildcard ){ |
|
1654 | - if( ! delete_option( $option_name ) ){ |
|
1653 | + if ($no_wildcard) { |
|
1654 | + if ( ! delete_option($option_name)) { |
|
1655 | 1655 | $undeleted_options[] = $option_name; |
1656 | 1656 | } |
1657 | - }else{ |
|
1658 | - $option_names_to_delete_from_wildcard = $wpdb->get_col( "SELECT option_name FROM $wpdb->options WHERE option_name LIKE '%$option_name%'" ); |
|
1659 | - foreach($option_names_to_delete_from_wildcard as $option_name_from_wildcard ){ |
|
1660 | - if( ! delete_option( $option_name_from_wildcard ) ){ |
|
1657 | + } else { |
|
1658 | + $option_names_to_delete_from_wildcard = $wpdb->get_col("SELECT option_name FROM $wpdb->options WHERE option_name LIKE '%$option_name%'"); |
|
1659 | + foreach ($option_names_to_delete_from_wildcard as $option_name_from_wildcard) { |
|
1660 | + if ( ! delete_option($option_name_from_wildcard)) { |
|
1661 | 1661 | $undeleted_options[] = $option_name_from_wildcard; |
1662 | 1662 | } |
1663 | 1663 | } |
1664 | 1664 | } |
1665 | 1665 | } |
1666 | 1666 | //also, let's make sure the "ee_config_option_names" wp option stays out by removing the action that adds it |
1667 | - remove_action( 'shutdown', array( EE_Config::instance(), 'shutdown' ), 10 ); |
|
1667 | + remove_action('shutdown', array(EE_Config::instance(), 'shutdown'), 10); |
|
1668 | 1668 | |
1669 | - if ( $remove_all && $espresso_db_update = get_option( 'espresso_db_update' )) { |
|
1669 | + if ($remove_all && $espresso_db_update = get_option('espresso_db_update')) { |
|
1670 | 1670 | $db_update_sans_ee4 = array(); |
1671 | - foreach($espresso_db_update as $version => $times_activated){ |
|
1672 | - if( (string)$version[0] === '3'){//if its NON EE4 |
|
1671 | + foreach ($espresso_db_update as $version => $times_activated) { |
|
1672 | + if ((string) $version[0] === '3') {//if its NON EE4 |
|
1673 | 1673 | $db_update_sans_ee4[$version] = $times_activated; |
1674 | 1674 | } |
1675 | 1675 | } |
1676 | - update_option( 'espresso_db_update', $db_update_sans_ee4 ); |
|
1676 | + update_option('espresso_db_update', $db_update_sans_ee4); |
|
1677 | 1677 | } |
1678 | 1678 | |
1679 | 1679 | $errors = ''; |
1680 | - if ( ! empty( $undeleted_options )) { |
|
1680 | + if ( ! empty($undeleted_options)) { |
|
1681 | 1681 | $errors .= sprintf( |
1682 | - __( 'The following wp-options could not be deleted: %s%s', 'event_espresso' ), |
|
1682 | + __('The following wp-options could not be deleted: %s%s', 'event_espresso'), |
|
1683 | 1683 | '<br/>', |
1684 | - implode( ',<br/>', $undeleted_options ) |
|
1684 | + implode(',<br/>', $undeleted_options) |
|
1685 | 1685 | ); |
1686 | 1686 | |
1687 | 1687 | } |
1688 | - if ( ! empty( $errors ) ) { |
|
1689 | - EE_Error::add_attention( $errors, __FILE__, __FUNCTION__, __LINE__ ); |
|
1688 | + if ( ! empty($errors)) { |
|
1689 | + EE_Error::add_attention($errors, __FILE__, __FUNCTION__, __LINE__); |
|
1690 | 1690 | } |
1691 | 1691 | } |
1692 | 1692 | |
@@ -1696,10 +1696,10 @@ discard block |
||
1696 | 1696 | */ |
1697 | 1697 | public static function last_wpdb_error_code() { |
1698 | 1698 | global $wpdb; |
1699 | - if( $wpdb->use_mysqli ) { |
|
1700 | - return mysqli_errno( $wpdb->dbh ); |
|
1699 | + if ($wpdb->use_mysqli) { |
|
1700 | + return mysqli_errno($wpdb->dbh); |
|
1701 | 1701 | } else { |
1702 | - return mysql_errno( $wpdb->dbh ); |
|
1702 | + return mysql_errno($wpdb->dbh); |
|
1703 | 1703 | } |
1704 | 1704 | } |
1705 | 1705 | |
@@ -1710,14 +1710,14 @@ discard block |
||
1710 | 1710 | * @param string $table_name with or without $wpdb->prefix |
1711 | 1711 | * @return boolean |
1712 | 1712 | */ |
1713 | - public static function table_exists( $table_name ){ |
|
1714 | - return \EEH_Activation::getTableAnalysis()->tableExists( $table_name ); |
|
1713 | + public static function table_exists($table_name) { |
|
1714 | + return \EEH_Activation::getTableAnalysis()->tableExists($table_name); |
|
1715 | 1715 | } |
1716 | 1716 | |
1717 | 1717 | /** |
1718 | 1718 | * Resets the cache on EEH_Activation |
1719 | 1719 | */ |
1720 | - public static function reset(){ |
|
1720 | + public static function reset() { |
|
1721 | 1721 | self::$_default_creator_id = NULL; |
1722 | 1722 | self::$_initialized_db_content_already_in_this_request = false; |
1723 | 1723 | } |
@@ -2,7 +2,7 @@ discard block |
||
2 | 2 | use EventEspresso\core\libraries\rest_api\Calculated_Model_Fields; |
3 | 3 | |
4 | 4 | if ( ! defined('EVENT_ESPRESSO_VERSION')) { |
5 | - exit('No direct script access allowed'); |
|
5 | + exit('No direct script access allowed'); |
|
6 | 6 | } |
7 | 7 | |
8 | 8 | |
@@ -17,818 +17,818 @@ discard block |
||
17 | 17 | class EED_Core_Rest_Api extends \EED_Module |
18 | 18 | { |
19 | 19 | |
20 | - const ee_api_namespace = 'ee/v'; |
|
20 | + const ee_api_namespace = 'ee/v'; |
|
21 | 21 | |
22 | - const ee_api_namespace_for_regex = 'ee\/v([^/]*)\/'; |
|
22 | + const ee_api_namespace_for_regex = 'ee\/v([^/]*)\/'; |
|
23 | 23 | |
24 | - const saved_routes_option_names = 'ee_core_routes'; |
|
24 | + const saved_routes_option_names = 'ee_core_routes'; |
|
25 | 25 | |
26 | - /** |
|
27 | - * string used in _links response bodies to make them globally unique. |
|
28 | - * |
|
29 | - * @see http://v2.wp-api.org/extending/linking/ |
|
30 | - */ |
|
31 | - const ee_api_link_namespace = 'https://api.eventespresso.com/'; |
|
32 | - |
|
33 | - /** |
|
34 | - * @var Calculated_Model_Fields |
|
35 | - */ |
|
36 | - protected static $_field_calculator = null; |
|
37 | - |
|
38 | - |
|
39 | - |
|
40 | - /** |
|
41 | - * @return EED_Core_Rest_Api |
|
42 | - */ |
|
43 | - public static function instance() |
|
44 | - { |
|
45 | - self::$_field_calculator = new Calculated_Model_Fields(); |
|
46 | - return parent::get_instance(__CLASS__); |
|
47 | - } |
|
48 | - |
|
49 | - |
|
50 | - |
|
51 | - /** |
|
52 | - * set_hooks - for hooking into EE Core, other modules, etc |
|
53 | - * |
|
54 | - * @access public |
|
55 | - * @return void |
|
56 | - */ |
|
57 | - public static function set_hooks() |
|
58 | - { |
|
59 | - self::set_hooks_both(); |
|
60 | - } |
|
61 | - |
|
62 | - |
|
63 | - |
|
64 | - /** |
|
65 | - * set_hooks_admin - for hooking into EE Admin Core, other modules, etc |
|
66 | - * |
|
67 | - * @access public |
|
68 | - * @return void |
|
69 | - */ |
|
70 | - public static function set_hooks_admin() |
|
71 | - { |
|
72 | - self::set_hooks_both(); |
|
73 | - } |
|
74 | - |
|
75 | - |
|
76 | - |
|
77 | - public static function set_hooks_both() |
|
78 | - { |
|
79 | - add_action('rest_api_init', array('EED_Core_Rest_Api', 'register_routes'), 10); |
|
80 | - add_action('rest_api_init', array('EED_Core_Rest_Api', 'set_hooks_rest_api'), 5); |
|
81 | - add_filter('rest_route_data', array('EED_Core_Rest_Api', 'hide_old_endpoints'), 10, 2); |
|
82 | - add_filter('rest_index', |
|
83 | - array('EventEspresso\core\libraries\rest_api\controllers\model\Meta', 'filter_ee_metadata_into_index')); |
|
84 | - EED_Core_Rest_Api::invalidate_cached_route_data_on_version_change(); |
|
85 | - } |
|
86 | - |
|
87 | - |
|
88 | - |
|
89 | - /** |
|
90 | - * sets up hooks which only need to be included as part of REST API requests; |
|
91 | - * other requests like to the frontend or admin etc don't need them |
|
92 | - */ |
|
93 | - public static function set_hooks_rest_api() |
|
94 | - { |
|
95 | - //set hooks which account for changes made to the API |
|
96 | - EED_Core_Rest_Api::_set_hooks_for_changes(); |
|
97 | - EED_Core_Rest_Api::maybe_notify_of_basic_auth_removal(); |
|
98 | - } |
|
99 | - |
|
100 | - |
|
101 | - |
|
102 | - /** |
|
103 | - * public wrapper of _set_hooks_for_changes. |
|
104 | - * Loads all the hooks which make requests to old versions of the API |
|
105 | - * appear the same as they always did |
|
106 | - */ |
|
107 | - public static function set_hooks_for_changes() |
|
108 | - { |
|
109 | - self::_set_hooks_for_changes(); |
|
110 | - } |
|
111 | - |
|
112 | - |
|
113 | - |
|
114 | - /** |
|
115 | - * If the user appears to be using WP API basic auth, tell them (via a persistent |
|
116 | - * admin notice and an email) that we're going to remove it soon, so they should |
|
117 | - * replace it with application passwords. |
|
118 | - */ |
|
119 | - public static function maybe_notify_of_basic_auth_removal() |
|
120 | - { |
|
121 | - if ( |
|
122 | - apply_filters( |
|
123 | - 'FHEE__EED_Core_Rest_Api__maybe_notify_of_basic_auth_removal__override', |
|
124 | - ! isset($_SERVER['PHP_AUTH_USER']) |
|
125 | - && ! isset($_SERVER['HTTP_AUTHORIZATION']) |
|
126 | - ) |
|
127 | - ) { |
|
128 | - //sure it's a WP API request, but they aren't using basic auth, so don't bother them |
|
129 | - return; |
|
130 | - } |
|
131 | - //ok they're using the WP API with Basic Auth |
|
132 | - $message = sprintf( |
|
133 | - __('We noticed you\'re using the WP API, which is used by the Event Espresso 4 mobile apps. Because of security and compatibility concerns, we will soon be removing our default authentication mechanism, WP API Basic Auth, from Event Espresso. It is recommended you instead install the %1$sWP Application Passwords plugin%2$s and use it with the EE4 Mobile apps. See %3$sour mobile app documentation%2$s for more information. %4$sIf you have installed the WP API Basic Auth plugin separately, or are not using the Event Espresso 4 mobile apps, you can disregard this message.%4$sThe Event Espresso Team', |
|
134 | - 'event_espresso'), |
|
135 | - '<a href="https://wordpress.org/plugins/application-passwords/">', |
|
136 | - '</a>', |
|
137 | - '<a href="https://eventespresso.com/wiki/ee4-event-apps/#authentication">', |
|
138 | - '<br/>' |
|
139 | - ); |
|
140 | - EE_Error::add_persistent_admin_notice('using_basic_auth', $message); |
|
141 | - if ( ! get_option('ee_notified_admin_on_basic_auth_removal', false)) { |
|
142 | - add_option('ee_notified_admin_on_basic_auth_removal', true); |
|
143 | - //piggy back off EE_Error::set_content_type, which sets the content type to HTML |
|
144 | - add_filter('wp_mail_content_type', array('EE_Error', 'set_content_type')); |
|
145 | - //and send the message to the site admin too |
|
146 | - wp_mail(get_option('admin_email'), |
|
147 | - __('Notice of Removal of WP API Basic Auth From Event Espresso 4', 'event_espresso'), $message); |
|
148 | - remove_filter('wp_mail_content_type', array('EE_Error', 'set_content_type')); |
|
149 | - } |
|
150 | - } |
|
151 | - |
|
152 | - |
|
153 | - |
|
154 | - /** |
|
155 | - * Loads all the hooks which make requests to old versions of the API |
|
156 | - * appear the same as they always did |
|
157 | - */ |
|
158 | - protected static function _set_hooks_for_changes() |
|
159 | - { |
|
160 | - $folder_contents = EEH_File::get_contents_of_folders(array(EE_LIBRARIES . 'rest_api' . DS . 'changes'), false); |
|
161 | - foreach ($folder_contents as $classname_in_namespace => $filepath) { |
|
162 | - //ignore the base parent class |
|
163 | - if ($classname_in_namespace === 'Changes_In_Base') { |
|
164 | - continue; |
|
165 | - } |
|
166 | - $full_classname = 'EventEspresso\core\libraries\rest_api\changes\\' . $classname_in_namespace; |
|
167 | - if (class_exists($full_classname)) { |
|
168 | - $instance_of_class = new $full_classname; |
|
169 | - if ($instance_of_class instanceof EventEspresso\core\libraries\rest_api\changes\Changes_In_Base) { |
|
170 | - $instance_of_class->set_hooks(); |
|
171 | - } |
|
172 | - } |
|
173 | - } |
|
174 | - } |
|
175 | - |
|
176 | - |
|
177 | - |
|
178 | - /** |
|
179 | - * Filters the WP routes to add our EE-related ones. This takes a bit of time |
|
180 | - * so we actually prefer to only do it when an EE plugin is activated or upgraded |
|
181 | - */ |
|
182 | - public static function register_routes() |
|
183 | - { |
|
184 | - foreach (EED_Core_Rest_Api::get_ee_route_data() as $namespace => $relative_urls) { |
|
185 | - foreach ($relative_urls as $endpoint => $routes) { |
|
186 | - foreach ($routes as $route) { |
|
187 | - register_rest_route( |
|
188 | - $namespace, |
|
189 | - $endpoint, |
|
190 | - array( |
|
191 | - 'callback' => $route['callback'], |
|
192 | - 'methods' => $route['methods'], |
|
193 | - 'args' => isset($route['args']) ? $route['args'] : array(), |
|
194 | - ) |
|
195 | - ); |
|
196 | - } |
|
197 | - } |
|
198 | - } |
|
199 | - } |
|
200 | - |
|
201 | - |
|
202 | - |
|
203 | - /** |
|
204 | - * Checks if there was a version change or something that merits invalidating the cached |
|
205 | - * route data. If so, invalidates the cached route data so that it gets refreshed |
|
206 | - * next time the WP API is used |
|
207 | - */ |
|
208 | - public static function invalidate_cached_route_data_on_version_change() |
|
209 | - { |
|
210 | - if (EE_System::instance()->detect_req_type() != EE_System::req_type_normal) { |
|
211 | - EED_Core_Rest_Api::invalidate_cached_route_data(); |
|
212 | - } |
|
213 | - foreach (EE_Registry::instance()->addons as $addon) { |
|
214 | - if ($addon instanceof EE_Addon && $addon->detect_req_type() != EE_System::req_type_normal) { |
|
215 | - EED_Core_Rest_Api::invalidate_cached_route_data(); |
|
216 | - } |
|
217 | - } |
|
218 | - } |
|
219 | - |
|
220 | - |
|
221 | - |
|
222 | - /** |
|
223 | - * Removes the cached route data so it will get refreshed next time the WP API is used |
|
224 | - */ |
|
225 | - public static function invalidate_cached_route_data() |
|
226 | - { |
|
227 | - //delete the saved EE REST API routes |
|
228 | - foreach (EED_Core_Rest_Api::versions_served() as $version => $hidden) { |
|
229 | - delete_option(EED_Core_Rest_Api::saved_routes_option_names . $version); |
|
230 | - } |
|
231 | - } |
|
232 | - |
|
233 | - |
|
234 | - |
|
235 | - /** |
|
236 | - * Gets the EE route data |
|
237 | - * |
|
238 | - * @return array top-level key is the namespace, next-level key is the route and its value is array{ |
|
239 | - * @type string|array $callback |
|
240 | - * @type string $methods |
|
241 | - * @type boolean $hidden_endpoint |
|
242 | - * } |
|
243 | - */ |
|
244 | - public static function get_ee_route_data() |
|
245 | - { |
|
246 | - $ee_routes = array(); |
|
247 | - foreach (self::versions_served() as $version => $hidden_endpoints) { |
|
248 | - $ee_routes[self::ee_api_namespace . $version] = self::_get_ee_route_data_for_version($version, |
|
249 | - $hidden_endpoints); |
|
250 | - } |
|
251 | - return $ee_routes; |
|
252 | - } |
|
253 | - |
|
254 | - |
|
255 | - |
|
256 | - /** |
|
257 | - * Gets the EE route data from the wp options if it exists already, |
|
258 | - * otherwise re-generates it and saves it to the option |
|
259 | - * |
|
260 | - * @param string $version |
|
261 | - * @param boolean $hidden_endpoints |
|
262 | - * @return array |
|
263 | - */ |
|
264 | - protected static function _get_ee_route_data_for_version($version, $hidden_endpoints = false) |
|
265 | - { |
|
266 | - $ee_routes = get_option(self::saved_routes_option_names . $version, null); |
|
267 | - if ( ! $ee_routes || (defined('EE_REST_API_DEBUG_MODE') && EE_REST_API_DEBUG_MODE)) { |
|
268 | - $ee_routes = self::_save_ee_route_data_for_version($version, $hidden_endpoints); |
|
269 | - } |
|
270 | - return $ee_routes; |
|
271 | - } |
|
272 | - |
|
273 | - |
|
274 | - |
|
275 | - /** |
|
276 | - * Saves the EE REST API route data to a wp option and returns it |
|
277 | - * |
|
278 | - * @param string $version |
|
279 | - * @param boolean $hidden_endpoints |
|
280 | - * @return mixed|null|void |
|
281 | - */ |
|
282 | - protected static function _save_ee_route_data_for_version($version, $hidden_endpoints = false) |
|
283 | - { |
|
284 | - $instance = self::instance(); |
|
285 | - $routes = apply_filters( |
|
286 | - 'EED_Core_Rest_Api__save_ee_route_data_for_version__routes', |
|
287 | - array_replace_recursive( |
|
288 | - $instance->_get_config_route_data_for_version($version, $hidden_endpoints), |
|
289 | - $instance->_get_meta_route_data_for_version($version, $hidden_endpoints), |
|
290 | - $instance->_get_model_route_data_for_version($version, $hidden_endpoints), |
|
291 | - $instance->_get_rpc_route_data_for_version($version, $hidden_endpoints) |
|
292 | - ) |
|
293 | - ); |
|
294 | - $option_name = self::saved_routes_option_names . $version; |
|
295 | - if (get_option($option_name)) { |
|
296 | - update_option($option_name, $routes, true); |
|
297 | - } else { |
|
298 | - add_option($option_name, $routes, null, 'no'); |
|
299 | - } |
|
300 | - return $routes; |
|
301 | - } |
|
302 | - |
|
303 | - |
|
304 | - |
|
305 | - /** |
|
306 | - * Calculates all the EE routes and saves it to a wordpress option so we don't |
|
307 | - * need to calculate it on every request |
|
308 | - * |
|
309 | - * @deprecated since version 4.9.1 |
|
310 | - * @return void |
|
311 | - */ |
|
312 | - public static function save_ee_routes() |
|
313 | - { |
|
314 | - if (EE_Maintenance_Mode::instance()->models_can_query()) { |
|
315 | - $instance = self::instance(); |
|
316 | - $routes = apply_filters( |
|
317 | - 'EED_Core_Rest_Api__save_ee_routes__routes', |
|
318 | - array_replace_recursive( |
|
319 | - $instance->_register_config_routes(), |
|
320 | - $instance->_register_meta_routes(), |
|
321 | - $instance->_register_model_routes(), |
|
322 | - $instance->_register_rpc_routes() |
|
323 | - ) |
|
324 | - ); |
|
325 | - update_option(self::saved_routes_option_names, $routes, true); |
|
326 | - } |
|
327 | - } |
|
328 | - |
|
329 | - |
|
330 | - |
|
331 | - /** |
|
332 | - * Gets all the route information relating to EE models |
|
333 | - * |
|
334 | - * @return array @see get_ee_route_data |
|
335 | - * @deprecated since version 4.9.1 |
|
336 | - */ |
|
337 | - protected function _register_model_routes() |
|
338 | - { |
|
339 | - $model_routes = array(); |
|
340 | - foreach (self::versions_served() as $version => $hidden_endpoint) { |
|
341 | - $model_routes[EED_Core_Rest_Api::ee_api_namespace |
|
342 | - . $version] = $this->_get_config_route_data_for_version($version, $hidden_endpoint); |
|
343 | - } |
|
344 | - return $model_routes; |
|
345 | - } |
|
346 | - |
|
347 | - |
|
348 | - |
|
349 | - /** |
|
350 | - * Gets the route data for EE models in the specified version |
|
351 | - * |
|
352 | - * @param string $version |
|
353 | - * @param boolean $hidden_endpoint |
|
354 | - * @return array |
|
355 | - */ |
|
356 | - protected function _get_model_route_data_for_version($version, $hidden_endpoint = false) |
|
357 | - { |
|
358 | - $model_version_info = new \EventEspresso\core\libraries\rest_api\Model_Version_Info($version); |
|
359 | - $models_to_register = apply_filters( |
|
360 | - 'FHEE__EED_Core_REST_API___register_model_routes', |
|
361 | - $model_version_info->models_for_requested_version() |
|
362 | - ); |
|
363 | - //let's not bother having endpoints for extra metas |
|
364 | - unset($models_to_register['Extra_Meta']); |
|
365 | - unset($models_to_register['Extra_Join']); |
|
366 | - $model_routes = array(); |
|
367 | - foreach ($models_to_register as $model_name => $model_classname) { |
|
368 | - $model = \EE_Registry::instance()->load_model($model_name); |
|
369 | - //yes we could just register one route for ALL models, but then they wouldn't show up in the index |
|
370 | - $plural_model_route = EEH_Inflector::pluralize_and_lower($model_name); |
|
371 | - $singular_model_route = $plural_model_route . '/(?P<id>\d+)'; |
|
372 | - $model_routes[$plural_model_route] = array( |
|
373 | - array( |
|
374 | - 'callback' => array( |
|
375 | - 'EventEspresso\core\libraries\rest_api\controllers\model\Read', |
|
376 | - 'handle_request_get_all', |
|
377 | - ), |
|
378 | - 'methods' => WP_REST_Server::READABLE, |
|
379 | - 'hidden_endpoint' => $hidden_endpoint, |
|
380 | - 'args' => $this->_get_read_query_params($model, $version), |
|
381 | - '_links' => array( |
|
382 | - 'self' => rest_url(EED_Core_Rest_Api::ee_api_namespace . $version . $singular_model_route), |
|
383 | - ), |
|
384 | - ), |
|
385 | - // array( |
|
386 | - // 'callback' => array( |
|
387 | - // 'EventEspresso\core\libraries\rest_api\controllers\model\Write', |
|
388 | - // 'handle_request_create_one' ), |
|
389 | - // 'methods' => WP_REST_Server::CREATABLE, |
|
390 | - // 'hidden_endpoint' => $hidden_endpoint |
|
391 | - // ) |
|
392 | - ); |
|
393 | - $model_routes[$singular_model_route] = array( |
|
394 | - array( |
|
395 | - 'callback' => array( |
|
396 | - 'EventEspresso\core\libraries\rest_api\controllers\model\Read', |
|
397 | - 'handle_request_get_one', |
|
398 | - ), |
|
399 | - 'methods' => WP_REST_Server::READABLE, |
|
400 | - 'hidden_endpoint' => $hidden_endpoint, |
|
401 | - 'args' => $this->_get_response_selection_query_params($model, $version), |
|
402 | - ), |
|
403 | - // array( |
|
404 | - // 'callback' => array( |
|
405 | - // 'EventEspresso\core\libraries\rest_api\controllers\model\Write', |
|
406 | - // 'handle_request_edit_one' ), |
|
407 | - // 'methods' => WP_REST_Server::EDITABLE, |
|
408 | - // 'hidden_endpoint' => $hidden_endpoint |
|
409 | - // ), |
|
410 | - ); |
|
411 | - //@todo: also handle DELETE for a single item |
|
412 | - foreach ($model_version_info->relation_settings($model) as $relation_name => $relation_obj) { |
|
413 | - $related_model_name_endpoint_part = EventEspresso\core\libraries\rest_api\controllers\model\Read::get_related_entity_name( |
|
414 | - $relation_name, |
|
415 | - $relation_obj |
|
416 | - ); |
|
417 | - $model_routes[$singular_model_route . '/' . $related_model_name_endpoint_part] = array( |
|
418 | - array( |
|
419 | - 'callback' => array( |
|
420 | - 'EventEspresso\core\libraries\rest_api\controllers\model\Read', |
|
421 | - 'handle_request_get_related', |
|
422 | - ), |
|
423 | - 'methods' => WP_REST_Server::READABLE, |
|
424 | - 'hidden_endpoint' => $hidden_endpoint, |
|
425 | - 'args' => $this->_get_read_query_params($relation_obj->get_other_model(), $version), |
|
426 | - ), |
|
427 | - // array( |
|
428 | - // 'callback' => array( |
|
429 | - // 'EventEspresso\core\libraries\rest_api\controllers\model\Write', |
|
430 | - // 'handle_request_create_or_update_related' ), |
|
431 | - // 'methods' => WP_REST_Server::EDITABLE, |
|
432 | - // 'hidden_endpoint' => $hidden_endpoint |
|
433 | - // ) |
|
434 | - ); |
|
435 | - //@todo: handle delete related and possibly remove relation (not sure hwo to distinguish) |
|
436 | - } |
|
437 | - } |
|
438 | - return $model_routes; |
|
439 | - } |
|
440 | - |
|
441 | - |
|
442 | - |
|
443 | - /** |
|
444 | - * Adds all the RPC-style routes (remote procedure call-like routes, ie |
|
445 | - * routes that don't conform to the traditional REST CRUD-style). |
|
446 | - * |
|
447 | - * @deprecated since 4.9.1 |
|
448 | - */ |
|
449 | - protected function _register_rpc_routes() |
|
450 | - { |
|
451 | - $routes = array(); |
|
452 | - foreach (self::versions_served() as $version => $hidden_endpoint) { |
|
453 | - $routes[self::ee_api_namespace . $version] = $this->_get_rpc_route_data_for_version($version, |
|
454 | - $hidden_endpoint); |
|
455 | - } |
|
456 | - return $routes; |
|
457 | - } |
|
458 | - |
|
459 | - |
|
460 | - |
|
461 | - /** |
|
462 | - * @param string $version |
|
463 | - * @param boolean $hidden_endpoint |
|
464 | - * @return array |
|
465 | - */ |
|
466 | - protected function _get_rpc_route_data_for_version($version, $hidden_endpoint = false) |
|
467 | - { |
|
468 | - $this_versions_routes = array(); |
|
469 | - //checkin endpoint |
|
470 | - $this_versions_routes['registrations/(?P<REG_ID>\d+)/toggle_checkin_for_datetime/(?P<DTT_ID>\d+)'] = array( |
|
471 | - array( |
|
472 | - 'callback' => array( |
|
473 | - 'EventEspresso\core\libraries\rest_api\controllers\rpc\Checkin', |
|
474 | - 'handle_request_toggle_checkin', |
|
475 | - ), |
|
476 | - 'methods' => WP_REST_Server::CREATABLE, |
|
477 | - 'hidden_endpoint' => $hidden_endpoint, |
|
478 | - 'args' => array( |
|
479 | - 'force' => array( |
|
480 | - 'required' => false, |
|
481 | - 'default' => false, |
|
482 | - 'description' => __('Whether to force toggle checkin, or to verify the registration status and allowed ticket uses', |
|
483 | - 'event_espresso'), |
|
484 | - ), |
|
485 | - ), |
|
486 | - ), |
|
487 | - ); |
|
488 | - return apply_filters( |
|
489 | - 'FHEE__EED_Core_Rest_Api___register_rpc_routes__this_versions_routes', |
|
490 | - $this_versions_routes, |
|
491 | - $version, |
|
492 | - $hidden_endpoint |
|
493 | - ); |
|
494 | - } |
|
495 | - |
|
496 | - |
|
497 | - |
|
498 | - /** |
|
499 | - * Gets the query params that can be used when request one or many |
|
500 | - * |
|
501 | - * @param EEM_Base $model |
|
502 | - * @param string $version |
|
503 | - * @return array |
|
504 | - */ |
|
505 | - protected function _get_response_selection_query_params(\EEM_Base $model, $version) |
|
506 | - { |
|
507 | - return apply_filters( |
|
508 | - 'FHEE__EED_Core_Rest_Api___get_response_selection_query_params', |
|
509 | - array( |
|
510 | - 'include' => array( |
|
511 | - 'required' => false, |
|
512 | - 'default' => '*', |
|
513 | - ), |
|
514 | - 'calculate' => array( |
|
515 | - 'required' => false, |
|
516 | - 'default' => '', |
|
517 | - 'enum' => self::$_field_calculator->retrieve_calculated_fields_for_model($model), |
|
518 | - ), |
|
519 | - ), |
|
520 | - $model, |
|
521 | - $version |
|
522 | - ); |
|
523 | - } |
|
524 | - |
|
525 | - |
|
526 | - |
|
527 | - /** |
|
528 | - * Gets info about reading query params that are acceptable |
|
529 | - * |
|
530 | - * @param \EEM_Base $model eg 'Event' or 'Venue' |
|
531 | - * @param string $version |
|
532 | - * @return array describing the args acceptable when querying this model |
|
533 | - * @throws \EE_Error |
|
534 | - */ |
|
535 | - protected function _get_read_query_params(\EEM_Base $model, $version) |
|
536 | - { |
|
537 | - $default_orderby = array(); |
|
538 | - foreach ($model->get_combined_primary_key_fields() as $key_field) { |
|
539 | - $default_orderby[$key_field->get_name()] = 'ASC'; |
|
540 | - } |
|
541 | - return array_merge( |
|
542 | - $this->_get_response_selection_query_params($model, $version), |
|
543 | - array( |
|
544 | - 'where' => array( |
|
545 | - 'required' => false, |
|
546 | - 'default' => array(), |
|
547 | - ), |
|
548 | - 'limit' => array( |
|
549 | - 'required' => false, |
|
550 | - 'default' => EED_Core_Rest_Api::get_default_query_limit(), |
|
551 | - ), |
|
552 | - 'order_by' => array( |
|
553 | - 'required' => false, |
|
554 | - 'default' => $default_orderby, |
|
555 | - ), |
|
556 | - 'group_by' => array( |
|
557 | - 'required' => false, |
|
558 | - 'default' => null, |
|
559 | - ), |
|
560 | - 'having' => array( |
|
561 | - 'required' => false, |
|
562 | - 'default' => null, |
|
563 | - ), |
|
564 | - 'caps' => array( |
|
565 | - 'required' => false, |
|
566 | - 'default' => EEM_Base::caps_read, |
|
567 | - ), |
|
568 | - ) |
|
569 | - ); |
|
570 | - } |
|
571 | - |
|
572 | - |
|
573 | - |
|
574 | - /** |
|
575 | - * Gets routes for the config |
|
576 | - * |
|
577 | - * @return array @see _register_model_routes |
|
578 | - * @deprecated since version 4.9.1 |
|
579 | - */ |
|
580 | - protected function _register_config_routes() |
|
581 | - { |
|
582 | - $config_routes = array(); |
|
583 | - foreach (self::versions_served() as $version => $hidden_endpoint) { |
|
584 | - $config_routes[self::ee_api_namespace . $version] = $this->_get_config_route_data_for_version($version, |
|
585 | - $hidden_endpoint); |
|
586 | - } |
|
587 | - return $config_routes; |
|
588 | - } |
|
589 | - |
|
590 | - |
|
591 | - |
|
592 | - /** |
|
593 | - * Gets routes for the config for the specified version |
|
594 | - * |
|
595 | - * @param string $version |
|
596 | - * @param boolean $hidden_endpoint |
|
597 | - * @return array |
|
598 | - */ |
|
599 | - protected function _get_config_route_data_for_version($version, $hidden_endpoint) |
|
600 | - { |
|
601 | - return array( |
|
602 | - 'config' => array( |
|
603 | - array( |
|
604 | - 'callback' => array( |
|
605 | - 'EventEspresso\core\libraries\rest_api\controllers\config\Read', |
|
606 | - 'handle_request', |
|
607 | - ), |
|
608 | - 'methods' => WP_REST_Server::READABLE, |
|
609 | - 'hidden_endpoint' => $hidden_endpoint, |
|
610 | - ), |
|
611 | - ), |
|
612 | - 'site_info' => array( |
|
613 | - array( |
|
614 | - 'callback' => array( |
|
615 | - 'EventEspresso\core\libraries\rest_api\controllers\config\Read', |
|
616 | - 'handle_request_site_info', |
|
617 | - ), |
|
618 | - 'methods' => WP_REST_Server::READABLE, |
|
619 | - 'hidden_endpoint' => $hidden_endpoint, |
|
620 | - ), |
|
621 | - ), |
|
622 | - ); |
|
623 | - } |
|
624 | - |
|
625 | - |
|
626 | - |
|
627 | - /** |
|
628 | - * Gets the meta info routes |
|
629 | - * |
|
630 | - * @return array @see _register_model_routes |
|
631 | - * @deprecated since version 4.9.1 |
|
632 | - */ |
|
633 | - protected function _register_meta_routes() |
|
634 | - { |
|
635 | - $meta_routes = array(); |
|
636 | - foreach (self::versions_served() as $version => $hidden_endpoint) { |
|
637 | - $meta_routes[self::ee_api_namespace . $version] = $this->_get_meta_route_data_for_version($version, |
|
638 | - $hidden_endpoint); |
|
639 | - } |
|
640 | - return $meta_routes; |
|
641 | - } |
|
642 | - |
|
643 | - |
|
644 | - |
|
645 | - /** |
|
646 | - * @param string $version |
|
647 | - * @param boolean $hidden_endpoint |
|
648 | - * @return array |
|
649 | - */ |
|
650 | - protected function _get_meta_route_data_for_version($version, $hidden_endpoint = false) |
|
651 | - { |
|
652 | - return array( |
|
653 | - 'resources' => array( |
|
654 | - array( |
|
655 | - 'callback' => array( |
|
656 | - 'EventEspresso\core\libraries\rest_api\controllers\model\Meta', |
|
657 | - 'handle_request_models_meta', |
|
658 | - ), |
|
659 | - 'methods' => WP_REST_Server::READABLE, |
|
660 | - 'hidden_endpoint' => $hidden_endpoint, |
|
661 | - ), |
|
662 | - ), |
|
663 | - ); |
|
664 | - } |
|
665 | - |
|
666 | - |
|
667 | - |
|
668 | - /** |
|
669 | - * Tries to hide old 4.6 endpoints from the |
|
670 | - * |
|
671 | - * @param array $route_data |
|
672 | - * @return array |
|
673 | - */ |
|
674 | - public static function hide_old_endpoints($route_data) |
|
675 | - { |
|
676 | - //allow API clients to override which endpoints get hidden, in case |
|
677 | - //they want to discover particular endpoints |
|
678 | - //also, we don't have access to the request so we have to just grab it from the superglobal |
|
679 | - $force_show_ee_namespace = ltrim( |
|
680 | - EEH_Array::is_set($_REQUEST, 'force_show_ee_namespace', ''), |
|
681 | - '/' |
|
682 | - ); |
|
683 | - foreach (EED_Core_Rest_Api::get_ee_route_data() as $namespace => $relative_urls) { |
|
684 | - foreach ($relative_urls as $endpoint => $routes) { |
|
685 | - foreach ($routes as $route) { |
|
686 | - //by default, hide "hidden_endpoint"s, unless the request indicates |
|
687 | - //to $force_show_ee_namespace, in which case only show that one |
|
688 | - //namespace's endpoints (and hide all others) |
|
689 | - if (($route['hidden_endpoint'] && $force_show_ee_namespace === '') |
|
690 | - || ($force_show_ee_namespace !== '' && $force_show_ee_namespace !== $namespace) |
|
691 | - ) { |
|
692 | - $full_route = '/' . ltrim($namespace, '/') . '/' . ltrim($endpoint, '/'); |
|
693 | - unset($route_data[$full_route]); |
|
694 | - } |
|
695 | - } |
|
696 | - } |
|
697 | - } |
|
698 | - return $route_data; |
|
699 | - } |
|
700 | - |
|
701 | - |
|
702 | - |
|
703 | - /** |
|
704 | - * Returns an array describing which versions of core support serving requests for. |
|
705 | - * Keys are core versions' major and minor version, and values are the |
|
706 | - * LOWEST requested version they can serve. Eg, 4.7 can serve requests for 4.6-like |
|
707 | - * data by just removing a few models and fields from the responses. However, 4.15 might remove |
|
708 | - * the answers table entirely, in which case it would be very difficult for |
|
709 | - * it to serve 4.6-style responses. |
|
710 | - * Versions of core that are missing from this array are unknowns. |
|
711 | - * previous ver |
|
712 | - * |
|
713 | - * @return array |
|
714 | - */ |
|
715 | - public static function version_compatibilities() |
|
716 | - { |
|
717 | - return apply_filters( |
|
718 | - 'FHEE__EED_Core_REST_API__version_compatibilities', |
|
719 | - array( |
|
720 | - '4.8.29' => '4.8.29', |
|
721 | - '4.8.33' => '4.8.29', |
|
722 | - '4.8.34' => '4.8.29', |
|
723 | - '4.8.36' => '4.8.29', |
|
724 | - ) |
|
725 | - ); |
|
726 | - } |
|
727 | - |
|
728 | - |
|
729 | - |
|
730 | - /** |
|
731 | - * Gets the latest API version served. Eg if there |
|
732 | - * are two versions served of the API, 4.8.29 and 4.8.32, and |
|
733 | - * we are on core version 4.8.34, it will return the string "4.8.32" |
|
734 | - * |
|
735 | - * @return string |
|
736 | - */ |
|
737 | - public static function latest_rest_api_version() |
|
738 | - { |
|
739 | - $versions_served = \EED_Core_Rest_Api::versions_served(); |
|
740 | - $versions_served_keys = array_keys($versions_served); |
|
741 | - return end($versions_served_keys); |
|
742 | - } |
|
743 | - |
|
744 | - |
|
745 | - |
|
746 | - /** |
|
747 | - * Using EED_Core_Rest_Api::version_compatibilities(), determines what version of |
|
748 | - * EE the API can serve requests for. Eg, if we are on 4.15 of core, and |
|
749 | - * we can serve requests from 4.12 or later, this will return array( '4.12', '4.13', '4.14', '4.15' ). |
|
750 | - * We also indicate whether or not this version should be put in the index or not |
|
751 | - * |
|
752 | - * @return array keys are API version numbers (just major and minor numbers), and values |
|
753 | - * are whether or not they should be hidden |
|
754 | - */ |
|
755 | - public static function versions_served() |
|
756 | - { |
|
757 | - $versions_served = array(); |
|
758 | - $possibly_served_versions = EED_Core_Rest_Api::version_compatibilities(); |
|
759 | - $lowest_compatible_version = end($possibly_served_versions); |
|
760 | - reset($possibly_served_versions); |
|
761 | - $versions_served_historically = array_keys($possibly_served_versions); |
|
762 | - $latest_version = end($versions_served_historically); |
|
763 | - reset($versions_served_historically); |
|
764 | - //for each version of core we have ever served: |
|
765 | - foreach ($versions_served_historically as $key_versioned_endpoint) { |
|
766 | - //if it's not above the current core version, and it's compatible with the current version of core |
|
767 | - if ($key_versioned_endpoint == $latest_version) { |
|
768 | - //don't hide the latest version in the index |
|
769 | - $versions_served[$key_versioned_endpoint] = false; |
|
770 | - } else if ( |
|
771 | - $key_versioned_endpoint < EED_Core_Rest_Api::core_version() |
|
772 | - && $key_versioned_endpoint >= $lowest_compatible_version |
|
773 | - ) { |
|
774 | - //include, but hide, previous versions which are still supported |
|
775 | - $versions_served[$key_versioned_endpoint] = true; |
|
776 | - } elseif ( |
|
777 | - apply_filters( |
|
778 | - 'FHEE__EED_Core_Rest_Api__versions_served__include_incompatible_versions', |
|
779 | - false, |
|
780 | - $possibly_served_versions |
|
781 | - ) |
|
782 | - ) { |
|
783 | - //if a version is no longer supported, don't include it in index or list of versions served |
|
784 | - $versions_served[$key_versioned_endpoint] = true; |
|
785 | - } |
|
786 | - } |
|
787 | - return $versions_served; |
|
788 | - } |
|
789 | - |
|
790 | - |
|
791 | - |
|
792 | - /** |
|
793 | - * Gets the major and minor version of EE core's version string |
|
794 | - * |
|
795 | - * @return string |
|
796 | - */ |
|
797 | - public static function core_version() |
|
798 | - { |
|
799 | - return apply_filters('FHEE__EED_Core_REST_API__core_version', |
|
800 | - implode('.', array_slice(explode('.', espresso_version()), 0, 3))); |
|
801 | - } |
|
802 | - |
|
803 | - |
|
804 | - |
|
805 | - /** |
|
806 | - * Gets the default limit that should be used when querying for resources |
|
807 | - * |
|
808 | - * @return int |
|
809 | - */ |
|
810 | - public static function get_default_query_limit() |
|
811 | - { |
|
812 | - //we actually don't use a const because we want folks to always use |
|
813 | - //this method, not the const directly |
|
814 | - return apply_filters( |
|
815 | - 'FHEE__EED_Core_Rest_Api__get_default_query_limit', |
|
816 | - 50 |
|
817 | - ); |
|
818 | - } |
|
819 | - |
|
820 | - |
|
821 | - |
|
822 | - /** |
|
823 | - * run - initial module setup |
|
824 | - * |
|
825 | - * @access public |
|
826 | - * @param WP $WP |
|
827 | - * @return void |
|
828 | - */ |
|
829 | - public function run($WP) |
|
830 | - { |
|
831 | - } |
|
26 | + /** |
|
27 | + * string used in _links response bodies to make them globally unique. |
|
28 | + * |
|
29 | + * @see http://v2.wp-api.org/extending/linking/ |
|
30 | + */ |
|
31 | + const ee_api_link_namespace = 'https://api.eventespresso.com/'; |
|
32 | + |
|
33 | + /** |
|
34 | + * @var Calculated_Model_Fields |
|
35 | + */ |
|
36 | + protected static $_field_calculator = null; |
|
37 | + |
|
38 | + |
|
39 | + |
|
40 | + /** |
|
41 | + * @return EED_Core_Rest_Api |
|
42 | + */ |
|
43 | + public static function instance() |
|
44 | + { |
|
45 | + self::$_field_calculator = new Calculated_Model_Fields(); |
|
46 | + return parent::get_instance(__CLASS__); |
|
47 | + } |
|
48 | + |
|
49 | + |
|
50 | + |
|
51 | + /** |
|
52 | + * set_hooks - for hooking into EE Core, other modules, etc |
|
53 | + * |
|
54 | + * @access public |
|
55 | + * @return void |
|
56 | + */ |
|
57 | + public static function set_hooks() |
|
58 | + { |
|
59 | + self::set_hooks_both(); |
|
60 | + } |
|
61 | + |
|
62 | + |
|
63 | + |
|
64 | + /** |
|
65 | + * set_hooks_admin - for hooking into EE Admin Core, other modules, etc |
|
66 | + * |
|
67 | + * @access public |
|
68 | + * @return void |
|
69 | + */ |
|
70 | + public static function set_hooks_admin() |
|
71 | + { |
|
72 | + self::set_hooks_both(); |
|
73 | + } |
|
74 | + |
|
75 | + |
|
76 | + |
|
77 | + public static function set_hooks_both() |
|
78 | + { |
|
79 | + add_action('rest_api_init', array('EED_Core_Rest_Api', 'register_routes'), 10); |
|
80 | + add_action('rest_api_init', array('EED_Core_Rest_Api', 'set_hooks_rest_api'), 5); |
|
81 | + add_filter('rest_route_data', array('EED_Core_Rest_Api', 'hide_old_endpoints'), 10, 2); |
|
82 | + add_filter('rest_index', |
|
83 | + array('EventEspresso\core\libraries\rest_api\controllers\model\Meta', 'filter_ee_metadata_into_index')); |
|
84 | + EED_Core_Rest_Api::invalidate_cached_route_data_on_version_change(); |
|
85 | + } |
|
86 | + |
|
87 | + |
|
88 | + |
|
89 | + /** |
|
90 | + * sets up hooks which only need to be included as part of REST API requests; |
|
91 | + * other requests like to the frontend or admin etc don't need them |
|
92 | + */ |
|
93 | + public static function set_hooks_rest_api() |
|
94 | + { |
|
95 | + //set hooks which account for changes made to the API |
|
96 | + EED_Core_Rest_Api::_set_hooks_for_changes(); |
|
97 | + EED_Core_Rest_Api::maybe_notify_of_basic_auth_removal(); |
|
98 | + } |
|
99 | + |
|
100 | + |
|
101 | + |
|
102 | + /** |
|
103 | + * public wrapper of _set_hooks_for_changes. |
|
104 | + * Loads all the hooks which make requests to old versions of the API |
|
105 | + * appear the same as they always did |
|
106 | + */ |
|
107 | + public static function set_hooks_for_changes() |
|
108 | + { |
|
109 | + self::_set_hooks_for_changes(); |
|
110 | + } |
|
111 | + |
|
112 | + |
|
113 | + |
|
114 | + /** |
|
115 | + * If the user appears to be using WP API basic auth, tell them (via a persistent |
|
116 | + * admin notice and an email) that we're going to remove it soon, so they should |
|
117 | + * replace it with application passwords. |
|
118 | + */ |
|
119 | + public static function maybe_notify_of_basic_auth_removal() |
|
120 | + { |
|
121 | + if ( |
|
122 | + apply_filters( |
|
123 | + 'FHEE__EED_Core_Rest_Api__maybe_notify_of_basic_auth_removal__override', |
|
124 | + ! isset($_SERVER['PHP_AUTH_USER']) |
|
125 | + && ! isset($_SERVER['HTTP_AUTHORIZATION']) |
|
126 | + ) |
|
127 | + ) { |
|
128 | + //sure it's a WP API request, but they aren't using basic auth, so don't bother them |
|
129 | + return; |
|
130 | + } |
|
131 | + //ok they're using the WP API with Basic Auth |
|
132 | + $message = sprintf( |
|
133 | + __('We noticed you\'re using the WP API, which is used by the Event Espresso 4 mobile apps. Because of security and compatibility concerns, we will soon be removing our default authentication mechanism, WP API Basic Auth, from Event Espresso. It is recommended you instead install the %1$sWP Application Passwords plugin%2$s and use it with the EE4 Mobile apps. See %3$sour mobile app documentation%2$s for more information. %4$sIf you have installed the WP API Basic Auth plugin separately, or are not using the Event Espresso 4 mobile apps, you can disregard this message.%4$sThe Event Espresso Team', |
|
134 | + 'event_espresso'), |
|
135 | + '<a href="https://wordpress.org/plugins/application-passwords/">', |
|
136 | + '</a>', |
|
137 | + '<a href="https://eventespresso.com/wiki/ee4-event-apps/#authentication">', |
|
138 | + '<br/>' |
|
139 | + ); |
|
140 | + EE_Error::add_persistent_admin_notice('using_basic_auth', $message); |
|
141 | + if ( ! get_option('ee_notified_admin_on_basic_auth_removal', false)) { |
|
142 | + add_option('ee_notified_admin_on_basic_auth_removal', true); |
|
143 | + //piggy back off EE_Error::set_content_type, which sets the content type to HTML |
|
144 | + add_filter('wp_mail_content_type', array('EE_Error', 'set_content_type')); |
|
145 | + //and send the message to the site admin too |
|
146 | + wp_mail(get_option('admin_email'), |
|
147 | + __('Notice of Removal of WP API Basic Auth From Event Espresso 4', 'event_espresso'), $message); |
|
148 | + remove_filter('wp_mail_content_type', array('EE_Error', 'set_content_type')); |
|
149 | + } |
|
150 | + } |
|
151 | + |
|
152 | + |
|
153 | + |
|
154 | + /** |
|
155 | + * Loads all the hooks which make requests to old versions of the API |
|
156 | + * appear the same as they always did |
|
157 | + */ |
|
158 | + protected static function _set_hooks_for_changes() |
|
159 | + { |
|
160 | + $folder_contents = EEH_File::get_contents_of_folders(array(EE_LIBRARIES . 'rest_api' . DS . 'changes'), false); |
|
161 | + foreach ($folder_contents as $classname_in_namespace => $filepath) { |
|
162 | + //ignore the base parent class |
|
163 | + if ($classname_in_namespace === 'Changes_In_Base') { |
|
164 | + continue; |
|
165 | + } |
|
166 | + $full_classname = 'EventEspresso\core\libraries\rest_api\changes\\' . $classname_in_namespace; |
|
167 | + if (class_exists($full_classname)) { |
|
168 | + $instance_of_class = new $full_classname; |
|
169 | + if ($instance_of_class instanceof EventEspresso\core\libraries\rest_api\changes\Changes_In_Base) { |
|
170 | + $instance_of_class->set_hooks(); |
|
171 | + } |
|
172 | + } |
|
173 | + } |
|
174 | + } |
|
175 | + |
|
176 | + |
|
177 | + |
|
178 | + /** |
|
179 | + * Filters the WP routes to add our EE-related ones. This takes a bit of time |
|
180 | + * so we actually prefer to only do it when an EE plugin is activated or upgraded |
|
181 | + */ |
|
182 | + public static function register_routes() |
|
183 | + { |
|
184 | + foreach (EED_Core_Rest_Api::get_ee_route_data() as $namespace => $relative_urls) { |
|
185 | + foreach ($relative_urls as $endpoint => $routes) { |
|
186 | + foreach ($routes as $route) { |
|
187 | + register_rest_route( |
|
188 | + $namespace, |
|
189 | + $endpoint, |
|
190 | + array( |
|
191 | + 'callback' => $route['callback'], |
|
192 | + 'methods' => $route['methods'], |
|
193 | + 'args' => isset($route['args']) ? $route['args'] : array(), |
|
194 | + ) |
|
195 | + ); |
|
196 | + } |
|
197 | + } |
|
198 | + } |
|
199 | + } |
|
200 | + |
|
201 | + |
|
202 | + |
|
203 | + /** |
|
204 | + * Checks if there was a version change or something that merits invalidating the cached |
|
205 | + * route data. If so, invalidates the cached route data so that it gets refreshed |
|
206 | + * next time the WP API is used |
|
207 | + */ |
|
208 | + public static function invalidate_cached_route_data_on_version_change() |
|
209 | + { |
|
210 | + if (EE_System::instance()->detect_req_type() != EE_System::req_type_normal) { |
|
211 | + EED_Core_Rest_Api::invalidate_cached_route_data(); |
|
212 | + } |
|
213 | + foreach (EE_Registry::instance()->addons as $addon) { |
|
214 | + if ($addon instanceof EE_Addon && $addon->detect_req_type() != EE_System::req_type_normal) { |
|
215 | + EED_Core_Rest_Api::invalidate_cached_route_data(); |
|
216 | + } |
|
217 | + } |
|
218 | + } |
|
219 | + |
|
220 | + |
|
221 | + |
|
222 | + /** |
|
223 | + * Removes the cached route data so it will get refreshed next time the WP API is used |
|
224 | + */ |
|
225 | + public static function invalidate_cached_route_data() |
|
226 | + { |
|
227 | + //delete the saved EE REST API routes |
|
228 | + foreach (EED_Core_Rest_Api::versions_served() as $version => $hidden) { |
|
229 | + delete_option(EED_Core_Rest_Api::saved_routes_option_names . $version); |
|
230 | + } |
|
231 | + } |
|
232 | + |
|
233 | + |
|
234 | + |
|
235 | + /** |
|
236 | + * Gets the EE route data |
|
237 | + * |
|
238 | + * @return array top-level key is the namespace, next-level key is the route and its value is array{ |
|
239 | + * @type string|array $callback |
|
240 | + * @type string $methods |
|
241 | + * @type boolean $hidden_endpoint |
|
242 | + * } |
|
243 | + */ |
|
244 | + public static function get_ee_route_data() |
|
245 | + { |
|
246 | + $ee_routes = array(); |
|
247 | + foreach (self::versions_served() as $version => $hidden_endpoints) { |
|
248 | + $ee_routes[self::ee_api_namespace . $version] = self::_get_ee_route_data_for_version($version, |
|
249 | + $hidden_endpoints); |
|
250 | + } |
|
251 | + return $ee_routes; |
|
252 | + } |
|
253 | + |
|
254 | + |
|
255 | + |
|
256 | + /** |
|
257 | + * Gets the EE route data from the wp options if it exists already, |
|
258 | + * otherwise re-generates it and saves it to the option |
|
259 | + * |
|
260 | + * @param string $version |
|
261 | + * @param boolean $hidden_endpoints |
|
262 | + * @return array |
|
263 | + */ |
|
264 | + protected static function _get_ee_route_data_for_version($version, $hidden_endpoints = false) |
|
265 | + { |
|
266 | + $ee_routes = get_option(self::saved_routes_option_names . $version, null); |
|
267 | + if ( ! $ee_routes || (defined('EE_REST_API_DEBUG_MODE') && EE_REST_API_DEBUG_MODE)) { |
|
268 | + $ee_routes = self::_save_ee_route_data_for_version($version, $hidden_endpoints); |
|
269 | + } |
|
270 | + return $ee_routes; |
|
271 | + } |
|
272 | + |
|
273 | + |
|
274 | + |
|
275 | + /** |
|
276 | + * Saves the EE REST API route data to a wp option and returns it |
|
277 | + * |
|
278 | + * @param string $version |
|
279 | + * @param boolean $hidden_endpoints |
|
280 | + * @return mixed|null|void |
|
281 | + */ |
|
282 | + protected static function _save_ee_route_data_for_version($version, $hidden_endpoints = false) |
|
283 | + { |
|
284 | + $instance = self::instance(); |
|
285 | + $routes = apply_filters( |
|
286 | + 'EED_Core_Rest_Api__save_ee_route_data_for_version__routes', |
|
287 | + array_replace_recursive( |
|
288 | + $instance->_get_config_route_data_for_version($version, $hidden_endpoints), |
|
289 | + $instance->_get_meta_route_data_for_version($version, $hidden_endpoints), |
|
290 | + $instance->_get_model_route_data_for_version($version, $hidden_endpoints), |
|
291 | + $instance->_get_rpc_route_data_for_version($version, $hidden_endpoints) |
|
292 | + ) |
|
293 | + ); |
|
294 | + $option_name = self::saved_routes_option_names . $version; |
|
295 | + if (get_option($option_name)) { |
|
296 | + update_option($option_name, $routes, true); |
|
297 | + } else { |
|
298 | + add_option($option_name, $routes, null, 'no'); |
|
299 | + } |
|
300 | + return $routes; |
|
301 | + } |
|
302 | + |
|
303 | + |
|
304 | + |
|
305 | + /** |
|
306 | + * Calculates all the EE routes and saves it to a wordpress option so we don't |
|
307 | + * need to calculate it on every request |
|
308 | + * |
|
309 | + * @deprecated since version 4.9.1 |
|
310 | + * @return void |
|
311 | + */ |
|
312 | + public static function save_ee_routes() |
|
313 | + { |
|
314 | + if (EE_Maintenance_Mode::instance()->models_can_query()) { |
|
315 | + $instance = self::instance(); |
|
316 | + $routes = apply_filters( |
|
317 | + 'EED_Core_Rest_Api__save_ee_routes__routes', |
|
318 | + array_replace_recursive( |
|
319 | + $instance->_register_config_routes(), |
|
320 | + $instance->_register_meta_routes(), |
|
321 | + $instance->_register_model_routes(), |
|
322 | + $instance->_register_rpc_routes() |
|
323 | + ) |
|
324 | + ); |
|
325 | + update_option(self::saved_routes_option_names, $routes, true); |
|
326 | + } |
|
327 | + } |
|
328 | + |
|
329 | + |
|
330 | + |
|
331 | + /** |
|
332 | + * Gets all the route information relating to EE models |
|
333 | + * |
|
334 | + * @return array @see get_ee_route_data |
|
335 | + * @deprecated since version 4.9.1 |
|
336 | + */ |
|
337 | + protected function _register_model_routes() |
|
338 | + { |
|
339 | + $model_routes = array(); |
|
340 | + foreach (self::versions_served() as $version => $hidden_endpoint) { |
|
341 | + $model_routes[EED_Core_Rest_Api::ee_api_namespace |
|
342 | + . $version] = $this->_get_config_route_data_for_version($version, $hidden_endpoint); |
|
343 | + } |
|
344 | + return $model_routes; |
|
345 | + } |
|
346 | + |
|
347 | + |
|
348 | + |
|
349 | + /** |
|
350 | + * Gets the route data for EE models in the specified version |
|
351 | + * |
|
352 | + * @param string $version |
|
353 | + * @param boolean $hidden_endpoint |
|
354 | + * @return array |
|
355 | + */ |
|
356 | + protected function _get_model_route_data_for_version($version, $hidden_endpoint = false) |
|
357 | + { |
|
358 | + $model_version_info = new \EventEspresso\core\libraries\rest_api\Model_Version_Info($version); |
|
359 | + $models_to_register = apply_filters( |
|
360 | + 'FHEE__EED_Core_REST_API___register_model_routes', |
|
361 | + $model_version_info->models_for_requested_version() |
|
362 | + ); |
|
363 | + //let's not bother having endpoints for extra metas |
|
364 | + unset($models_to_register['Extra_Meta']); |
|
365 | + unset($models_to_register['Extra_Join']); |
|
366 | + $model_routes = array(); |
|
367 | + foreach ($models_to_register as $model_name => $model_classname) { |
|
368 | + $model = \EE_Registry::instance()->load_model($model_name); |
|
369 | + //yes we could just register one route for ALL models, but then they wouldn't show up in the index |
|
370 | + $plural_model_route = EEH_Inflector::pluralize_and_lower($model_name); |
|
371 | + $singular_model_route = $plural_model_route . '/(?P<id>\d+)'; |
|
372 | + $model_routes[$plural_model_route] = array( |
|
373 | + array( |
|
374 | + 'callback' => array( |
|
375 | + 'EventEspresso\core\libraries\rest_api\controllers\model\Read', |
|
376 | + 'handle_request_get_all', |
|
377 | + ), |
|
378 | + 'methods' => WP_REST_Server::READABLE, |
|
379 | + 'hidden_endpoint' => $hidden_endpoint, |
|
380 | + 'args' => $this->_get_read_query_params($model, $version), |
|
381 | + '_links' => array( |
|
382 | + 'self' => rest_url(EED_Core_Rest_Api::ee_api_namespace . $version . $singular_model_route), |
|
383 | + ), |
|
384 | + ), |
|
385 | + // array( |
|
386 | + // 'callback' => array( |
|
387 | + // 'EventEspresso\core\libraries\rest_api\controllers\model\Write', |
|
388 | + // 'handle_request_create_one' ), |
|
389 | + // 'methods' => WP_REST_Server::CREATABLE, |
|
390 | + // 'hidden_endpoint' => $hidden_endpoint |
|
391 | + // ) |
|
392 | + ); |
|
393 | + $model_routes[$singular_model_route] = array( |
|
394 | + array( |
|
395 | + 'callback' => array( |
|
396 | + 'EventEspresso\core\libraries\rest_api\controllers\model\Read', |
|
397 | + 'handle_request_get_one', |
|
398 | + ), |
|
399 | + 'methods' => WP_REST_Server::READABLE, |
|
400 | + 'hidden_endpoint' => $hidden_endpoint, |
|
401 | + 'args' => $this->_get_response_selection_query_params($model, $version), |
|
402 | + ), |
|
403 | + // array( |
|
404 | + // 'callback' => array( |
|
405 | + // 'EventEspresso\core\libraries\rest_api\controllers\model\Write', |
|
406 | + // 'handle_request_edit_one' ), |
|
407 | + // 'methods' => WP_REST_Server::EDITABLE, |
|
408 | + // 'hidden_endpoint' => $hidden_endpoint |
|
409 | + // ), |
|
410 | + ); |
|
411 | + //@todo: also handle DELETE for a single item |
|
412 | + foreach ($model_version_info->relation_settings($model) as $relation_name => $relation_obj) { |
|
413 | + $related_model_name_endpoint_part = EventEspresso\core\libraries\rest_api\controllers\model\Read::get_related_entity_name( |
|
414 | + $relation_name, |
|
415 | + $relation_obj |
|
416 | + ); |
|
417 | + $model_routes[$singular_model_route . '/' . $related_model_name_endpoint_part] = array( |
|
418 | + array( |
|
419 | + 'callback' => array( |
|
420 | + 'EventEspresso\core\libraries\rest_api\controllers\model\Read', |
|
421 | + 'handle_request_get_related', |
|
422 | + ), |
|
423 | + 'methods' => WP_REST_Server::READABLE, |
|
424 | + 'hidden_endpoint' => $hidden_endpoint, |
|
425 | + 'args' => $this->_get_read_query_params($relation_obj->get_other_model(), $version), |
|
426 | + ), |
|
427 | + // array( |
|
428 | + // 'callback' => array( |
|
429 | + // 'EventEspresso\core\libraries\rest_api\controllers\model\Write', |
|
430 | + // 'handle_request_create_or_update_related' ), |
|
431 | + // 'methods' => WP_REST_Server::EDITABLE, |
|
432 | + // 'hidden_endpoint' => $hidden_endpoint |
|
433 | + // ) |
|
434 | + ); |
|
435 | + //@todo: handle delete related and possibly remove relation (not sure hwo to distinguish) |
|
436 | + } |
|
437 | + } |
|
438 | + return $model_routes; |
|
439 | + } |
|
440 | + |
|
441 | + |
|
442 | + |
|
443 | + /** |
|
444 | + * Adds all the RPC-style routes (remote procedure call-like routes, ie |
|
445 | + * routes that don't conform to the traditional REST CRUD-style). |
|
446 | + * |
|
447 | + * @deprecated since 4.9.1 |
|
448 | + */ |
|
449 | + protected function _register_rpc_routes() |
|
450 | + { |
|
451 | + $routes = array(); |
|
452 | + foreach (self::versions_served() as $version => $hidden_endpoint) { |
|
453 | + $routes[self::ee_api_namespace . $version] = $this->_get_rpc_route_data_for_version($version, |
|
454 | + $hidden_endpoint); |
|
455 | + } |
|
456 | + return $routes; |
|
457 | + } |
|
458 | + |
|
459 | + |
|
460 | + |
|
461 | + /** |
|
462 | + * @param string $version |
|
463 | + * @param boolean $hidden_endpoint |
|
464 | + * @return array |
|
465 | + */ |
|
466 | + protected function _get_rpc_route_data_for_version($version, $hidden_endpoint = false) |
|
467 | + { |
|
468 | + $this_versions_routes = array(); |
|
469 | + //checkin endpoint |
|
470 | + $this_versions_routes['registrations/(?P<REG_ID>\d+)/toggle_checkin_for_datetime/(?P<DTT_ID>\d+)'] = array( |
|
471 | + array( |
|
472 | + 'callback' => array( |
|
473 | + 'EventEspresso\core\libraries\rest_api\controllers\rpc\Checkin', |
|
474 | + 'handle_request_toggle_checkin', |
|
475 | + ), |
|
476 | + 'methods' => WP_REST_Server::CREATABLE, |
|
477 | + 'hidden_endpoint' => $hidden_endpoint, |
|
478 | + 'args' => array( |
|
479 | + 'force' => array( |
|
480 | + 'required' => false, |
|
481 | + 'default' => false, |
|
482 | + 'description' => __('Whether to force toggle checkin, or to verify the registration status and allowed ticket uses', |
|
483 | + 'event_espresso'), |
|
484 | + ), |
|
485 | + ), |
|
486 | + ), |
|
487 | + ); |
|
488 | + return apply_filters( |
|
489 | + 'FHEE__EED_Core_Rest_Api___register_rpc_routes__this_versions_routes', |
|
490 | + $this_versions_routes, |
|
491 | + $version, |
|
492 | + $hidden_endpoint |
|
493 | + ); |
|
494 | + } |
|
495 | + |
|
496 | + |
|
497 | + |
|
498 | + /** |
|
499 | + * Gets the query params that can be used when request one or many |
|
500 | + * |
|
501 | + * @param EEM_Base $model |
|
502 | + * @param string $version |
|
503 | + * @return array |
|
504 | + */ |
|
505 | + protected function _get_response_selection_query_params(\EEM_Base $model, $version) |
|
506 | + { |
|
507 | + return apply_filters( |
|
508 | + 'FHEE__EED_Core_Rest_Api___get_response_selection_query_params', |
|
509 | + array( |
|
510 | + 'include' => array( |
|
511 | + 'required' => false, |
|
512 | + 'default' => '*', |
|
513 | + ), |
|
514 | + 'calculate' => array( |
|
515 | + 'required' => false, |
|
516 | + 'default' => '', |
|
517 | + 'enum' => self::$_field_calculator->retrieve_calculated_fields_for_model($model), |
|
518 | + ), |
|
519 | + ), |
|
520 | + $model, |
|
521 | + $version |
|
522 | + ); |
|
523 | + } |
|
524 | + |
|
525 | + |
|
526 | + |
|
527 | + /** |
|
528 | + * Gets info about reading query params that are acceptable |
|
529 | + * |
|
530 | + * @param \EEM_Base $model eg 'Event' or 'Venue' |
|
531 | + * @param string $version |
|
532 | + * @return array describing the args acceptable when querying this model |
|
533 | + * @throws \EE_Error |
|
534 | + */ |
|
535 | + protected function _get_read_query_params(\EEM_Base $model, $version) |
|
536 | + { |
|
537 | + $default_orderby = array(); |
|
538 | + foreach ($model->get_combined_primary_key_fields() as $key_field) { |
|
539 | + $default_orderby[$key_field->get_name()] = 'ASC'; |
|
540 | + } |
|
541 | + return array_merge( |
|
542 | + $this->_get_response_selection_query_params($model, $version), |
|
543 | + array( |
|
544 | + 'where' => array( |
|
545 | + 'required' => false, |
|
546 | + 'default' => array(), |
|
547 | + ), |
|
548 | + 'limit' => array( |
|
549 | + 'required' => false, |
|
550 | + 'default' => EED_Core_Rest_Api::get_default_query_limit(), |
|
551 | + ), |
|
552 | + 'order_by' => array( |
|
553 | + 'required' => false, |
|
554 | + 'default' => $default_orderby, |
|
555 | + ), |
|
556 | + 'group_by' => array( |
|
557 | + 'required' => false, |
|
558 | + 'default' => null, |
|
559 | + ), |
|
560 | + 'having' => array( |
|
561 | + 'required' => false, |
|
562 | + 'default' => null, |
|
563 | + ), |
|
564 | + 'caps' => array( |
|
565 | + 'required' => false, |
|
566 | + 'default' => EEM_Base::caps_read, |
|
567 | + ), |
|
568 | + ) |
|
569 | + ); |
|
570 | + } |
|
571 | + |
|
572 | + |
|
573 | + |
|
574 | + /** |
|
575 | + * Gets routes for the config |
|
576 | + * |
|
577 | + * @return array @see _register_model_routes |
|
578 | + * @deprecated since version 4.9.1 |
|
579 | + */ |
|
580 | + protected function _register_config_routes() |
|
581 | + { |
|
582 | + $config_routes = array(); |
|
583 | + foreach (self::versions_served() as $version => $hidden_endpoint) { |
|
584 | + $config_routes[self::ee_api_namespace . $version] = $this->_get_config_route_data_for_version($version, |
|
585 | + $hidden_endpoint); |
|
586 | + } |
|
587 | + return $config_routes; |
|
588 | + } |
|
589 | + |
|
590 | + |
|
591 | + |
|
592 | + /** |
|
593 | + * Gets routes for the config for the specified version |
|
594 | + * |
|
595 | + * @param string $version |
|
596 | + * @param boolean $hidden_endpoint |
|
597 | + * @return array |
|
598 | + */ |
|
599 | + protected function _get_config_route_data_for_version($version, $hidden_endpoint) |
|
600 | + { |
|
601 | + return array( |
|
602 | + 'config' => array( |
|
603 | + array( |
|
604 | + 'callback' => array( |
|
605 | + 'EventEspresso\core\libraries\rest_api\controllers\config\Read', |
|
606 | + 'handle_request', |
|
607 | + ), |
|
608 | + 'methods' => WP_REST_Server::READABLE, |
|
609 | + 'hidden_endpoint' => $hidden_endpoint, |
|
610 | + ), |
|
611 | + ), |
|
612 | + 'site_info' => array( |
|
613 | + array( |
|
614 | + 'callback' => array( |
|
615 | + 'EventEspresso\core\libraries\rest_api\controllers\config\Read', |
|
616 | + 'handle_request_site_info', |
|
617 | + ), |
|
618 | + 'methods' => WP_REST_Server::READABLE, |
|
619 | + 'hidden_endpoint' => $hidden_endpoint, |
|
620 | + ), |
|
621 | + ), |
|
622 | + ); |
|
623 | + } |
|
624 | + |
|
625 | + |
|
626 | + |
|
627 | + /** |
|
628 | + * Gets the meta info routes |
|
629 | + * |
|
630 | + * @return array @see _register_model_routes |
|
631 | + * @deprecated since version 4.9.1 |
|
632 | + */ |
|
633 | + protected function _register_meta_routes() |
|
634 | + { |
|
635 | + $meta_routes = array(); |
|
636 | + foreach (self::versions_served() as $version => $hidden_endpoint) { |
|
637 | + $meta_routes[self::ee_api_namespace . $version] = $this->_get_meta_route_data_for_version($version, |
|
638 | + $hidden_endpoint); |
|
639 | + } |
|
640 | + return $meta_routes; |
|
641 | + } |
|
642 | + |
|
643 | + |
|
644 | + |
|
645 | + /** |
|
646 | + * @param string $version |
|
647 | + * @param boolean $hidden_endpoint |
|
648 | + * @return array |
|
649 | + */ |
|
650 | + protected function _get_meta_route_data_for_version($version, $hidden_endpoint = false) |
|
651 | + { |
|
652 | + return array( |
|
653 | + 'resources' => array( |
|
654 | + array( |
|
655 | + 'callback' => array( |
|
656 | + 'EventEspresso\core\libraries\rest_api\controllers\model\Meta', |
|
657 | + 'handle_request_models_meta', |
|
658 | + ), |
|
659 | + 'methods' => WP_REST_Server::READABLE, |
|
660 | + 'hidden_endpoint' => $hidden_endpoint, |
|
661 | + ), |
|
662 | + ), |
|
663 | + ); |
|
664 | + } |
|
665 | + |
|
666 | + |
|
667 | + |
|
668 | + /** |
|
669 | + * Tries to hide old 4.6 endpoints from the |
|
670 | + * |
|
671 | + * @param array $route_data |
|
672 | + * @return array |
|
673 | + */ |
|
674 | + public static function hide_old_endpoints($route_data) |
|
675 | + { |
|
676 | + //allow API clients to override which endpoints get hidden, in case |
|
677 | + //they want to discover particular endpoints |
|
678 | + //also, we don't have access to the request so we have to just grab it from the superglobal |
|
679 | + $force_show_ee_namespace = ltrim( |
|
680 | + EEH_Array::is_set($_REQUEST, 'force_show_ee_namespace', ''), |
|
681 | + '/' |
|
682 | + ); |
|
683 | + foreach (EED_Core_Rest_Api::get_ee_route_data() as $namespace => $relative_urls) { |
|
684 | + foreach ($relative_urls as $endpoint => $routes) { |
|
685 | + foreach ($routes as $route) { |
|
686 | + //by default, hide "hidden_endpoint"s, unless the request indicates |
|
687 | + //to $force_show_ee_namespace, in which case only show that one |
|
688 | + //namespace's endpoints (and hide all others) |
|
689 | + if (($route['hidden_endpoint'] && $force_show_ee_namespace === '') |
|
690 | + || ($force_show_ee_namespace !== '' && $force_show_ee_namespace !== $namespace) |
|
691 | + ) { |
|
692 | + $full_route = '/' . ltrim($namespace, '/') . '/' . ltrim($endpoint, '/'); |
|
693 | + unset($route_data[$full_route]); |
|
694 | + } |
|
695 | + } |
|
696 | + } |
|
697 | + } |
|
698 | + return $route_data; |
|
699 | + } |
|
700 | + |
|
701 | + |
|
702 | + |
|
703 | + /** |
|
704 | + * Returns an array describing which versions of core support serving requests for. |
|
705 | + * Keys are core versions' major and minor version, and values are the |
|
706 | + * LOWEST requested version they can serve. Eg, 4.7 can serve requests for 4.6-like |
|
707 | + * data by just removing a few models and fields from the responses. However, 4.15 might remove |
|
708 | + * the answers table entirely, in which case it would be very difficult for |
|
709 | + * it to serve 4.6-style responses. |
|
710 | + * Versions of core that are missing from this array are unknowns. |
|
711 | + * previous ver |
|
712 | + * |
|
713 | + * @return array |
|
714 | + */ |
|
715 | + public static function version_compatibilities() |
|
716 | + { |
|
717 | + return apply_filters( |
|
718 | + 'FHEE__EED_Core_REST_API__version_compatibilities', |
|
719 | + array( |
|
720 | + '4.8.29' => '4.8.29', |
|
721 | + '4.8.33' => '4.8.29', |
|
722 | + '4.8.34' => '4.8.29', |
|
723 | + '4.8.36' => '4.8.29', |
|
724 | + ) |
|
725 | + ); |
|
726 | + } |
|
727 | + |
|
728 | + |
|
729 | + |
|
730 | + /** |
|
731 | + * Gets the latest API version served. Eg if there |
|
732 | + * are two versions served of the API, 4.8.29 and 4.8.32, and |
|
733 | + * we are on core version 4.8.34, it will return the string "4.8.32" |
|
734 | + * |
|
735 | + * @return string |
|
736 | + */ |
|
737 | + public static function latest_rest_api_version() |
|
738 | + { |
|
739 | + $versions_served = \EED_Core_Rest_Api::versions_served(); |
|
740 | + $versions_served_keys = array_keys($versions_served); |
|
741 | + return end($versions_served_keys); |
|
742 | + } |
|
743 | + |
|
744 | + |
|
745 | + |
|
746 | + /** |
|
747 | + * Using EED_Core_Rest_Api::version_compatibilities(), determines what version of |
|
748 | + * EE the API can serve requests for. Eg, if we are on 4.15 of core, and |
|
749 | + * we can serve requests from 4.12 or later, this will return array( '4.12', '4.13', '4.14', '4.15' ). |
|
750 | + * We also indicate whether or not this version should be put in the index or not |
|
751 | + * |
|
752 | + * @return array keys are API version numbers (just major and minor numbers), and values |
|
753 | + * are whether or not they should be hidden |
|
754 | + */ |
|
755 | + public static function versions_served() |
|
756 | + { |
|
757 | + $versions_served = array(); |
|
758 | + $possibly_served_versions = EED_Core_Rest_Api::version_compatibilities(); |
|
759 | + $lowest_compatible_version = end($possibly_served_versions); |
|
760 | + reset($possibly_served_versions); |
|
761 | + $versions_served_historically = array_keys($possibly_served_versions); |
|
762 | + $latest_version = end($versions_served_historically); |
|
763 | + reset($versions_served_historically); |
|
764 | + //for each version of core we have ever served: |
|
765 | + foreach ($versions_served_historically as $key_versioned_endpoint) { |
|
766 | + //if it's not above the current core version, and it's compatible with the current version of core |
|
767 | + if ($key_versioned_endpoint == $latest_version) { |
|
768 | + //don't hide the latest version in the index |
|
769 | + $versions_served[$key_versioned_endpoint] = false; |
|
770 | + } else if ( |
|
771 | + $key_versioned_endpoint < EED_Core_Rest_Api::core_version() |
|
772 | + && $key_versioned_endpoint >= $lowest_compatible_version |
|
773 | + ) { |
|
774 | + //include, but hide, previous versions which are still supported |
|
775 | + $versions_served[$key_versioned_endpoint] = true; |
|
776 | + } elseif ( |
|
777 | + apply_filters( |
|
778 | + 'FHEE__EED_Core_Rest_Api__versions_served__include_incompatible_versions', |
|
779 | + false, |
|
780 | + $possibly_served_versions |
|
781 | + ) |
|
782 | + ) { |
|
783 | + //if a version is no longer supported, don't include it in index or list of versions served |
|
784 | + $versions_served[$key_versioned_endpoint] = true; |
|
785 | + } |
|
786 | + } |
|
787 | + return $versions_served; |
|
788 | + } |
|
789 | + |
|
790 | + |
|
791 | + |
|
792 | + /** |
|
793 | + * Gets the major and minor version of EE core's version string |
|
794 | + * |
|
795 | + * @return string |
|
796 | + */ |
|
797 | + public static function core_version() |
|
798 | + { |
|
799 | + return apply_filters('FHEE__EED_Core_REST_API__core_version', |
|
800 | + implode('.', array_slice(explode('.', espresso_version()), 0, 3))); |
|
801 | + } |
|
802 | + |
|
803 | + |
|
804 | + |
|
805 | + /** |
|
806 | + * Gets the default limit that should be used when querying for resources |
|
807 | + * |
|
808 | + * @return int |
|
809 | + */ |
|
810 | + public static function get_default_query_limit() |
|
811 | + { |
|
812 | + //we actually don't use a const because we want folks to always use |
|
813 | + //this method, not the const directly |
|
814 | + return apply_filters( |
|
815 | + 'FHEE__EED_Core_Rest_Api__get_default_query_limit', |
|
816 | + 50 |
|
817 | + ); |
|
818 | + } |
|
819 | + |
|
820 | + |
|
821 | + |
|
822 | + /** |
|
823 | + * run - initial module setup |
|
824 | + * |
|
825 | + * @access public |
|
826 | + * @param WP $WP |
|
827 | + * @return void |
|
828 | + */ |
|
829 | + public function run($WP) |
|
830 | + { |
|
831 | + } |
|
832 | 832 | |
833 | 833 | |
834 | 834 |
@@ -157,13 +157,13 @@ discard block |
||
157 | 157 | */ |
158 | 158 | protected static function _set_hooks_for_changes() |
159 | 159 | { |
160 | - $folder_contents = EEH_File::get_contents_of_folders(array(EE_LIBRARIES . 'rest_api' . DS . 'changes'), false); |
|
160 | + $folder_contents = EEH_File::get_contents_of_folders(array(EE_LIBRARIES.'rest_api'.DS.'changes'), false); |
|
161 | 161 | foreach ($folder_contents as $classname_in_namespace => $filepath) { |
162 | 162 | //ignore the base parent class |
163 | 163 | if ($classname_in_namespace === 'Changes_In_Base') { |
164 | 164 | continue; |
165 | 165 | } |
166 | - $full_classname = 'EventEspresso\core\libraries\rest_api\changes\\' . $classname_in_namespace; |
|
166 | + $full_classname = 'EventEspresso\core\libraries\rest_api\changes\\'.$classname_in_namespace; |
|
167 | 167 | if (class_exists($full_classname)) { |
168 | 168 | $instance_of_class = new $full_classname; |
169 | 169 | if ($instance_of_class instanceof EventEspresso\core\libraries\rest_api\changes\Changes_In_Base) { |
@@ -226,7 +226,7 @@ discard block |
||
226 | 226 | { |
227 | 227 | //delete the saved EE REST API routes |
228 | 228 | foreach (EED_Core_Rest_Api::versions_served() as $version => $hidden) { |
229 | - delete_option(EED_Core_Rest_Api::saved_routes_option_names . $version); |
|
229 | + delete_option(EED_Core_Rest_Api::saved_routes_option_names.$version); |
|
230 | 230 | } |
231 | 231 | } |
232 | 232 | |
@@ -245,7 +245,7 @@ discard block |
||
245 | 245 | { |
246 | 246 | $ee_routes = array(); |
247 | 247 | foreach (self::versions_served() as $version => $hidden_endpoints) { |
248 | - $ee_routes[self::ee_api_namespace . $version] = self::_get_ee_route_data_for_version($version, |
|
248 | + $ee_routes[self::ee_api_namespace.$version] = self::_get_ee_route_data_for_version($version, |
|
249 | 249 | $hidden_endpoints); |
250 | 250 | } |
251 | 251 | return $ee_routes; |
@@ -263,7 +263,7 @@ discard block |
||
263 | 263 | */ |
264 | 264 | protected static function _get_ee_route_data_for_version($version, $hidden_endpoints = false) |
265 | 265 | { |
266 | - $ee_routes = get_option(self::saved_routes_option_names . $version, null); |
|
266 | + $ee_routes = get_option(self::saved_routes_option_names.$version, null); |
|
267 | 267 | if ( ! $ee_routes || (defined('EE_REST_API_DEBUG_MODE') && EE_REST_API_DEBUG_MODE)) { |
268 | 268 | $ee_routes = self::_save_ee_route_data_for_version($version, $hidden_endpoints); |
269 | 269 | } |
@@ -291,7 +291,7 @@ discard block |
||
291 | 291 | $instance->_get_rpc_route_data_for_version($version, $hidden_endpoints) |
292 | 292 | ) |
293 | 293 | ); |
294 | - $option_name = self::saved_routes_option_names . $version; |
|
294 | + $option_name = self::saved_routes_option_names.$version; |
|
295 | 295 | if (get_option($option_name)) { |
296 | 296 | update_option($option_name, $routes, true); |
297 | 297 | } else { |
@@ -368,7 +368,7 @@ discard block |
||
368 | 368 | $model = \EE_Registry::instance()->load_model($model_name); |
369 | 369 | //yes we could just register one route for ALL models, but then they wouldn't show up in the index |
370 | 370 | $plural_model_route = EEH_Inflector::pluralize_and_lower($model_name); |
371 | - $singular_model_route = $plural_model_route . '/(?P<id>\d+)'; |
|
371 | + $singular_model_route = $plural_model_route.'/(?P<id>\d+)'; |
|
372 | 372 | $model_routes[$plural_model_route] = array( |
373 | 373 | array( |
374 | 374 | 'callback' => array( |
@@ -379,7 +379,7 @@ discard block |
||
379 | 379 | 'hidden_endpoint' => $hidden_endpoint, |
380 | 380 | 'args' => $this->_get_read_query_params($model, $version), |
381 | 381 | '_links' => array( |
382 | - 'self' => rest_url(EED_Core_Rest_Api::ee_api_namespace . $version . $singular_model_route), |
|
382 | + 'self' => rest_url(EED_Core_Rest_Api::ee_api_namespace.$version.$singular_model_route), |
|
383 | 383 | ), |
384 | 384 | ), |
385 | 385 | // array( |
@@ -414,7 +414,7 @@ discard block |
||
414 | 414 | $relation_name, |
415 | 415 | $relation_obj |
416 | 416 | ); |
417 | - $model_routes[$singular_model_route . '/' . $related_model_name_endpoint_part] = array( |
|
417 | + $model_routes[$singular_model_route.'/'.$related_model_name_endpoint_part] = array( |
|
418 | 418 | array( |
419 | 419 | 'callback' => array( |
420 | 420 | 'EventEspresso\core\libraries\rest_api\controllers\model\Read', |
@@ -450,7 +450,7 @@ discard block |
||
450 | 450 | { |
451 | 451 | $routes = array(); |
452 | 452 | foreach (self::versions_served() as $version => $hidden_endpoint) { |
453 | - $routes[self::ee_api_namespace . $version] = $this->_get_rpc_route_data_for_version($version, |
|
453 | + $routes[self::ee_api_namespace.$version] = $this->_get_rpc_route_data_for_version($version, |
|
454 | 454 | $hidden_endpoint); |
455 | 455 | } |
456 | 456 | return $routes; |
@@ -581,7 +581,7 @@ discard block |
||
581 | 581 | { |
582 | 582 | $config_routes = array(); |
583 | 583 | foreach (self::versions_served() as $version => $hidden_endpoint) { |
584 | - $config_routes[self::ee_api_namespace . $version] = $this->_get_config_route_data_for_version($version, |
|
584 | + $config_routes[self::ee_api_namespace.$version] = $this->_get_config_route_data_for_version($version, |
|
585 | 585 | $hidden_endpoint); |
586 | 586 | } |
587 | 587 | return $config_routes; |
@@ -634,7 +634,7 @@ discard block |
||
634 | 634 | { |
635 | 635 | $meta_routes = array(); |
636 | 636 | foreach (self::versions_served() as $version => $hidden_endpoint) { |
637 | - $meta_routes[self::ee_api_namespace . $version] = $this->_get_meta_route_data_for_version($version, |
|
637 | + $meta_routes[self::ee_api_namespace.$version] = $this->_get_meta_route_data_for_version($version, |
|
638 | 638 | $hidden_endpoint); |
639 | 639 | } |
640 | 640 | return $meta_routes; |
@@ -689,7 +689,7 @@ discard block |
||
689 | 689 | if (($route['hidden_endpoint'] && $force_show_ee_namespace === '') |
690 | 690 | || ($force_show_ee_namespace !== '' && $force_show_ee_namespace !== $namespace) |
691 | 691 | ) { |
692 | - $full_route = '/' . ltrim($namespace, '/') . '/' . ltrim($endpoint, '/'); |
|
692 | + $full_route = '/'.ltrim($namespace, '/').'/'.ltrim($endpoint, '/'); |
|
693 | 693 | unset($route_data[$full_route]); |
694 | 694 | } |
695 | 695 | } |
@@ -247,7 +247,7 @@ discard block |
||
247 | 247 | * @access public |
248 | 248 | * @param EE_Ticket $ticket |
249 | 249 | * @param int $qty |
250 | - * @return TRUE on success, FALSE on fail |
|
250 | + * @return boolean on success, FALSE on fail |
|
251 | 251 | * @throws \EE_Error |
252 | 252 | */ |
253 | 253 | public function add_ticket_to_cart( EE_Ticket $ticket, $qty = 1 ) { |
@@ -364,7 +364,7 @@ discard block |
||
364 | 364 | * @save cart to session |
365 | 365 | * @access public |
366 | 366 | * @param bool $apply_taxes |
367 | - * @return TRUE on success, FALSE on fail |
|
367 | + * @return boolean on success, FALSE on fail |
|
368 | 368 | * @throws \EE_Error |
369 | 369 | */ |
370 | 370 | public function save_cart( $apply_taxes = true ) { |
@@ -387,7 +387,7 @@ discard block |
||
387 | 387 | |
388 | 388 | |
389 | 389 | /** |
390 | - * @return array |
|
390 | + * @return string[] |
|
391 | 391 | */ |
392 | 392 | public function __sleep() { |
393 | 393 | return array( '_grand_total' ); |
@@ -372,7 +372,7 @@ |
||
372 | 372 | EEH_Line_Item::ensure_taxes_applied( $this->_grand_total ); |
373 | 373 | //make sure we don't cache the transaction because it can get stale |
374 | 374 | if ( $this->_grand_total->get_one_from_cache( 'Transaction' ) instanceof EE_Transaction |
375 | - && $this->_grand_total->get_one_from_cache( 'Transaction' )->ID() |
|
375 | + && $this->_grand_total->get_one_from_cache( 'Transaction' )->ID() |
|
376 | 376 | ) { |
377 | 377 | $this->_grand_total->clear_cache( 'Transaction', null, true ); |
378 | 378 | } |
@@ -1,7 +1,7 @@ discard block |
||
1 | -<?php if ( ! defined( 'EVENT_ESPRESSO_VERSION' ) ) { |
|
2 | - exit( 'No direct script access allowed' ); |
|
1 | +<?php if ( ! defined('EVENT_ESPRESSO_VERSION')) { |
|
2 | + exit('No direct script access allowed'); |
|
3 | 3 | } |
4 | -do_action( 'AHEE_log', __FILE__, __FUNCTION__, '' ); |
|
4 | +do_action('AHEE_log', __FILE__, __FUNCTION__, ''); |
|
5 | 5 | |
6 | 6 | |
7 | 7 | |
@@ -61,24 +61,24 @@ discard block |
||
61 | 61 | * @return \EE_Cart |
62 | 62 | * @throws \EE_Error |
63 | 63 | */ |
64 | - public static function instance( EE_Line_Item $grand_total = null, EE_Session $session = null ) { |
|
65 | - if ( ! empty( $grand_total ) ) { |
|
66 | - self::$_instance = new self( $grand_total, $session ); |
|
64 | + public static function instance(EE_Line_Item $grand_total = null, EE_Session $session = null) { |
|
65 | + if ( ! empty($grand_total)) { |
|
66 | + self::$_instance = new self($grand_total, $session); |
|
67 | 67 | } |
68 | 68 | // or maybe retrieve an existing one ? |
69 | - if ( ! self::$_instance instanceof EE_Cart ) { |
|
69 | + if ( ! self::$_instance instanceof EE_Cart) { |
|
70 | 70 | // try getting the cart out of the session |
71 | 71 | $saved_cart = $session instanceof EE_Session ? $session->cart() : null; |
72 | - self::$_instance = $saved_cart instanceof EE_Cart ? $saved_cart : new self( $grand_total, $session ); |
|
73 | - unset( $saved_cart ); |
|
72 | + self::$_instance = $saved_cart instanceof EE_Cart ? $saved_cart : new self($grand_total, $session); |
|
73 | + unset($saved_cart); |
|
74 | 74 | } |
75 | 75 | // verify that cart is ok and grand total line item exists |
76 | - if ( ! self::$_instance instanceof EE_Cart || ! self::$_instance->_grand_total instanceof EE_Line_Item ) { |
|
77 | - self::$_instance = new self( $grand_total, $session ); |
|
76 | + if ( ! self::$_instance instanceof EE_Cart || ! self::$_instance->_grand_total instanceof EE_Line_Item) { |
|
77 | + self::$_instance = new self($grand_total, $session); |
|
78 | 78 | } |
79 | 79 | self::$_instance->get_grand_total(); |
80 | 80 | // once everything is all said and done, save the cart to the EE_Session |
81 | - add_action( 'shutdown', array( self::$_instance, 'save_cart' ), 90 ); |
|
81 | + add_action('shutdown', array(self::$_instance, 'save_cart'), 90); |
|
82 | 82 | return self::$_instance; |
83 | 83 | } |
84 | 84 | |
@@ -92,11 +92,11 @@ discard block |
||
92 | 92 | * @param EE_Line_Item $grand_total |
93 | 93 | * @param EE_Session $session |
94 | 94 | */ |
95 | - private function __construct( EE_Line_Item $grand_total = null, EE_Session $session = null ) { |
|
96 | - do_action( 'AHEE_log', __FILE__, __FUNCTION__, '' ); |
|
97 | - $this->set_session( $session ); |
|
98 | - if ( $grand_total instanceof EE_Line_Item ) { |
|
99 | - $this->set_grand_total_line_item( $grand_total ); |
|
95 | + private function __construct(EE_Line_Item $grand_total = null, EE_Session $session = null) { |
|
96 | + do_action('AHEE_log', __FILE__, __FUNCTION__, ''); |
|
97 | + $this->set_session($session); |
|
98 | + if ($grand_total instanceof EE_Line_Item) { |
|
99 | + $this->set_grand_total_line_item($grand_total); |
|
100 | 100 | } |
101 | 101 | } |
102 | 102 | |
@@ -110,13 +110,13 @@ discard block |
||
110 | 110 | * @return EE_Cart |
111 | 111 | * @throws \EE_Error |
112 | 112 | */ |
113 | - public static function reset( EE_Line_Item $grand_total = null, EE_Session $session = null ) { |
|
114 | - remove_action( 'shutdown', array( self::$_instance, 'save_cart' ), 90 ); |
|
115 | - if ( $session instanceof EE_Session ) { |
|
113 | + public static function reset(EE_Line_Item $grand_total = null, EE_Session $session = null) { |
|
114 | + remove_action('shutdown', array(self::$_instance, 'save_cart'), 90); |
|
115 | + if ($session instanceof EE_Session) { |
|
116 | 116 | $session->reset_cart(); |
117 | 117 | } |
118 | 118 | self::$_instance = null; |
119 | - return self::instance( $grand_total, $session ); |
|
119 | + return self::instance($grand_total, $session); |
|
120 | 120 | } |
121 | 121 | |
122 | 122 | |
@@ -125,7 +125,7 @@ discard block |
||
125 | 125 | * @return \EE_Session |
126 | 126 | */ |
127 | 127 | public function session() { |
128 | - if ( ! $this->_session instanceof EE_Session ) { |
|
128 | + if ( ! $this->_session instanceof EE_Session) { |
|
129 | 129 | $this->set_session(); |
130 | 130 | } |
131 | 131 | return $this->_session; |
@@ -136,8 +136,8 @@ discard block |
||
136 | 136 | /** |
137 | 137 | * @param EE_Session $session |
138 | 138 | */ |
139 | - public function set_session( EE_Session $session = null ) { |
|
140 | - $this->_session = $session instanceof EE_Session ? $session : EE_Registry::instance()->load_core( 'Session' ); |
|
139 | + public function set_session(EE_Session $session = null) { |
|
140 | + $this->_session = $session instanceof EE_Session ? $session : EE_Registry::instance()->load_core('Session'); |
|
141 | 141 | } |
142 | 142 | |
143 | 143 | |
@@ -148,7 +148,7 @@ discard block |
||
148 | 148 | * |
149 | 149 | * @param EE_Line_Item $line_item |
150 | 150 | */ |
151 | - public function set_grand_total_line_item( EE_Line_Item $line_item ) { |
|
151 | + public function set_grand_total_line_item(EE_Line_Item $line_item) { |
|
152 | 152 | $this->_grand_total = $line_item; |
153 | 153 | } |
154 | 154 | |
@@ -163,11 +163,11 @@ discard block |
||
163 | 163 | * @return \EE_Cart |
164 | 164 | * @throws \EE_Error |
165 | 165 | */ |
166 | - public static function get_cart_from_txn( EE_Transaction $transaction, EE_Session $session = null ) { |
|
166 | + public static function get_cart_from_txn(EE_Transaction $transaction, EE_Session $session = null) { |
|
167 | 167 | $grand_total = $transaction->total_line_item(); |
168 | 168 | $grand_total->get_items(); |
169 | 169 | $grand_total->tax_descendants(); |
170 | - return EE_Cart::instance( $grand_total, $session ); |
|
170 | + return EE_Cart::instance($grand_total, $session); |
|
171 | 171 | } |
172 | 172 | |
173 | 173 | |
@@ -192,7 +192,7 @@ discard block |
||
192 | 192 | * @return \EE_Line_Item[] |
193 | 193 | */ |
194 | 194 | public function get_tickets() { |
195 | - return EEH_Line_Item::get_ticket_line_items( $this->_grand_total ); |
|
195 | + return EEH_Line_Item::get_ticket_line_items($this->_grand_total); |
|
196 | 196 | } |
197 | 197 | |
198 | 198 | |
@@ -206,12 +206,12 @@ discard block |
||
206 | 206 | */ |
207 | 207 | public function all_ticket_quantity_count() { |
208 | 208 | $tickets = $this->get_tickets(); |
209 | - if ( empty( $tickets ) ) { |
|
209 | + if (empty($tickets)) { |
|
210 | 210 | return 0; |
211 | 211 | } |
212 | 212 | $count = 0; |
213 | - foreach ( $tickets as $ticket ) { |
|
214 | - $count += $ticket->get( 'LIN_quantity' ); |
|
213 | + foreach ($tickets as $ticket) { |
|
214 | + $count += $ticket->get('LIN_quantity'); |
|
215 | 215 | } |
216 | 216 | return $count; |
217 | 217 | } |
@@ -225,7 +225,7 @@ discard block |
||
225 | 225 | * @throws \EE_Error |
226 | 226 | */ |
227 | 227 | public function get_taxes() { |
228 | - return EEH_Line_Item::get_taxes_subtotal( $this->_grand_total )->children(); |
|
228 | + return EEH_Line_Item::get_taxes_subtotal($this->_grand_total)->children(); |
|
229 | 229 | } |
230 | 230 | |
231 | 231 | |
@@ -250,8 +250,8 @@ discard block |
||
250 | 250 | * @return TRUE on success, FALSE on fail |
251 | 251 | * @throws \EE_Error |
252 | 252 | */ |
253 | - public function add_ticket_to_cart( EE_Ticket $ticket, $qty = 1 ) { |
|
254 | - EEH_Line_Item::add_ticket_purchase( $this->get_grand_total(), $ticket, $qty ); |
|
253 | + public function add_ticket_to_cart(EE_Ticket $ticket, $qty = 1) { |
|
254 | + EEH_Line_Item::add_ticket_purchase($this->get_grand_total(), $ticket, $qty); |
|
255 | 255 | return $this->save_cart() ? true : false; |
256 | 256 | } |
257 | 257 | |
@@ -278,7 +278,7 @@ discard block |
||
278 | 278 | * @throws \EE_Error |
279 | 279 | */ |
280 | 280 | public function get_applied_taxes() { |
281 | - return EEH_Line_Item::ensure_taxes_applied( $this->_grand_total ); |
|
281 | + return EEH_Line_Item::ensure_taxes_applied($this->_grand_total); |
|
282 | 282 | } |
283 | 283 | |
284 | 284 | |
@@ -291,7 +291,7 @@ discard block |
||
291 | 291 | * @throws \EE_Error |
292 | 292 | */ |
293 | 293 | public function get_cart_grand_total() { |
294 | - EEH_Line_Item::ensure_taxes_applied( $this->_grand_total ); |
|
294 | + EEH_Line_Item::ensure_taxes_applied($this->_grand_total); |
|
295 | 295 | return $this->get_grand_total()->total(); |
296 | 296 | } |
297 | 297 | |
@@ -306,8 +306,8 @@ discard block |
||
306 | 306 | */ |
307 | 307 | public function recalculate_all_cart_totals() { |
308 | 308 | $pre_tax_total = $this->get_cart_total_before_tax(); |
309 | - $taxes_total = EEH_Line_Item::ensure_taxes_applied( $this->_grand_total ); |
|
310 | - $this->_grand_total->set_total( $pre_tax_total + $taxes_total ); |
|
309 | + $taxes_total = EEH_Line_Item::ensure_taxes_applied($this->_grand_total); |
|
310 | + $this->_grand_total->set_total($pre_tax_total + $taxes_total); |
|
311 | 311 | $this->_grand_total->save_this_and_descendants_to_txn(); |
312 | 312 | return $this->get_grand_total()->total(); |
313 | 313 | } |
@@ -322,9 +322,9 @@ discard block |
||
322 | 322 | * @return int on success, FALSE on fail |
323 | 323 | * @throws \EE_Error |
324 | 324 | */ |
325 | - public function delete_items( $line_item_codes = false ) { |
|
326 | - do_action( 'AHEE_log', __FILE__, __FUNCTION__, '' ); |
|
327 | - return EEH_Line_Item::delete_items( $this->get_grand_total(), $line_item_codes ); |
|
325 | + public function delete_items($line_item_codes = false) { |
|
326 | + do_action('AHEE_log', __FILE__, __FUNCTION__, ''); |
|
327 | + return EEH_Line_Item::delete_items($this->get_grand_total(), $line_item_codes); |
|
328 | 328 | } |
329 | 329 | |
330 | 330 | |
@@ -336,9 +336,9 @@ discard block |
||
336 | 336 | * @throws \EE_Error |
337 | 337 | */ |
338 | 338 | public function empty_cart() { |
339 | - do_action( 'AHEE_log', __FILE__, __FUNCTION__, '' ); |
|
339 | + do_action('AHEE_log', __FILE__, __FUNCTION__, ''); |
|
340 | 340 | $this->_grand_total = $this->_create_grand_total(); |
341 | - return $this->save_cart( true ); |
|
341 | + return $this->save_cart(true); |
|
342 | 342 | } |
343 | 343 | |
344 | 344 | |
@@ -350,8 +350,8 @@ discard block |
||
350 | 350 | * @throws \EE_Error |
351 | 351 | */ |
352 | 352 | public function delete_cart() { |
353 | - $deleted = EEH_Line_Item::delete_all_child_items( $this->_grand_total ); |
|
354 | - if ( $deleted ) { |
|
353 | + $deleted = EEH_Line_Item::delete_all_child_items($this->_grand_total); |
|
354 | + if ($deleted) { |
|
355 | 355 | $deleted += $this->_grand_total->delete(); |
356 | 356 | $this->_grand_total = null; |
357 | 357 | } |
@@ -367,18 +367,18 @@ discard block |
||
367 | 367 | * @return TRUE on success, FALSE on fail |
368 | 368 | * @throws \EE_Error |
369 | 369 | */ |
370 | - public function save_cart( $apply_taxes = true ) { |
|
371 | - if ( $apply_taxes && $this->_grand_total instanceof EE_Line_Item ) { |
|
372 | - EEH_Line_Item::ensure_taxes_applied( $this->_grand_total ); |
|
370 | + public function save_cart($apply_taxes = true) { |
|
371 | + if ($apply_taxes && $this->_grand_total instanceof EE_Line_Item) { |
|
372 | + EEH_Line_Item::ensure_taxes_applied($this->_grand_total); |
|
373 | 373 | //make sure we don't cache the transaction because it can get stale |
374 | - if ( $this->_grand_total->get_one_from_cache( 'Transaction' ) instanceof EE_Transaction |
|
375 | - && $this->_grand_total->get_one_from_cache( 'Transaction' )->ID() |
|
374 | + if ($this->_grand_total->get_one_from_cache('Transaction') instanceof EE_Transaction |
|
375 | + && $this->_grand_total->get_one_from_cache('Transaction')->ID() |
|
376 | 376 | ) { |
377 | - $this->_grand_total->clear_cache( 'Transaction', null, true ); |
|
377 | + $this->_grand_total->clear_cache('Transaction', null, true); |
|
378 | 378 | } |
379 | 379 | } |
380 | - if ( $this->session() instanceof EE_Session ) { |
|
381 | - return $this->session()->set_cart( $this ); |
|
380 | + if ($this->session() instanceof EE_Session) { |
|
381 | + return $this->session()->set_cart($this); |
|
382 | 382 | } else { |
383 | 383 | return false; |
384 | 384 | } |
@@ -390,7 +390,7 @@ discard block |
||
390 | 390 | * @return array |
391 | 391 | */ |
392 | 392 | public function __sleep() { |
393 | - return array( '_grand_total' ); |
|
393 | + return array('_grand_total'); |
|
394 | 394 | } |
395 | 395 | |
396 | 396 |
@@ -15,7 +15,7 @@ discard block |
||
15 | 15 | |
16 | 16 | |
17 | 17 | |
18 | -if ( ! function_exists( 'espresso_get_template_part' )) { |
|
18 | +if ( ! function_exists('espresso_get_template_part')) { |
|
19 | 19 | /** |
20 | 20 | * espresso_get_template_part |
21 | 21 | * basically a copy of the WordPress get_template_part() function but uses EEH_Template::locate_template() instead, and doesn't add base versions of files |
@@ -25,14 +25,14 @@ discard block |
||
25 | 25 | * @param string $name The name of the specialised template. |
26 | 26 | * @return string the html output for the formatted money value |
27 | 27 | */ |
28 | - function espresso_get_template_part( $slug = NULL, $name = NULL ) { |
|
29 | - EEH_Template::get_template_part( $slug, $name ); |
|
28 | + function espresso_get_template_part($slug = NULL, $name = NULL) { |
|
29 | + EEH_Template::get_template_part($slug, $name); |
|
30 | 30 | } |
31 | 31 | } |
32 | 32 | |
33 | 33 | |
34 | 34 | |
35 | -if ( ! function_exists( 'espresso_get_object_css_class' )) { |
|
35 | +if ( ! function_exists('espresso_get_object_css_class')) { |
|
36 | 36 | /** |
37 | 37 | * espresso_get_object_css_class - attempts to generate a css class based on the type of EE object passed |
38 | 38 | * |
@@ -42,8 +42,8 @@ discard block |
||
42 | 42 | * @param string $suffix added to the end of the generated class |
43 | 43 | * @return string |
44 | 44 | */ |
45 | - function espresso_get_object_css_class( $object = NULL, $prefix = '', $suffix = '' ) { |
|
46 | - return EEH_Template::get_object_css_class( $object, $prefix, $suffix ); |
|
45 | + function espresso_get_object_css_class($object = NULL, $prefix = '', $suffix = '') { |
|
46 | + return EEH_Template::get_object_css_class($object, $prefix, $suffix); |
|
47 | 47 | } |
48 | 48 | } |
49 | 49 | |
@@ -70,7 +70,7 @@ discard block |
||
70 | 70 | * @return boolean |
71 | 71 | */ |
72 | 72 | public static function is_espresso_theme() { |
73 | - return wp_get_theme()->get( 'TextDomain' ) == 'event_espresso' ? TRUE : FALSE; |
|
73 | + return wp_get_theme()->get('TextDomain') == 'event_espresso' ? TRUE : FALSE; |
|
74 | 74 | } |
75 | 75 | |
76 | 76 | /** |
@@ -79,9 +79,9 @@ discard block |
||
79 | 79 | * @return void |
80 | 80 | */ |
81 | 81 | public static function load_espresso_theme_functions() { |
82 | - if ( ! defined( 'EE_THEME_FUNCTIONS_LOADED' )) { |
|
83 | - if ( is_readable( EE_PUBLIC . EE_Config::get_current_theme() . DS . 'functions.php' )) { |
|
84 | - require_once( EE_PUBLIC . EE_Config::get_current_theme() . DS . 'functions.php' ); |
|
82 | + if ( ! defined('EE_THEME_FUNCTIONS_LOADED')) { |
|
83 | + if (is_readable(EE_PUBLIC.EE_Config::get_current_theme().DS.'functions.php')) { |
|
84 | + require_once(EE_PUBLIC.EE_Config::get_current_theme().DS.'functions.php'); |
|
85 | 85 | } |
86 | 86 | } |
87 | 87 | } |
@@ -93,17 +93,17 @@ discard block |
||
93 | 93 | * @return array |
94 | 94 | */ |
95 | 95 | public static function get_espresso_themes() { |
96 | - if ( empty( EEH_Template::$_espresso_themes )) { |
|
97 | - $espresso_themes = glob( EE_PUBLIC . '*', GLOB_ONLYDIR ); |
|
98 | - if ( empty( $espresso_themes ) ) { |
|
96 | + if (empty(EEH_Template::$_espresso_themes)) { |
|
97 | + $espresso_themes = glob(EE_PUBLIC.'*', GLOB_ONLYDIR); |
|
98 | + if (empty($espresso_themes)) { |
|
99 | 99 | return array(); |
100 | 100 | } |
101 | - if (( $key = array_search( 'global_assets', $espresso_themes )) !== FALSE ) { |
|
102 | - unset( $espresso_themes[ $key ] ); |
|
101 | + if (($key = array_search('global_assets', $espresso_themes)) !== FALSE) { |
|
102 | + unset($espresso_themes[$key]); |
|
103 | 103 | } |
104 | 104 | EEH_Template::$_espresso_themes = array(); |
105 | - foreach ( $espresso_themes as $espresso_theme ) { |
|
106 | - EEH_Template::$_espresso_themes[ basename( $espresso_theme ) ] = $espresso_theme; |
|
105 | + foreach ($espresso_themes as $espresso_theme) { |
|
106 | + EEH_Template::$_espresso_themes[basename($espresso_theme)] = $espresso_theme; |
|
107 | 107 | } |
108 | 108 | } |
109 | 109 | return EEH_Template::$_espresso_themes; |
@@ -122,16 +122,16 @@ discard block |
||
122 | 122 | * @param bool $return_string |
123 | 123 | * @return string the html output for the formatted money value |
124 | 124 | */ |
125 | - public static function get_template_part( $slug = NULL, $name = NULL, $template_args = array(), $return_string = FALSE ) { |
|
126 | - do_action( "get_template_part_{$slug}-{$name}", $slug, $name ); |
|
125 | + public static function get_template_part($slug = NULL, $name = NULL, $template_args = array(), $return_string = FALSE) { |
|
126 | + do_action("get_template_part_{$slug}-{$name}", $slug, $name); |
|
127 | 127 | $templates = array(); |
128 | 128 | $name = (string) $name; |
129 | - if ( $name != '' ) { |
|
129 | + if ($name != '') { |
|
130 | 130 | $templates[] = "{$slug}-{$name}.php"; |
131 | 131 | } |
132 | 132 | // allow template parts to be turned off via something like: add_filter( 'FHEE__content_espresso_events_tickets_template__display_datetimes', '__return_false' ); |
133 | - if ( apply_filters( "FHEE__EEH_Template__get_template_part__display__{$slug}_{$name}", TRUE )) { |
|
134 | - EEH_Template::locate_template( $templates, $template_args, TRUE, $return_string ); |
|
133 | + if (apply_filters("FHEE__EEH_Template__get_template_part__display__{$slug}_{$name}", TRUE)) { |
|
134 | + EEH_Template::locate_template($templates, $template_args, TRUE, $return_string); |
|
135 | 135 | } |
136 | 136 | } |
137 | 137 | |
@@ -182,26 +182,26 @@ discard block |
||
182 | 182 | * Used in places where you don't actually load the template, you just want to know if there's a custom version of it. |
183 | 183 | * @return mixed |
184 | 184 | */ |
185 | - public static function locate_template( $templates = array(), $template_args = array(), $load = TRUE, $return_string = TRUE, $check_if_custom = FALSE ) { |
|
185 | + public static function locate_template($templates = array(), $template_args = array(), $load = TRUE, $return_string = TRUE, $check_if_custom = FALSE) { |
|
186 | 186 | // first use WP locate_template to check for template in the current theme folder |
187 | - $template_path = locate_template( $templates ); |
|
187 | + $template_path = locate_template($templates); |
|
188 | 188 | |
189 | - if ( $check_if_custom && !empty( $template_path ) ) |
|
189 | + if ($check_if_custom && ! empty($template_path)) |
|
190 | 190 | return TRUE; |
191 | 191 | |
192 | 192 | // not in the theme |
193 | - if ( empty( $template_path )) { |
|
193 | + if (empty($template_path)) { |
|
194 | 194 | // not even a template to look for ? |
195 | - if ( empty( $templates )) { |
|
195 | + if (empty($templates)) { |
|
196 | 196 | // get post_type |
197 | - $post_type = EE_Registry::instance()->REQ->get( 'post_type' ); |
|
197 | + $post_type = EE_Registry::instance()->REQ->get('post_type'); |
|
198 | 198 | // get array of EE Custom Post Types |
199 | 199 | $EE_CPTs = EE_Register_CPTs::get_CPTs(); |
200 | 200 | // build template name based on request |
201 | - if ( isset( $EE_CPTs[ $post_type ] )) { |
|
202 | - $archive_or_single = is_archive() ? 'archive' : ''; |
|
203 | - $archive_or_single = is_single() ? 'single' : $archive_or_single; |
|
204 | - $templates = $archive_or_single . '-' . $post_type . '.php'; |
|
201 | + if (isset($EE_CPTs[$post_type])) { |
|
202 | + $archive_or_single = is_archive() ? 'archive' : ''; |
|
203 | + $archive_or_single = is_single() ? 'single' : $archive_or_single; |
|
204 | + $templates = $archive_or_single.'-'.$post_type.'.php'; |
|
205 | 205 | } |
206 | 206 | } |
207 | 207 | // currently active EE template theme |
@@ -210,81 +210,81 @@ discard block |
||
210 | 210 | // array of paths to folders that may contain templates |
211 | 211 | $template_folder_paths = array( |
212 | 212 | // first check the /wp-content/uploads/espresso/templates/(current EE theme)/ folder for an EE theme template file |
213 | - EVENT_ESPRESSO_TEMPLATE_DIR . $current_theme, |
|
213 | + EVENT_ESPRESSO_TEMPLATE_DIR.$current_theme, |
|
214 | 214 | // then in the root of the /wp-content/uploads/espresso/templates/ folder |
215 | 215 | EVENT_ESPRESSO_TEMPLATE_DIR |
216 | 216 | ); |
217 | 217 | |
218 | 218 | //add core plugin folders for checking only if we're not $check_if_custom |
219 | - if ( ! $check_if_custom ) { |
|
219 | + if ( ! $check_if_custom) { |
|
220 | 220 | $core_paths = array( |
221 | 221 | // in the /wp-content/plugins/(EE4 folder)/public/(current EE theme)/ folder within the plugin |
222 | - EE_PUBLIC . $current_theme, |
|
222 | + EE_PUBLIC.$current_theme, |
|
223 | 223 | // in the /wp-content/plugins/(EE4 folder)/core/templates/(current EE theme)/ folder within the plugin |
224 | - EE_TEMPLATES . $current_theme, |
|
224 | + EE_TEMPLATES.$current_theme, |
|
225 | 225 | // or maybe relative from the plugin root: /wp-content/plugins/(EE4 folder)/ |
226 | 226 | EE_PLUGIN_DIR_PATH |
227 | 227 | ); |
228 | - $template_folder_paths = array_merge( $template_folder_paths, $core_paths ); |
|
228 | + $template_folder_paths = array_merge($template_folder_paths, $core_paths); |
|
229 | 229 | } |
230 | 230 | |
231 | 231 | // now filter that array |
232 | - $template_folder_paths = apply_filters( 'FHEE__EEH_Template__locate_template__template_folder_paths', $template_folder_paths ); |
|
233 | - $templates = is_array( $templates ) ? $templates : array( $templates ); |
|
234 | - $template_folder_paths = is_array( $template_folder_paths ) ? $template_folder_paths : array( $template_folder_paths ); |
|
232 | + $template_folder_paths = apply_filters('FHEE__EEH_Template__locate_template__template_folder_paths', $template_folder_paths); |
|
233 | + $templates = is_array($templates) ? $templates : array($templates); |
|
234 | + $template_folder_paths = is_array($template_folder_paths) ? $template_folder_paths : array($template_folder_paths); |
|
235 | 235 | // array to hold all possible template paths |
236 | 236 | $full_template_paths = array(); |
237 | 237 | |
238 | 238 | // loop through $templates |
239 | - foreach ( $templates as $template ) { |
|
239 | + foreach ($templates as $template) { |
|
240 | 240 | // normalize directory separators |
241 | - $template = EEH_File::standardise_directory_separators( $template ); |
|
242 | - $file_name = basename( $template ); |
|
243 | - $template_path_minus_file_name = substr( $template, 0, ( strlen( $file_name ) * -1 ) ); |
|
241 | + $template = EEH_File::standardise_directory_separators($template); |
|
242 | + $file_name = basename($template); |
|
243 | + $template_path_minus_file_name = substr($template, 0, (strlen($file_name) * -1)); |
|
244 | 244 | // while looping through all template folder paths |
245 | - foreach ( $template_folder_paths as $template_folder_path ) { |
|
245 | + foreach ($template_folder_paths as $template_folder_path) { |
|
246 | 246 | // normalize directory separators |
247 | - $template_folder_path = EEH_File::standardise_directory_separators( $template_folder_path ); |
|
247 | + $template_folder_path = EEH_File::standardise_directory_separators($template_folder_path); |
|
248 | 248 | // determine if any common base path exists between the two paths |
249 | 249 | $common_base_path = EEH_Template::_find_common_base_path( |
250 | - array( $template_folder_path, $template_path_minus_file_name ) |
|
250 | + array($template_folder_path, $template_path_minus_file_name) |
|
251 | 251 | ); |
252 | - if ( $common_base_path !== '' ) { |
|
252 | + if ($common_base_path !== '') { |
|
253 | 253 | // both paths have a common base, so just tack the filename onto our search path |
254 | - $resolved_path = EEH_File::end_with_directory_separator( $template_folder_path ) . $file_name; |
|
254 | + $resolved_path = EEH_File::end_with_directory_separator($template_folder_path).$file_name; |
|
255 | 255 | } else { |
256 | 256 | // no common base path, so let's just concatenate |
257 | - $resolved_path = EEH_File::end_with_directory_separator( $template_folder_path ) . $template; |
|
257 | + $resolved_path = EEH_File::end_with_directory_separator($template_folder_path).$template; |
|
258 | 258 | } |
259 | 259 | // build up our template locations array by adding our resolved paths |
260 | 260 | $full_template_paths[] = $resolved_path; |
261 | 261 | } |
262 | 262 | // if $template is an absolute path, then we'll tack it onto the start of our array so that it gets searched first |
263 | - array_unshift( $full_template_paths, $template ); |
|
263 | + array_unshift($full_template_paths, $template); |
|
264 | 264 | // path to the directory of the current theme: /wp-content/themes/(current WP theme)/ |
265 | - array_unshift( $full_template_paths, get_stylesheet_directory() . DS . $file_name ); |
|
265 | + array_unshift($full_template_paths, get_stylesheet_directory().DS.$file_name); |
|
266 | 266 | } |
267 | 267 | // filter final array of full template paths |
268 | - $full_template_paths = apply_filters( 'FHEE__EEH_Template__locate_template__full_template_paths', $full_template_paths, $file_name ); |
|
268 | + $full_template_paths = apply_filters('FHEE__EEH_Template__locate_template__full_template_paths', $full_template_paths, $file_name); |
|
269 | 269 | // now loop through our final array of template location paths and check each location |
270 | - foreach ( (array)$full_template_paths as $full_template_path ) { |
|
271 | - if ( is_readable( $full_template_path )) { |
|
272 | - $template_path = str_replace( array( '\\', '/' ), DIRECTORY_SEPARATOR, $full_template_path ); |
|
270 | + foreach ((array) $full_template_paths as $full_template_path) { |
|
271 | + if (is_readable($full_template_path)) { |
|
272 | + $template_path = str_replace(array('\\', '/'), DIRECTORY_SEPARATOR, $full_template_path); |
|
273 | 273 | // hook that can be used to display the full template path that will be used |
274 | - do_action( 'AHEE__EEH_Template__locate_template__full_template_path', $template_path ); |
|
274 | + do_action('AHEE__EEH_Template__locate_template__full_template_path', $template_path); |
|
275 | 275 | break; |
276 | 276 | } |
277 | 277 | } |
278 | 278 | } |
279 | 279 | // if we got it and you want to see it... |
280 | - if ( $template_path && $load && ! $check_if_custom ) { |
|
281 | - if ( $return_string ) { |
|
282 | - return EEH_Template::display_template( $template_path, $template_args, TRUE ); |
|
280 | + if ($template_path && $load && ! $check_if_custom) { |
|
281 | + if ($return_string) { |
|
282 | + return EEH_Template::display_template($template_path, $template_args, TRUE); |
|
283 | 283 | } else { |
284 | - EEH_Template::display_template( $template_path, $template_args, FALSE ); |
|
284 | + EEH_Template::display_template($template_path, $template_args, FALSE); |
|
285 | 285 | } |
286 | 286 | } |
287 | - return $check_if_custom && ! empty( $template_path ) ? TRUE : $template_path; |
|
287 | + return $check_if_custom && ! empty($template_path) ? TRUE : $template_path; |
|
288 | 288 | } |
289 | 289 | |
290 | 290 | |
@@ -297,21 +297,21 @@ discard block |
||
297 | 297 | * @param array $paths |
298 | 298 | * @return string |
299 | 299 | */ |
300 | - protected static function _find_common_base_path( $paths ) { |
|
300 | + protected static function _find_common_base_path($paths) { |
|
301 | 301 | $last_offset = 0; |
302 | 302 | $common_base_path = ''; |
303 | - while ( ( $index = strpos( $paths[ 0 ], DS, $last_offset ) ) !== false ) { |
|
303 | + while (($index = strpos($paths[0], DS, $last_offset)) !== false) { |
|
304 | 304 | $dir_length = $index - $last_offset + 1; |
305 | - $directory = substr( $paths[ 0 ], $last_offset, $dir_length ); |
|
306 | - foreach ( $paths as $path ) { |
|
307 | - if ( substr( $path, $last_offset, $dir_length ) != $directory ) { |
|
305 | + $directory = substr($paths[0], $last_offset, $dir_length); |
|
306 | + foreach ($paths as $path) { |
|
307 | + if (substr($path, $last_offset, $dir_length) != $directory) { |
|
308 | 308 | return $common_base_path; |
309 | 309 | } |
310 | 310 | } |
311 | 311 | $common_base_path .= $directory; |
312 | 312 | $last_offset = $index + 1; |
313 | 313 | } |
314 | - return substr( $common_base_path, 0, -1 ); |
|
314 | + return substr($common_base_path, 0, -1); |
|
315 | 315 | } |
316 | 316 | |
317 | 317 | |
@@ -323,7 +323,7 @@ discard block |
||
323 | 323 | * @param boolean $return_string whether to send output immediately to screen, or capture and return as a string |
324 | 324 | * @return mixed string |
325 | 325 | */ |
326 | - public static function display_template( $template_path = FALSE, $template_args = array(), $return_string = FALSE ) { |
|
326 | + public static function display_template($template_path = FALSE, $template_args = array(), $return_string = FALSE) { |
|
327 | 327 | |
328 | 328 | /** |
329 | 329 | * These two filters are intended for last minute changes to templates being loaded and/or template arg |
@@ -334,26 +334,26 @@ discard block |
||
334 | 334 | * |
335 | 335 | * @since 4.6.0 |
336 | 336 | */ |
337 | - $template_path = apply_filters( 'FHEE__EEH_Template__display_template__template_path', $template_path ); |
|
338 | - $template_args = apply_filters( 'FHEE__EEH_Template__display_template__template_args', $template_args ); |
|
337 | + $template_path = apply_filters('FHEE__EEH_Template__display_template__template_path', $template_path); |
|
338 | + $template_args = apply_filters('FHEE__EEH_Template__display_template__template_args', $template_args); |
|
339 | 339 | |
340 | 340 | // you gimme nuttin - YOU GET NUTTIN !! |
341 | - if ( ! $template_path || ! is_readable( $template_path )) { |
|
341 | + if ( ! $template_path || ! is_readable($template_path)) { |
|
342 | 342 | return ''; |
343 | 343 | } |
344 | 344 | // if $template_args are not in an array, then make it so |
345 | - if ( ! is_array( $template_args ) && ! is_object( $template_args )) { |
|
346 | - $template_args = array( $template_args ); |
|
345 | + if ( ! is_array($template_args) && ! is_object($template_args)) { |
|
346 | + $template_args = array($template_args); |
|
347 | 347 | } |
348 | - extract( (array) $template_args); |
|
348 | + extract((array) $template_args); |
|
349 | 349 | |
350 | - if ( $return_string ) { |
|
350 | + if ($return_string) { |
|
351 | 351 | // because we want to return a string, we are going to capture the output |
352 | 352 | ob_start(); |
353 | - include( $template_path ); |
|
353 | + include($template_path); |
|
354 | 354 | return ob_get_clean(); |
355 | 355 | } else { |
356 | - include( $template_path ); |
|
356 | + include($template_path); |
|
357 | 357 | } |
358 | 358 | return ''; |
359 | 359 | } |
@@ -371,27 +371,27 @@ discard block |
||
371 | 371 | * @param string $suffix added to the end of the generated class |
372 | 372 | * @return string |
373 | 373 | */ |
374 | - public static function get_object_css_class( $object = NULL, $prefix = '', $suffix = '' ) { |
|
374 | + public static function get_object_css_class($object = NULL, $prefix = '', $suffix = '') { |
|
375 | 375 | // in the beginning... |
376 | - $prefix = ! empty( $prefix ) ? rtrim( $prefix, '-' ) . '-' : ''; |
|
376 | + $prefix = ! empty($prefix) ? rtrim($prefix, '-').'-' : ''; |
|
377 | 377 | // da muddle |
378 | 378 | $class = ''; |
379 | 379 | // the end |
380 | - $suffix = ! empty( $suffix ) ? '-' . ltrim( $suffix, '-' ) : ''; |
|
380 | + $suffix = ! empty($suffix) ? '-'.ltrim($suffix, '-') : ''; |
|
381 | 381 | // is the passed object an EE object ? |
382 | - if ( $object instanceof EE_Base_Class ) { |
|
382 | + if ($object instanceof EE_Base_Class) { |
|
383 | 383 | // grab the exact type of object |
384 | - $obj_class = get_class( $object ); |
|
384 | + $obj_class = get_class($object); |
|
385 | 385 | // depending on the type of object... |
386 | - switch ( $obj_class ) { |
|
386 | + switch ($obj_class) { |
|
387 | 387 | // no specifics just yet... |
388 | 388 | default : |
389 | - $class = strtolower( str_replace( '_', '-', $obj_class )); |
|
390 | - $class .= method_exists( $obj_class, 'name' ) ? '-' . sanitize_title( $object->name() ) : ''; |
|
389 | + $class = strtolower(str_replace('_', '-', $obj_class)); |
|
390 | + $class .= method_exists($obj_class, 'name') ? '-'.sanitize_title($object->name()) : ''; |
|
391 | 391 | |
392 | 392 | } |
393 | 393 | } |
394 | - return $prefix . $class . $suffix; |
|
394 | + return $prefix.$class.$suffix; |
|
395 | 395 | } |
396 | 396 | |
397 | 397 | |
@@ -407,54 +407,54 @@ discard block |
||
407 | 407 | * @param string $cur_code_span_class |
408 | 408 | * @return string the html output for the formatted money value |
409 | 409 | */ |
410 | - public static function format_currency( $amount = NULL, $return_raw = FALSE, $display_code = TRUE, $CNT_ISO = '', $cur_code_span_class = 'currency-code' ) { |
|
410 | + public static function format_currency($amount = NULL, $return_raw = FALSE, $display_code = TRUE, $CNT_ISO = '', $cur_code_span_class = 'currency-code') { |
|
411 | 411 | // ensure amount was received |
412 | - if ( is_null( $amount ) ) { |
|
413 | - $msg = __( 'In order to format currency, an amount needs to be passed.', 'event_espresso' ); |
|
414 | - EE_Error::add_error( $msg, __FILE__, __FUNCTION__, __LINE__ ); |
|
412 | + if (is_null($amount)) { |
|
413 | + $msg = __('In order to format currency, an amount needs to be passed.', 'event_espresso'); |
|
414 | + EE_Error::add_error($msg, __FILE__, __FUNCTION__, __LINE__); |
|
415 | 415 | return ''; |
416 | 416 | } |
417 | 417 | //ensure amount is float |
418 | - $amount = apply_filters( 'FHEE__EEH_Template__format_currency__raw_amount', (float) $amount ); |
|
419 | - $CNT_ISO = apply_filters( 'FHEE__EEH_Template__format_currency__CNT_ISO', $CNT_ISO, $amount ); |
|
418 | + $amount = apply_filters('FHEE__EEH_Template__format_currency__raw_amount', (float) $amount); |
|
419 | + $CNT_ISO = apply_filters('FHEE__EEH_Template__format_currency__CNT_ISO', $CNT_ISO, $amount); |
|
420 | 420 | // filter raw amount (allows 0.00 to be changed to "free" for example) |
421 | - $amount_formatted = apply_filters( 'FHEE__EEH_Template__format_currency__amount', $amount, $return_raw ); |
|
421 | + $amount_formatted = apply_filters('FHEE__EEH_Template__format_currency__amount', $amount, $return_raw); |
|
422 | 422 | // still a number or was amount converted to a string like "free" ? |
423 | - if ( is_float( $amount_formatted )) { |
|
423 | + if (is_float($amount_formatted)) { |
|
424 | 424 | // was a country ISO code passed ? if so generate currency config object for that country |
425 | - $mny = $CNT_ISO !== '' ? new EE_Currency_Config( $CNT_ISO ) : NULL; |
|
425 | + $mny = $CNT_ISO !== '' ? new EE_Currency_Config($CNT_ISO) : NULL; |
|
426 | 426 | // verify results |
427 | - if ( ! $mny instanceof EE_Currency_Config ) { |
|
427 | + if ( ! $mny instanceof EE_Currency_Config) { |
|
428 | 428 | // set default config country currency settings |
429 | 429 | $mny = EE_Registry::instance()->CFG->currency instanceof EE_Currency_Config ? EE_Registry::instance()->CFG->currency : new EE_Currency_Config(); |
430 | 430 | } |
431 | 431 | // format float |
432 | - $amount_formatted = number_format( $amount, $mny->dec_plc, $mny->dec_mrk, $mny->thsnds ); |
|
432 | + $amount_formatted = number_format($amount, $mny->dec_plc, $mny->dec_mrk, $mny->thsnds); |
|
433 | 433 | // add formatting ? |
434 | - if ( ! $return_raw ) { |
|
434 | + if ( ! $return_raw) { |
|
435 | 435 | // add currency sign |
436 | - if( $mny->sign_b4 ){ |
|
437 | - if( $amount >= 0 ){ |
|
438 | - $amount_formatted = $mny->sign . $amount_formatted; |
|
439 | - }else{ |
|
440 | - $amount_formatted = '-' . $mny->sign . str_replace( '-', '', $amount_formatted ); |
|
436 | + if ($mny->sign_b4) { |
|
437 | + if ($amount >= 0) { |
|
438 | + $amount_formatted = $mny->sign.$amount_formatted; |
|
439 | + } else { |
|
440 | + $amount_formatted = '-'.$mny->sign.str_replace('-', '', $amount_formatted); |
|
441 | 441 | } |
442 | 442 | |
443 | - }else{ |
|
444 | - $amount_formatted = $amount_formatted . $mny->sign; |
|
443 | + } else { |
|
444 | + $amount_formatted = $amount_formatted.$mny->sign; |
|
445 | 445 | } |
446 | 446 | |
447 | 447 | // filter to allow global setting of display_code |
448 | - $display_code = apply_filters( 'FHEE__EEH_Template__format_currency__display_code', $display_code ); |
|
448 | + $display_code = apply_filters('FHEE__EEH_Template__format_currency__display_code', $display_code); |
|
449 | 449 | |
450 | 450 | // add currency code ? |
451 | - $amount_formatted = $display_code ? $amount_formatted . ' <span class="' . $cur_code_span_class . '">(' . $mny->code . ')</span>' : $amount_formatted; |
|
451 | + $amount_formatted = $display_code ? $amount_formatted.' <span class="'.$cur_code_span_class.'">('.$mny->code.')</span>' : $amount_formatted; |
|
452 | 452 | } |
453 | 453 | // filter results |
454 | - $amount_formatted = apply_filters( 'FHEE__EEH_Template__format_currency__amount_formatted', $amount_formatted, $mny, $return_raw ); |
|
454 | + $amount_formatted = apply_filters('FHEE__EEH_Template__format_currency__amount_formatted', $amount_formatted, $mny, $return_raw); |
|
455 | 455 | } |
456 | 456 | // clean up vars |
457 | - unset( $mny ); |
|
457 | + unset($mny); |
|
458 | 458 | // return formatted currency amount |
459 | 459 | return $amount_formatted; |
460 | 460 | } |
@@ -469,11 +469,11 @@ discard block |
||
469 | 469 | * @param string $schema 'UPPER', 'lower', or 'Sentence' |
470 | 470 | * @return string The localized label for the status id. |
471 | 471 | */ |
472 | - public static function pretty_status( $status_id, $plural = FALSE, $schema = 'upper' ) { |
|
472 | + public static function pretty_status($status_id, $plural = FALSE, $schema = 'upper') { |
|
473 | 473 | /** @type EEM_Status $EEM_Status */ |
474 | - $EEM_Status = EE_Registry::instance()->load_model( 'Status' ); |
|
475 | - $status = $EEM_Status->localized_status( array( $status_id => __( 'unknown', 'event_espresso' )), $plural, $schema ); |
|
476 | - return $status[ $status_id ]; |
|
474 | + $EEM_Status = EE_Registry::instance()->load_model('Status'); |
|
475 | + $status = $EEM_Status->localized_status(array($status_id => __('unknown', 'event_espresso')), $plural, $schema); |
|
476 | + return $status[$status_id]; |
|
477 | 477 | } |
478 | 478 | |
479 | 479 | |
@@ -488,21 +488,21 @@ discard block |
||
488 | 488 | * @param string $title |
489 | 489 | * @return string the html output for the button |
490 | 490 | */ |
491 | - public static function get_button_or_link( $url, $label, $class = 'button-primary', $icon = '', $title = '' ) { |
|
491 | + public static function get_button_or_link($url, $label, $class = 'button-primary', $icon = '', $title = '') { |
|
492 | 492 | $icon_html = ''; |
493 | - if ( ! empty( $icon ) ) { |
|
494 | - $dashicons = preg_split( "(ee-icon |dashicons )", $icon ); |
|
495 | - $dashicons = array_filter( $dashicons ); |
|
496 | - $count = count( $dashicons ); |
|
493 | + if ( ! empty($icon)) { |
|
494 | + $dashicons = preg_split("(ee-icon |dashicons )", $icon); |
|
495 | + $dashicons = array_filter($dashicons); |
|
496 | + $count = count($dashicons); |
|
497 | 497 | $icon_html .= $count > 1 ? '<span class="ee-composite-dashicon">' : ''; |
498 | - foreach ( $dashicons as $dashicon ) { |
|
499 | - $type = strpos( $dashicon, 'ee-icon' ) !== false ? 'ee-icon ' : 'dashicons '; |
|
500 | - $icon_html .= '<span class="' . $type . $dashicon . '"></span>'; |
|
498 | + foreach ($dashicons as $dashicon) { |
|
499 | + $type = strpos($dashicon, 'ee-icon') !== false ? 'ee-icon ' : 'dashicons '; |
|
500 | + $icon_html .= '<span class="'.$type.$dashicon.'"></span>'; |
|
501 | 501 | } |
502 | 502 | $icon_html .= $count > 1 ? '</span>' : ''; |
503 | 503 | } |
504 | - $label = ! empty( $icon ) ? $icon_html . $label : $label; |
|
505 | - $button = '<a id="' . sanitize_title_with_dashes($label) . '" href="' . $url . '" class="' . $class . '" title="' . $title . '">' . $label . '</a>'; |
|
504 | + $label = ! empty($icon) ? $icon_html.$label : $label; |
|
505 | + $button = '<a id="'.sanitize_title_with_dashes($label).'" href="'.$url.'" class="'.$class.'" title="'.$title.'">'.$label.'</a>'; |
|
506 | 506 | return $button; |
507 | 507 | } |
508 | 508 | |
@@ -519,21 +519,21 @@ discard block |
||
519 | 519 | * @param bool|string $help_text (optional) send help text you want to use for the link if default not to be used |
520 | 520 | * @return string generated link |
521 | 521 | */ |
522 | - public static function get_help_tab_link( $help_tab_id, $page = FALSE, $action = FALSE, $icon_style = FALSE, $help_text = FALSE ) { |
|
522 | + public static function get_help_tab_link($help_tab_id, $page = FALSE, $action = FALSE, $icon_style = FALSE, $help_text = FALSE) { |
|
523 | 523 | |
524 | - if ( ! $page ) |
|
525 | - $page = isset( $_REQUEST['page'] ) && ! empty( $_REQUEST['page'] ) ? sanitize_key( $_REQUEST['page'] ) : $page; |
|
524 | + if ( ! $page) |
|
525 | + $page = isset($_REQUEST['page']) && ! empty($_REQUEST['page']) ? sanitize_key($_REQUEST['page']) : $page; |
|
526 | 526 | |
527 | - if ( ! $action ) |
|
528 | - $action = isset( $_REQUEST['action'] ) && ! empty( $_REQUEST['action'] ) ? sanitize_key( $_REQUEST['action'] ) : $action; |
|
527 | + if ( ! $action) |
|
528 | + $action = isset($_REQUEST['action']) && ! empty($_REQUEST['action']) ? sanitize_key($_REQUEST['action']) : $action; |
|
529 | 529 | |
530 | 530 | $action = empty($action) ? 'default' : $action; |
531 | 531 | |
532 | 532 | |
533 | - $help_tab_lnk = $page . '-' . $action . '-' . $help_tab_id; |
|
534 | - $icon = !$icon_style ? ' dashicons-editor-help' : $icon_style; |
|
535 | - $help_text = !$help_text ? '' : $help_text; |
|
536 | - return '<a id="' . $help_tab_lnk . '" class="ee-clickable dashicons espresso-help-tab-lnk ee-icon-size-22' . $icon . '" title="' . esc_attr__('Click to open the \'Help\' tab for more information about this feature.', 'event_espresso') . '" > ' . $help_text . ' </a>'; |
|
533 | + $help_tab_lnk = $page.'-'.$action.'-'.$help_tab_id; |
|
534 | + $icon = ! $icon_style ? ' dashicons-editor-help' : $icon_style; |
|
535 | + $help_text = ! $help_text ? '' : $help_text; |
|
536 | + return '<a id="'.$help_tab_lnk.'" class="ee-clickable dashicons espresso-help-tab-lnk ee-icon-size-22'.$icon.'" title="'.esc_attr__('Click to open the \'Help\' tab for more information about this feature.', 'event_espresso').'" > '.$help_text.' </a>'; |
|
537 | 537 | } |
538 | 538 | |
539 | 539 | |
@@ -545,31 +545,31 @@ discard block |
||
545 | 545 | * @param EE_Help_Tour |
546 | 546 | * @return string html |
547 | 547 | */ |
548 | - public static function help_tour_stops_generator( EE_Help_Tour $tour ) { |
|
548 | + public static function help_tour_stops_generator(EE_Help_Tour $tour) { |
|
549 | 549 | $id = $tour->get_slug(); |
550 | 550 | $stops = $tour->get_stops(); |
551 | 551 | |
552 | - $content = '<ol style="display:none" id="' . $id . '">'; |
|
552 | + $content = '<ol style="display:none" id="'.$id.'">'; |
|
553 | 553 | |
554 | - foreach ( $stops as $stop ) { |
|
555 | - $data_id = !empty( $stop['id'] ) ? ' data-id="' . $stop['id'] . '"' : ''; |
|
556 | - $data_class = empty( $data_id ) && !empty( $stop['class'] ) ? ' data-class="' . $stop['class'] . '"' : ''; |
|
554 | + foreach ($stops as $stop) { |
|
555 | + $data_id = ! empty($stop['id']) ? ' data-id="'.$stop['id'].'"' : ''; |
|
556 | + $data_class = empty($data_id) && ! empty($stop['class']) ? ' data-class="'.$stop['class'].'"' : ''; |
|
557 | 557 | |
558 | 558 | //if container is set to modal then let's make sure we set the options accordingly |
559 | - if ( empty( $data_id ) && empty( $data_class ) ) { |
|
559 | + if (empty($data_id) && empty($data_class)) { |
|
560 | 560 | $stop['options']['modal'] = true; |
561 | 561 | $stop['options']['expose'] = true; |
562 | 562 | } |
563 | 563 | |
564 | - $custom_class = !empty( $stop['custom_class'] ) ? ' class="' . $stop['custom_class'] . '"' : ''; |
|
565 | - $button_text = !empty( $stop['button_text'] ) ? ' data-button="' . $stop['button_text'] . '"' : ''; |
|
564 | + $custom_class = ! empty($stop['custom_class']) ? ' class="'.$stop['custom_class'].'"' : ''; |
|
565 | + $button_text = ! empty($stop['button_text']) ? ' data-button="'.$stop['button_text'].'"' : ''; |
|
566 | 566 | $inner_content = isset($stop['content']) ? $stop['content'] : ''; |
567 | 567 | |
568 | 568 | //options |
569 | - if ( isset( $stop['options'] ) && is_array( $stop['options'] ) ) { |
|
569 | + if (isset($stop['options']) && is_array($stop['options'])) { |
|
570 | 570 | $options = ' data-options="'; |
571 | - foreach ( $stop['options'] as $option => $value ) { |
|
572 | - $options .= $option . ':' . $value . ';'; |
|
571 | + foreach ($stop['options'] as $option => $value) { |
|
572 | + $options .= $option.':'.$value.';'; |
|
573 | 573 | } |
574 | 574 | $options .= '"'; |
575 | 575 | } else { |
@@ -577,7 +577,7 @@ discard block |
||
577 | 577 | } |
578 | 578 | |
579 | 579 | //let's put all together |
580 | - $content .= '<li' . $data_id . $data_class . $custom_class . $button_text . $options . '>' . $inner_content . '</li>'; |
|
580 | + $content .= '<li'.$data_id.$data_class.$custom_class.$button_text.$options.'>'.$inner_content.'</li>'; |
|
581 | 581 | } |
582 | 582 | |
583 | 583 | $content .= '</ol>'; |
@@ -598,31 +598,31 @@ discard block |
||
598 | 598 | * @throws EE_Error |
599 | 599 | * @return string html structure for status. |
600 | 600 | */ |
601 | - public static function status_legend( $status_array, $active_status = '' ) { |
|
602 | - if ( !is_array( $status_array ) ) |
|
603 | - throw new EE_Error( esc_html__('The EEH_Template::status_legend helper required the incoming status_array argument to be an array!', 'event_espresso') ); |
|
601 | + public static function status_legend($status_array, $active_status = '') { |
|
602 | + if ( ! is_array($status_array)) |
|
603 | + throw new EE_Error(esc_html__('The EEH_Template::status_legend helper required the incoming status_array argument to be an array!', 'event_espresso')); |
|
604 | 604 | |
605 | 605 | $setup_array = array(); |
606 | - foreach ( $status_array as $item => $status ) { |
|
606 | + foreach ($status_array as $item => $status) { |
|
607 | 607 | $setup_array[$item] = array( |
608 | - 'class' => 'ee-status-legend ee-status-legend-' . $status, |
|
609 | - 'desc' => EEH_Template::pretty_status( $status, FALSE, 'sentence' ), |
|
608 | + 'class' => 'ee-status-legend ee-status-legend-'.$status, |
|
609 | + 'desc' => EEH_Template::pretty_status($status, FALSE, 'sentence'), |
|
610 | 610 | 'status' => $status |
611 | 611 | ); |
612 | 612 | } |
613 | 613 | |
614 | - $content = '<div class="ee-list-table-legend-container">' . "\n"; |
|
615 | - $content .= '<h4 class="status-legend-title">' . esc_html__('Status Legend', 'event_espresso') . '</h4>' . "\n"; |
|
616 | - $content .= '<dl class="ee-list-table-legend">' . "\n\t"; |
|
617 | - foreach ( $setup_array as $item => $details ) { |
|
614 | + $content = '<div class="ee-list-table-legend-container">'."\n"; |
|
615 | + $content .= '<h4 class="status-legend-title">'.esc_html__('Status Legend', 'event_espresso').'</h4>'."\n"; |
|
616 | + $content .= '<dl class="ee-list-table-legend">'."\n\t"; |
|
617 | + foreach ($setup_array as $item => $details) { |
|
618 | 618 | $active_class = $active_status == $details['status'] ? ' class="ee-is-active-status"' : ''; |
619 | - $content .= '<dt id="ee-legend-item-tooltip-' . $item . '"' . $active_class . '>' . "\n\t\t"; |
|
620 | - $content .= '<span class="' . $details['class'] . '"></span>' . "\n\t\t"; |
|
621 | - $content .= '<span class="ee-legend-description">' . $details['desc'] . '</span>' . "\n\t"; |
|
622 | - $content .= '</dt>' . "\n"; |
|
619 | + $content .= '<dt id="ee-legend-item-tooltip-'.$item.'"'.$active_class.'>'."\n\t\t"; |
|
620 | + $content .= '<span class="'.$details['class'].'"></span>'."\n\t\t"; |
|
621 | + $content .= '<span class="ee-legend-description">'.$details['desc'].'</span>'."\n\t"; |
|
622 | + $content .= '</dt>'."\n"; |
|
623 | 623 | } |
624 | - $content .= '</dl>' . "\n"; |
|
625 | - $content .= '</div>' . "\n"; |
|
624 | + $content .= '</dl>'."\n"; |
|
625 | + $content .= '</div>'."\n"; |
|
626 | 626 | return $content; |
627 | 627 | } |
628 | 628 | |
@@ -635,8 +635,8 @@ discard block |
||
635 | 635 | * @return string |
636 | 636 | */ |
637 | 637 | public static function layout_array_as_table($data) { |
638 | - if (is_object($data) || $data instanceof __PHP_Incomplete_Class ) { |
|
639 | - $data = (array)$data; |
|
638 | + if (is_object($data) || $data instanceof __PHP_Incomplete_Class) { |
|
639 | + $data = (array) $data; |
|
640 | 640 | } |
641 | 641 | ob_start(); |
642 | 642 | if (is_array($data)) { |
@@ -649,10 +649,10 @@ discard block |
||
649 | 649 | ?> |
650 | 650 | <tr> |
651 | 651 | <td> |
652 | - <?php echo $data_key;?> |
|
652 | + <?php echo $data_key; ?> |
|
653 | 653 | </td> |
654 | 654 | <td> |
655 | - <?php echo self::layout_array_as_table($data_values);?> |
|
655 | + <?php echo self::layout_array_as_table($data_values); ?> |
|
656 | 656 | </td> |
657 | 657 | </tr> |
658 | 658 | <?php |
@@ -666,7 +666,7 @@ discard block |
||
666 | 666 | <ul> |
667 | 667 | <?php |
668 | 668 | foreach ($data as $datum) { |
669 | - echo "<li>"; echo self::layout_array_as_table($datum);echo "</li>"; |
|
669 | + echo "<li>"; echo self::layout_array_as_table($datum); echo "</li>"; |
|
670 | 670 | }?> |
671 | 671 | </ul> |
672 | 672 | <?php |
@@ -674,7 +674,7 @@ discard block |
||
674 | 674 | } |
675 | 675 | else { |
676 | 676 | //simple value |
677 | - echo esc_html( $data ); |
|
677 | + echo esc_html($data); |
|
678 | 678 | } |
679 | 679 | return ob_get_clean(); |
680 | 680 | } |
@@ -696,8 +696,8 @@ discard block |
||
696 | 696 | * |
697 | 697 | * @return string |
698 | 698 | */ |
699 | - public static function paging_html( $total_items, $current, $per_page, $url, $show_num_field = TRUE, $paged_arg_name = 'paged', $items_label = array() ) { |
|
700 | - echo self::get_paging_html( $total_items, $current, $per_page, $url, $show_num_field, $paged_arg_name, $items_label ); |
|
699 | + public static function paging_html($total_items, $current, $per_page, $url, $show_num_field = TRUE, $paged_arg_name = 'paged', $items_label = array()) { |
|
700 | + echo self::get_paging_html($total_items, $current, $per_page, $url, $show_num_field, $paged_arg_name, $items_label); |
|
701 | 701 | } |
702 | 702 | |
703 | 703 | |
@@ -721,13 +721,13 @@ discard block |
||
721 | 721 | * ) |
722 | 722 | * @return string |
723 | 723 | */ |
724 | - public static function get_paging_html( $total_items, $current, $per_page, $url, $show_num_field = TRUE, $paged_arg_name = 'paged', $items_label = array() ) { |
|
724 | + public static function get_paging_html($total_items, $current, $per_page, $url, $show_num_field = TRUE, $paged_arg_name = 'paged', $items_label = array()) { |
|
725 | 725 | $page_links = array(); |
726 | 726 | $disable_first = $disable_last = ''; |
727 | 727 | $total_items = (int) $total_items; |
728 | 728 | $per_page = (int) $per_page; |
729 | 729 | $current = (int) $current; |
730 | - $paged_arg_name = empty( $paged_arg_name ) ? 'paged' : sanitize_key( $paged_arg_name ); |
|
730 | + $paged_arg_name = empty($paged_arg_name) ? 'paged' : sanitize_key($paged_arg_name); |
|
731 | 731 | |
732 | 732 | //filter items_label |
733 | 733 | $items_label = apply_filters( |
@@ -735,68 +735,68 @@ discard block |
||
735 | 735 | $items_label |
736 | 736 | ); |
737 | 737 | |
738 | - if ( empty( $items_label ) |
|
739 | - || ! is_array( $items_label ) |
|
740 | - || ! isset( $items_label['single'] ) |
|
741 | - || ! isset( $items_label['plural'] ) ) { |
|
738 | + if (empty($items_label) |
|
739 | + || ! is_array($items_label) |
|
740 | + || ! isset($items_label['single']) |
|
741 | + || ! isset($items_label['plural'])) { |
|
742 | 742 | $items_label = array( |
743 | - 'single' => __( '1 item', 'event_espresso' ), |
|
744 | - 'plural' => __( '%s items', 'event_espresso' ) |
|
743 | + 'single' => __('1 item', 'event_espresso'), |
|
744 | + 'plural' => __('%s items', 'event_espresso') |
|
745 | 745 | ); |
746 | 746 | } else { |
747 | 747 | $items_label = array( |
748 | - 'single' => '1 ' . esc_html( $items_label['single'] ), |
|
749 | - 'plural' => '%s ' . esc_html( $items_label['plural'] ) |
|
748 | + 'single' => '1 '.esc_html($items_label['single']), |
|
749 | + 'plural' => '%s '.esc_html($items_label['plural']) |
|
750 | 750 | ); |
751 | 751 | } |
752 | 752 | |
753 | - $total_pages = ceil( $total_items / $per_page ); |
|
753 | + $total_pages = ceil($total_items / $per_page); |
|
754 | 754 | |
755 | - if ( $total_pages <= 1 ) |
|
755 | + if ($total_pages <= 1) |
|
756 | 756 | return ''; |
757 | 757 | |
758 | - $item_label = $total_items > 1 ? sprintf( $items_label['plural'], $total_items ) : $items_label['single']; |
|
758 | + $item_label = $total_items > 1 ? sprintf($items_label['plural'], $total_items) : $items_label['single']; |
|
759 | 759 | |
760 | - $output = '<span class="displaying-num">' . $item_label . '</span>'; |
|
760 | + $output = '<span class="displaying-num">'.$item_label.'</span>'; |
|
761 | 761 | |
762 | - if ( $current === 1 ) { |
|
762 | + if ($current === 1) { |
|
763 | 763 | $disable_first = ' disabled'; |
764 | 764 | } |
765 | - if ( $current == $total_pages ) { |
|
765 | + if ($current == $total_pages) { |
|
766 | 766 | $disable_last = ' disabled'; |
767 | 767 | } |
768 | 768 | |
769 | - $page_links[] = sprintf( "<a class='%s' title='%s' href='%s'>%s</a>", |
|
770 | - 'first-page' . $disable_first, |
|
771 | - esc_attr__( 'Go to the first page' ), |
|
772 | - esc_url( remove_query_arg( $paged_arg_name, $url ) ), |
|
769 | + $page_links[] = sprintf("<a class='%s' title='%s' href='%s'>%s</a>", |
|
770 | + 'first-page'.$disable_first, |
|
771 | + esc_attr__('Go to the first page'), |
|
772 | + esc_url(remove_query_arg($paged_arg_name, $url)), |
|
773 | 773 | '«' |
774 | 774 | ); |
775 | 775 | |
776 | 776 | $page_links[] = sprintf( |
777 | 777 | '<a class="%s" title="%s" href="%s">%s</a>', |
778 | - 'prev-page' . $disable_first, |
|
779 | - esc_attr__( 'Go to the previous page' ), |
|
780 | - esc_url( add_query_arg( $paged_arg_name, max( 1, $current-1 ), $url ) ), |
|
778 | + 'prev-page'.$disable_first, |
|
779 | + esc_attr__('Go to the previous page'), |
|
780 | + esc_url(add_query_arg($paged_arg_name, max(1, $current - 1), $url)), |
|
781 | 781 | '‹' |
782 | 782 | ); |
783 | 783 | |
784 | - if ( ! $show_num_field ) { |
|
784 | + if ( ! $show_num_field) { |
|
785 | 785 | $html_current_page = $current; |
786 | 786 | } else { |
787 | - $html_current_page = sprintf( "<input class='current-page' title='%s' type='text' name=$paged_arg_name value='%s' size='%d' />", |
|
788 | - esc_attr__( 'Current page' ), |
|
787 | + $html_current_page = sprintf("<input class='current-page' title='%s' type='text' name=$paged_arg_name value='%s' size='%d' />", |
|
788 | + esc_attr__('Current page'), |
|
789 | 789 | $current, |
790 | - strlen( $total_pages ) |
|
790 | + strlen($total_pages) |
|
791 | 791 | ); |
792 | 792 | } |
793 | 793 | |
794 | 794 | $html_total_pages = sprintf( |
795 | 795 | '<span class="total-pages">%s</span>', |
796 | - number_format_i18n( $total_pages ) |
|
796 | + number_format_i18n($total_pages) |
|
797 | 797 | ); |
798 | 798 | $page_links[] = sprintf( |
799 | - _x( '%3$s%1$s of %2$s%4$s', 'paging' ), |
|
799 | + _x('%3$s%1$s of %2$s%4$s', 'paging'), |
|
800 | 800 | $html_current_page, |
801 | 801 | $html_total_pages, |
802 | 802 | '<span class="paging-input">', |
@@ -805,29 +805,29 @@ discard block |
||
805 | 805 | |
806 | 806 | $page_links[] = sprintf( |
807 | 807 | '<a class="%s" title="%s" href="%s">%s</a>', |
808 | - 'next-page' . $disable_last, |
|
809 | - esc_attr__( 'Go to the next page' ), |
|
810 | - esc_url( add_query_arg( $paged_arg_name, min( $total_pages, $current+1 ), $url ) ), |
|
808 | + 'next-page'.$disable_last, |
|
809 | + esc_attr__('Go to the next page'), |
|
810 | + esc_url(add_query_arg($paged_arg_name, min($total_pages, $current + 1), $url)), |
|
811 | 811 | '›' |
812 | 812 | ); |
813 | 813 | |
814 | 814 | $page_links[] = sprintf( |
815 | 815 | '<a class="%s" title="%s" href="%s">%s</a>', |
816 | - 'last-page' . $disable_last, |
|
817 | - esc_attr__( 'Go to the last page' ), |
|
818 | - esc_url( add_query_arg( $paged_arg_name, $total_pages, $url ) ), |
|
816 | + 'last-page'.$disable_last, |
|
817 | + esc_attr__('Go to the last page'), |
|
818 | + esc_url(add_query_arg($paged_arg_name, $total_pages, $url)), |
|
819 | 819 | '»' |
820 | 820 | ); |
821 | 821 | |
822 | - $output .= "\n" . '<span class="pagination-links">' . join( "\n", $page_links ) . '</span>'; |
|
822 | + $output .= "\n".'<span class="pagination-links">'.join("\n", $page_links).'</span>'; |
|
823 | 823 | // set page class |
824 | - if ( $total_pages ) { |
|
824 | + if ($total_pages) { |
|
825 | 825 | $page_class = $total_pages < 2 ? ' one-page' : ''; |
826 | 826 | } else { |
827 | 827 | $page_class = ' no-pages'; |
828 | 828 | } |
829 | 829 | |
830 | - return '<div class="tablenav"><div class="tablenav-pages' . $page_class . '">' . $output . '</div></div>'; |
|
830 | + return '<div class="tablenav"><div class="tablenav-pages'.$page_class.'">'.$output.'</div></div>'; |
|
831 | 831 | } |
832 | 832 | |
833 | 833 | |
@@ -837,8 +837,8 @@ discard block |
||
837 | 837 | * @param string $wrap_id |
838 | 838 | * @return string |
839 | 839 | */ |
840 | - public static function powered_by_event_espresso( $wrap_class = '', $wrap_id = '', array $query_args = array() ) { |
|
841 | - $admin = is_admin() && ! ( defined( 'DOING_AJAX' ) && DOING_AJAX ); |
|
840 | + public static function powered_by_event_espresso($wrap_class = '', $wrap_id = '', array $query_args = array()) { |
|
841 | + $admin = is_admin() && ! (defined('DOING_AJAX') && DOING_AJAX); |
|
842 | 842 | if ( |
843 | 843 | ! $admin && |
844 | 844 | ! apply_filters( |
@@ -849,9 +849,9 @@ discard block |
||
849 | 849 | return ''; |
850 | 850 | } |
851 | 851 | $tag = $admin ? 'span' : 'div'; |
852 | - $attributes = ! empty( $wrap_id ) ? " id=\"{$wrap_id}\"" : ''; |
|
852 | + $attributes = ! empty($wrap_id) ? " id=\"{$wrap_id}\"" : ''; |
|
853 | 853 | $wrap_class = $admin ? "{$wrap_class} float-left" : $wrap_class; |
854 | - $attributes .= ! empty( $wrap_class ) |
|
854 | + $attributes .= ! empty($wrap_class) |
|
855 | 855 | ? " class=\"{$wrap_class} powered-by-event-espresso-credit\"" |
856 | 856 | : ' class="powered-by-event-espresso-credit"'; |
857 | 857 | $query_args = array_merge( |
@@ -863,9 +863,9 @@ discard block |
||
863 | 863 | ), |
864 | 864 | $query_args |
865 | 865 | ); |
866 | - $powered_by = apply_filters( 'FHEE__EEH_Template__powered_by_event_espresso_text', $admin ? 'Event Espresso - ' . EVENT_ESPRESSO_VERSION : 'Event Espresso' ); |
|
867 | - $url = add_query_arg( $query_args, 'https://eventespresso.com/' ); |
|
868 | - $url = apply_filters( 'FHEE__EEH_Template__powered_by_event_espresso__url', $url ); |
|
866 | + $powered_by = apply_filters('FHEE__EEH_Template__powered_by_event_espresso_text', $admin ? 'Event Espresso - '.EVENT_ESPRESSO_VERSION : 'Event Espresso'); |
|
867 | + $url = add_query_arg($query_args, 'https://eventespresso.com/'); |
|
868 | + $url = apply_filters('FHEE__EEH_Template__powered_by_event_espresso__url', $url); |
|
869 | 869 | return (string) apply_filters( |
870 | 870 | 'FHEE__EEH_Template__powered_by_event_espresso__html', |
871 | 871 | sprintf( |
@@ -897,7 +897,7 @@ discard block |
||
897 | 897 | //add_filter( 'FHEE__EEH_Template__format_currency__amount', 'convert_zero_to_free', 10, 2 ); |
898 | 898 | |
899 | 899 | |
900 | -if ( ! function_exists( 'espresso_pagination' ) ) { |
|
900 | +if ( ! function_exists('espresso_pagination')) { |
|
901 | 901 | /** |
902 | 902 | * espresso_pagination |
903 | 903 | * |
@@ -909,21 +909,21 @@ discard block |
||
909 | 909 | $big = 999999999; // need an unlikely integer |
910 | 910 | $pagination = paginate_links( |
911 | 911 | array( |
912 | - 'base' => str_replace( $big, '%#%', esc_url( get_pagenum_link( $big ) ) ), |
|
912 | + 'base' => str_replace($big, '%#%', esc_url(get_pagenum_link($big))), |
|
913 | 913 | 'format' => '?paged=%#%', |
914 | - 'current' => max( 1, get_query_var( 'paged' ) ), |
|
914 | + 'current' => max(1, get_query_var('paged')), |
|
915 | 915 | 'total' => $wp_query->max_num_pages, |
916 | 916 | 'show_all' => true, |
917 | 917 | 'end_size' => 10, |
918 | 918 | 'mid_size' => 6, |
919 | 919 | 'prev_next' => true, |
920 | - 'prev_text' => __( '‹ PREV', 'event_espresso' ), |
|
921 | - 'next_text' => __( 'NEXT ›', 'event_espresso' ), |
|
920 | + 'prev_text' => __('‹ PREV', 'event_espresso'), |
|
921 | + 'next_text' => __('NEXT ›', 'event_espresso'), |
|
922 | 922 | 'type' => 'plain', |
923 | 923 | 'add_args' => false, |
924 | 924 | 'add_fragment' => '' |
925 | 925 | ) |
926 | 926 | ); |
927 | - echo ! empty( $pagination ) ? '<div class="ee-pagination-dv clear">' . $pagination . '</div>' : ''; |
|
927 | + echo ! empty($pagination) ? '<div class="ee-pagination-dv clear">'.$pagination.'</div>' : ''; |
|
928 | 928 | } |
929 | 929 | } |
930 | 930 | \ No newline at end of file |
@@ -146,7 +146,7 @@ |
||
146 | 146 | } |
147 | 147 | } |
148 | 148 | global $wpdb; |
149 | - $wpdb->query('DROP TABLE ' . implode(', ', $tables_to_delete)); |
|
149 | + $wpdb->query('DROP TABLE '.implode(', ', $tables_to_delete)); |
|
150 | 150 | return $tables_to_delete; |
151 | 151 | } |
152 | 152 |
@@ -17,211 +17,211 @@ |
||
17 | 17 | class TableManager extends \EE_Base |
18 | 18 | { |
19 | 19 | |
20 | - /** |
|
21 | - * @var TableAnalysis $table_analysis |
|
22 | - */ |
|
23 | - private $table_analysis; |
|
24 | - |
|
25 | - |
|
26 | - |
|
27 | - /** |
|
28 | - * TableManager constructor. |
|
29 | - * |
|
30 | - * @param TableAnalysis $TableAnalysis |
|
31 | - */ |
|
32 | - public function __construct(TableAnalysis $TableAnalysis) |
|
33 | - { |
|
34 | - $this->table_analysis = $TableAnalysis; |
|
35 | - } |
|
36 | - |
|
37 | - |
|
38 | - |
|
39 | - /** |
|
40 | - * Gets the injected table analyzer, or throws an exception |
|
41 | - * |
|
42 | - * @return TableAnalysis |
|
43 | - * @throws \EE_Error |
|
44 | - */ |
|
45 | - protected function getTableAnalysis() |
|
46 | - { |
|
47 | - if ($this->table_analysis instanceof TableAnalysis) { |
|
48 | - return $this->table_analysis; |
|
49 | - } else { |
|
50 | - throw new \EE_Error( |
|
51 | - sprintf( |
|
52 | - __('Table analysis class on class %1$s is not set properly.', 'event_espresso'), |
|
53 | - get_class($this) |
|
54 | - ) |
|
55 | - ); |
|
56 | - } |
|
57 | - } |
|
58 | - |
|
59 | - |
|
60 | - |
|
61 | - /** |
|
62 | - * @param string $table_name which can optionally start with $wpdb->prefix or not |
|
63 | - * @param string $column_name |
|
64 | - * @param string $column_info |
|
65 | - * @return bool|false|int |
|
66 | - */ |
|
67 | - public function addColumn($table_name, $column_name, $column_info = 'INT UNSIGNED NOT NULL') |
|
68 | - { |
|
69 | - if (apply_filters('FHEE__EEH_Activation__add_column_if_it_doesnt_exist__short_circuit', false)) { |
|
70 | - return false; |
|
71 | - } |
|
72 | - global $wpdb; |
|
73 | - $full_table_name = $this->getTableAnalysis()->ensureTableNameHasPrefix($table_name); |
|
74 | - $columns = $this->getTableColumns($table_name); |
|
75 | - if ( ! in_array($column_name, $columns)) { |
|
76 | - $alter_query = "ALTER TABLE $full_table_name ADD $column_name $column_info"; |
|
77 | - return $wpdb->query($alter_query); |
|
78 | - } |
|
79 | - return true; |
|
80 | - } |
|
81 | - |
|
82 | - |
|
83 | - |
|
84 | - /** |
|
85 | - * Gets the name of all columns on the table. $table_name can |
|
86 | - * optionally start with $wpdb->prefix or not |
|
87 | - * |
|
88 | - * @global \wpdb $wpdb |
|
89 | - * @param string $table_name |
|
90 | - * @return array |
|
91 | - */ |
|
92 | - public function getTableColumns($table_name) |
|
93 | - { |
|
94 | - global $wpdb; |
|
95 | - $table_name = $this->getTableAnalysis()->ensureTableNameHasPrefix($table_name); |
|
96 | - $fieldArray = array(); |
|
97 | - if ( ! empty($table_name)) { |
|
98 | - $columns = $wpdb->get_results("SHOW COLUMNS FROM $table_name "); |
|
99 | - if ($columns !== false) { |
|
100 | - foreach ($columns as $column) { |
|
101 | - $fieldArray[] = $column->Field; |
|
102 | - } |
|
103 | - } |
|
104 | - } |
|
105 | - return $fieldArray; |
|
106 | - } |
|
107 | - |
|
108 | - |
|
109 | - |
|
110 | - /** |
|
111 | - * Drops the specified table from the database. $table_name can |
|
112 | - * optionally start with $wpdb->prefix or not |
|
113 | - * |
|
114 | - * @global \wpdb $wpdb |
|
115 | - * @param string $table_name |
|
116 | - * @return int |
|
117 | - */ |
|
118 | - public function dropTable($table_name) |
|
119 | - { |
|
120 | - global $wpdb; |
|
121 | - if ($this->getTableAnalysis()->tableExists($table_name)) { |
|
122 | - $table_name = $this->getTableAnalysis()->ensureTableNameHasPrefix($table_name); |
|
123 | - return $wpdb->query("DROP TABLE IF EXISTS $table_name"); |
|
124 | - } |
|
125 | - return 0; |
|
126 | - } |
|
127 | - |
|
128 | - |
|
129 | - |
|
130 | - /** |
|
131 | - * Drops all the tables mentioned in a single MYSQL query. Double-checks |
|
132 | - * each table name provided has a wpdb prefix attached, and that it exists. |
|
133 | - * Returns the list actually deleted |
|
134 | - * |
|
135 | - * @global WPDB $wpdb |
|
136 | - * @param array $table_names |
|
137 | - * @return array of table names which we deleted |
|
138 | - */ |
|
139 | - public function dropTables($table_names) |
|
140 | - { |
|
141 | - $tables_to_delete = array(); |
|
142 | - foreach ($table_names as $table_name) { |
|
143 | - $table_name = $this->getTableAnalysis()->ensureTableNameHasPrefix($table_name); |
|
144 | - if ($this->getTableAnalysis()->tableExists($table_name)) { |
|
145 | - $tables_to_delete[] = $table_name; |
|
146 | - } |
|
147 | - } |
|
148 | - global $wpdb; |
|
149 | - $wpdb->query('DROP TABLE ' . implode(', ', $tables_to_delete)); |
|
150 | - return $tables_to_delete; |
|
151 | - } |
|
152 | - |
|
153 | - |
|
154 | - |
|
155 | - /** |
|
156 | - * Drops the specified index from the specified table. $table_name can |
|
157 | - * optionally start with $wpdb->prefix or not |
|
158 | - * |
|
159 | - * @global \wpdb $wpdb |
|
160 | - * @param string $table_name |
|
161 | - * @param string $indexName |
|
162 | - * @return int |
|
163 | - */ |
|
164 | - public function dropIndex($table_name, $indexName) |
|
165 | - { |
|
166 | - if (apply_filters('FHEE__EEH_Activation__drop_index__short_circuit', false)) { |
|
167 | - return false; |
|
168 | - } |
|
169 | - global $wpdb; |
|
170 | - $table_name = $this->getTableAnalysis()->ensureTableNameHasPrefix($table_name); |
|
171 | - $index_exists_query = "SHOW INDEX FROM $table_name WHERE Key_name = '$indexName'"; |
|
172 | - if ( |
|
173 | - $this->getTableAnalysis()->tableExists($table_name) |
|
174 | - && $wpdb->get_var($index_exists_query) |
|
175 | - === $table_name //using get_var with the $index_exists_query returns the table's name |
|
176 | - ) { |
|
177 | - return $wpdb->query("ALTER TABLE $table_name DROP INDEX $indexName"); |
|
178 | - } |
|
179 | - return 0; |
|
180 | - } |
|
181 | - |
|
182 | - |
|
183 | - |
|
184 | - /** |
|
185 | - * Just creates the requested table. $table_name can |
|
186 | - * optionally start with $wpdb->prefix or not |
|
187 | - * |
|
188 | - * @param string $table_name |
|
189 | - * @param string $createSql defining the table's columns and indexes |
|
190 | - * @param string $engine (no need to specify "ENGINE=", that's implied) |
|
191 | - * @return void |
|
192 | - * @throws \EE_Error |
|
193 | - */ |
|
194 | - public function createTable($table_name, $createSql, $engine = 'MyISAM') |
|
195 | - { |
|
196 | - // does $sql contain valid column information? ( LPT: https://regex101.com/ is great for working out regex patterns ) |
|
197 | - if (preg_match('((((.*?))(,\s))+)', $createSql, $valid_column_data)) { |
|
198 | - $table_name = $this->getTableAnalysis()->ensureTableNameHasPrefix($table_name); |
|
199 | - $SQL = "CREATE TABLE $table_name ( $createSql ) ENGINE=$engine DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci;"; |
|
200 | - /** @var \wpdb $wpdb */ |
|
201 | - global $wpdb; |
|
202 | - //get $wpdb to echo errors, but buffer them. This way at least WE know an error |
|
203 | - //happened. And then we can choose to tell the end user |
|
204 | - $old_show_errors_policy = $wpdb->show_errors(true); |
|
205 | - $old_error_suppression_policy = $wpdb->suppress_errors(false); |
|
206 | - ob_start(); |
|
207 | - dbDelta($SQL); |
|
208 | - $output = ob_get_contents(); |
|
209 | - ob_end_clean(); |
|
210 | - $wpdb->show_errors($old_show_errors_policy); |
|
211 | - $wpdb->suppress_errors($old_error_suppression_policy); |
|
212 | - if ( ! empty($output)) { |
|
213 | - throw new \EE_Error($output); |
|
214 | - } |
|
215 | - } else { |
|
216 | - throw new \EE_Error( |
|
217 | - sprintf( |
|
218 | - __('The following table creation SQL does not contain valid information about the table columns: %1$s %2$s', |
|
219 | - 'event_espresso'), |
|
220 | - '<br />', |
|
221 | - $createSql |
|
222 | - ) |
|
223 | - ); |
|
224 | - } |
|
225 | - } |
|
20 | + /** |
|
21 | + * @var TableAnalysis $table_analysis |
|
22 | + */ |
|
23 | + private $table_analysis; |
|
24 | + |
|
25 | + |
|
26 | + |
|
27 | + /** |
|
28 | + * TableManager constructor. |
|
29 | + * |
|
30 | + * @param TableAnalysis $TableAnalysis |
|
31 | + */ |
|
32 | + public function __construct(TableAnalysis $TableAnalysis) |
|
33 | + { |
|
34 | + $this->table_analysis = $TableAnalysis; |
|
35 | + } |
|
36 | + |
|
37 | + |
|
38 | + |
|
39 | + /** |
|
40 | + * Gets the injected table analyzer, or throws an exception |
|
41 | + * |
|
42 | + * @return TableAnalysis |
|
43 | + * @throws \EE_Error |
|
44 | + */ |
|
45 | + protected function getTableAnalysis() |
|
46 | + { |
|
47 | + if ($this->table_analysis instanceof TableAnalysis) { |
|
48 | + return $this->table_analysis; |
|
49 | + } else { |
|
50 | + throw new \EE_Error( |
|
51 | + sprintf( |
|
52 | + __('Table analysis class on class %1$s is not set properly.', 'event_espresso'), |
|
53 | + get_class($this) |
|
54 | + ) |
|
55 | + ); |
|
56 | + } |
|
57 | + } |
|
58 | + |
|
59 | + |
|
60 | + |
|
61 | + /** |
|
62 | + * @param string $table_name which can optionally start with $wpdb->prefix or not |
|
63 | + * @param string $column_name |
|
64 | + * @param string $column_info |
|
65 | + * @return bool|false|int |
|
66 | + */ |
|
67 | + public function addColumn($table_name, $column_name, $column_info = 'INT UNSIGNED NOT NULL') |
|
68 | + { |
|
69 | + if (apply_filters('FHEE__EEH_Activation__add_column_if_it_doesnt_exist__short_circuit', false)) { |
|
70 | + return false; |
|
71 | + } |
|
72 | + global $wpdb; |
|
73 | + $full_table_name = $this->getTableAnalysis()->ensureTableNameHasPrefix($table_name); |
|
74 | + $columns = $this->getTableColumns($table_name); |
|
75 | + if ( ! in_array($column_name, $columns)) { |
|
76 | + $alter_query = "ALTER TABLE $full_table_name ADD $column_name $column_info"; |
|
77 | + return $wpdb->query($alter_query); |
|
78 | + } |
|
79 | + return true; |
|
80 | + } |
|
81 | + |
|
82 | + |
|
83 | + |
|
84 | + /** |
|
85 | + * Gets the name of all columns on the table. $table_name can |
|
86 | + * optionally start with $wpdb->prefix or not |
|
87 | + * |
|
88 | + * @global \wpdb $wpdb |
|
89 | + * @param string $table_name |
|
90 | + * @return array |
|
91 | + */ |
|
92 | + public function getTableColumns($table_name) |
|
93 | + { |
|
94 | + global $wpdb; |
|
95 | + $table_name = $this->getTableAnalysis()->ensureTableNameHasPrefix($table_name); |
|
96 | + $fieldArray = array(); |
|
97 | + if ( ! empty($table_name)) { |
|
98 | + $columns = $wpdb->get_results("SHOW COLUMNS FROM $table_name "); |
|
99 | + if ($columns !== false) { |
|
100 | + foreach ($columns as $column) { |
|
101 | + $fieldArray[] = $column->Field; |
|
102 | + } |
|
103 | + } |
|
104 | + } |
|
105 | + return $fieldArray; |
|
106 | + } |
|
107 | + |
|
108 | + |
|
109 | + |
|
110 | + /** |
|
111 | + * Drops the specified table from the database. $table_name can |
|
112 | + * optionally start with $wpdb->prefix or not |
|
113 | + * |
|
114 | + * @global \wpdb $wpdb |
|
115 | + * @param string $table_name |
|
116 | + * @return int |
|
117 | + */ |
|
118 | + public function dropTable($table_name) |
|
119 | + { |
|
120 | + global $wpdb; |
|
121 | + if ($this->getTableAnalysis()->tableExists($table_name)) { |
|
122 | + $table_name = $this->getTableAnalysis()->ensureTableNameHasPrefix($table_name); |
|
123 | + return $wpdb->query("DROP TABLE IF EXISTS $table_name"); |
|
124 | + } |
|
125 | + return 0; |
|
126 | + } |
|
127 | + |
|
128 | + |
|
129 | + |
|
130 | + /** |
|
131 | + * Drops all the tables mentioned in a single MYSQL query. Double-checks |
|
132 | + * each table name provided has a wpdb prefix attached, and that it exists. |
|
133 | + * Returns the list actually deleted |
|
134 | + * |
|
135 | + * @global WPDB $wpdb |
|
136 | + * @param array $table_names |
|
137 | + * @return array of table names which we deleted |
|
138 | + */ |
|
139 | + public function dropTables($table_names) |
|
140 | + { |
|
141 | + $tables_to_delete = array(); |
|
142 | + foreach ($table_names as $table_name) { |
|
143 | + $table_name = $this->getTableAnalysis()->ensureTableNameHasPrefix($table_name); |
|
144 | + if ($this->getTableAnalysis()->tableExists($table_name)) { |
|
145 | + $tables_to_delete[] = $table_name; |
|
146 | + } |
|
147 | + } |
|
148 | + global $wpdb; |
|
149 | + $wpdb->query('DROP TABLE ' . implode(', ', $tables_to_delete)); |
|
150 | + return $tables_to_delete; |
|
151 | + } |
|
152 | + |
|
153 | + |
|
154 | + |
|
155 | + /** |
|
156 | + * Drops the specified index from the specified table. $table_name can |
|
157 | + * optionally start with $wpdb->prefix or not |
|
158 | + * |
|
159 | + * @global \wpdb $wpdb |
|
160 | + * @param string $table_name |
|
161 | + * @param string $indexName |
|
162 | + * @return int |
|
163 | + */ |
|
164 | + public function dropIndex($table_name, $indexName) |
|
165 | + { |
|
166 | + if (apply_filters('FHEE__EEH_Activation__drop_index__short_circuit', false)) { |
|
167 | + return false; |
|
168 | + } |
|
169 | + global $wpdb; |
|
170 | + $table_name = $this->getTableAnalysis()->ensureTableNameHasPrefix($table_name); |
|
171 | + $index_exists_query = "SHOW INDEX FROM $table_name WHERE Key_name = '$indexName'"; |
|
172 | + if ( |
|
173 | + $this->getTableAnalysis()->tableExists($table_name) |
|
174 | + && $wpdb->get_var($index_exists_query) |
|
175 | + === $table_name //using get_var with the $index_exists_query returns the table's name |
|
176 | + ) { |
|
177 | + return $wpdb->query("ALTER TABLE $table_name DROP INDEX $indexName"); |
|
178 | + } |
|
179 | + return 0; |
|
180 | + } |
|
181 | + |
|
182 | + |
|
183 | + |
|
184 | + /** |
|
185 | + * Just creates the requested table. $table_name can |
|
186 | + * optionally start with $wpdb->prefix or not |
|
187 | + * |
|
188 | + * @param string $table_name |
|
189 | + * @param string $createSql defining the table's columns and indexes |
|
190 | + * @param string $engine (no need to specify "ENGINE=", that's implied) |
|
191 | + * @return void |
|
192 | + * @throws \EE_Error |
|
193 | + */ |
|
194 | + public function createTable($table_name, $createSql, $engine = 'MyISAM') |
|
195 | + { |
|
196 | + // does $sql contain valid column information? ( LPT: https://regex101.com/ is great for working out regex patterns ) |
|
197 | + if (preg_match('((((.*?))(,\s))+)', $createSql, $valid_column_data)) { |
|
198 | + $table_name = $this->getTableAnalysis()->ensureTableNameHasPrefix($table_name); |
|
199 | + $SQL = "CREATE TABLE $table_name ( $createSql ) ENGINE=$engine DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci;"; |
|
200 | + /** @var \wpdb $wpdb */ |
|
201 | + global $wpdb; |
|
202 | + //get $wpdb to echo errors, but buffer them. This way at least WE know an error |
|
203 | + //happened. And then we can choose to tell the end user |
|
204 | + $old_show_errors_policy = $wpdb->show_errors(true); |
|
205 | + $old_error_suppression_policy = $wpdb->suppress_errors(false); |
|
206 | + ob_start(); |
|
207 | + dbDelta($SQL); |
|
208 | + $output = ob_get_contents(); |
|
209 | + ob_end_clean(); |
|
210 | + $wpdb->show_errors($old_show_errors_policy); |
|
211 | + $wpdb->suppress_errors($old_error_suppression_policy); |
|
212 | + if ( ! empty($output)) { |
|
213 | + throw new \EE_Error($output); |
|
214 | + } |
|
215 | + } else { |
|
216 | + throw new \EE_Error( |
|
217 | + sprintf( |
|
218 | + __('The following table creation SQL does not contain valid information about the table columns: %1$s %2$s', |
|
219 | + 'event_espresso'), |
|
220 | + '<br />', |
|
221 | + $createSql |
|
222 | + ) |
|
223 | + ); |
|
224 | + } |
|
225 | + } |
|
226 | 226 | |
227 | 227 | } |
@@ -9,7 +9,7 @@ discard block |
||
9 | 9 | //unfortunately, this needs to be done upon INCLUSION of this file, |
10 | 10 | //instead of construction, because it only gets constructed on first page load |
11 | 11 | //(all other times it gets resurrected from a wordpress option) |
12 | -$stages = glob(EE_CORE . 'data_migration_scripts/4_9_0_stages/*'); |
|
12 | +$stages = glob(EE_CORE.'data_migration_scripts/4_9_0_stages/*'); |
|
13 | 13 | $class_to_filepath = array(); |
14 | 14 | foreach ($stages as $filepath) { |
15 | 15 | $matches = array(); |
@@ -67,7 +67,7 @@ discard block |
||
67 | 67 | } elseif ( ! $version_string) { |
68 | 68 | // echo "no version string provided: $version_string"; |
69 | 69 | //no version string provided... this must be pre 4.3 |
70 | - return false;//changed mind. dont want people thinking they should migrate yet because they cant |
|
70 | + return false; //changed mind. dont want people thinking they should migrate yet because they cant |
|
71 | 71 | } else { |
72 | 72 | // echo "$version_string doesnt apply"; |
73 | 73 | return false; |
@@ -91,7 +91,7 @@ discard block |
||
91 | 91 | */ |
92 | 92 | public function schema_changes_before_migration() |
93 | 93 | { |
94 | - require_once(EE_HELPERS . 'EEH_Activation.helper.php'); |
|
94 | + require_once(EE_HELPERS.'EEH_Activation.helper.php'); |
|
95 | 95 | $now_in_mysql = current_time('mysql', true); |
96 | 96 | $table_name = 'esp_answer'; |
97 | 97 | $sql = " ANS_ID int(10) unsigned NOT NULL AUTO_INCREMENT, |
@@ -12,9 +12,9 @@ discard block |
||
12 | 12 | $stages = glob(EE_CORE . 'data_migration_scripts/4_9_0_stages/*'); |
13 | 13 | $class_to_filepath = array(); |
14 | 14 | foreach ($stages as $filepath) { |
15 | - $matches = array(); |
|
16 | - preg_match('~4_9_0_stages/(.*).dmsstage.php~', $filepath, $matches); |
|
17 | - $class_to_filepath[$matches[1]] = $filepath; |
|
15 | + $matches = array(); |
|
16 | + preg_match('~4_9_0_stages/(.*).dmsstage.php~', $filepath, $matches); |
|
17 | + $class_to_filepath[$matches[1]] = $filepath; |
|
18 | 18 | } |
19 | 19 | //give addons a chance to autoload their stages too |
20 | 20 | $class_to_filepath = apply_filters('FHEE__EE_DMS_4_9_0__autoloaded_stages', $class_to_filepath); |
@@ -33,77 +33,77 @@ discard block |
||
33 | 33 | class EE_DMS_Core_4_9_0 extends EE_Data_Migration_Script_Base |
34 | 34 | { |
35 | 35 | |
36 | - /** |
|
37 | - * return EE_DMS_Core_4_9_0 |
|
38 | - * |
|
39 | - * @param TableManager $table_manager |
|
40 | - * @param TableAnalysis $table_analysis |
|
41 | - */ |
|
42 | - public function __construct(TableManager $table_manager = null, TableAnalysis $table_analysis = null) |
|
43 | - { |
|
44 | - $this->_pretty_name = __("Data Migration to Event Espresso 4.9.0.P", "event_espresso"); |
|
45 | - $this->_priority = 10; |
|
46 | - $this->_migration_stages = array( |
|
47 | - new EE_DMS_4_9_0_Email_System_Question(), |
|
48 | - new EE_DMS_4_9_0_Answers_With_No_Registration(), |
|
49 | - ); |
|
50 | - parent::__construct($table_manager, $table_analysis); |
|
51 | - } |
|
36 | + /** |
|
37 | + * return EE_DMS_Core_4_9_0 |
|
38 | + * |
|
39 | + * @param TableManager $table_manager |
|
40 | + * @param TableAnalysis $table_analysis |
|
41 | + */ |
|
42 | + public function __construct(TableManager $table_manager = null, TableAnalysis $table_analysis = null) |
|
43 | + { |
|
44 | + $this->_pretty_name = __("Data Migration to Event Espresso 4.9.0.P", "event_espresso"); |
|
45 | + $this->_priority = 10; |
|
46 | + $this->_migration_stages = array( |
|
47 | + new EE_DMS_4_9_0_Email_System_Question(), |
|
48 | + new EE_DMS_4_9_0_Answers_With_No_Registration(), |
|
49 | + ); |
|
50 | + parent::__construct($table_manager, $table_analysis); |
|
51 | + } |
|
52 | 52 | |
53 | 53 | |
54 | 54 | |
55 | - /** |
|
56 | - * Whether to migrate or not. |
|
57 | - * |
|
58 | - * @param array $version_array |
|
59 | - * @return bool |
|
60 | - */ |
|
61 | - public function can_migrate_from_version($version_array) |
|
62 | - { |
|
63 | - $version_string = $version_array['Core']; |
|
64 | - if (version_compare($version_string, '4.9.0', '<=') && version_compare($version_string, '4.8.0', '>=')) { |
|
55 | + /** |
|
56 | + * Whether to migrate or not. |
|
57 | + * |
|
58 | + * @param array $version_array |
|
59 | + * @return bool |
|
60 | + */ |
|
61 | + public function can_migrate_from_version($version_array) |
|
62 | + { |
|
63 | + $version_string = $version_array['Core']; |
|
64 | + if (version_compare($version_string, '4.9.0', '<=') && version_compare($version_string, '4.8.0', '>=')) { |
|
65 | 65 | // echo "$version_string can be migrated from"; |
66 | - return true; |
|
67 | - } elseif ( ! $version_string) { |
|
66 | + return true; |
|
67 | + } elseif ( ! $version_string) { |
|
68 | 68 | // echo "no version string provided: $version_string"; |
69 | - //no version string provided... this must be pre 4.3 |
|
70 | - return false;//changed mind. dont want people thinking they should migrate yet because they cant |
|
71 | - } else { |
|
69 | + //no version string provided... this must be pre 4.3 |
|
70 | + return false;//changed mind. dont want people thinking they should migrate yet because they cant |
|
71 | + } else { |
|
72 | 72 | // echo "$version_string doesnt apply"; |
73 | - return false; |
|
74 | - } |
|
75 | - } |
|
73 | + return false; |
|
74 | + } |
|
75 | + } |
|
76 | 76 | |
77 | 77 | |
78 | 78 | |
79 | - /** |
|
80 | - * @return string|void |
|
81 | - */ |
|
82 | - public function pretty_name() |
|
83 | - { |
|
84 | - return __("Core Data Migration to version 4.9.0", "event_espresso"); |
|
85 | - } |
|
79 | + /** |
|
80 | + * @return string|void |
|
81 | + */ |
|
82 | + public function pretty_name() |
|
83 | + { |
|
84 | + return __("Core Data Migration to version 4.9.0", "event_espresso"); |
|
85 | + } |
|
86 | 86 | |
87 | 87 | |
88 | 88 | |
89 | - /** |
|
90 | - * @return bool |
|
91 | - */ |
|
92 | - public function schema_changes_before_migration() |
|
93 | - { |
|
94 | - require_once(EE_HELPERS . 'EEH_Activation.helper.php'); |
|
95 | - $now_in_mysql = current_time('mysql', true); |
|
96 | - $table_name = 'esp_answer'; |
|
97 | - $sql = " ANS_ID int(10) unsigned NOT NULL AUTO_INCREMENT, |
|
89 | + /** |
|
90 | + * @return bool |
|
91 | + */ |
|
92 | + public function schema_changes_before_migration() |
|
93 | + { |
|
94 | + require_once(EE_HELPERS . 'EEH_Activation.helper.php'); |
|
95 | + $now_in_mysql = current_time('mysql', true); |
|
96 | + $table_name = 'esp_answer'; |
|
97 | + $sql = " ANS_ID int(10) unsigned NOT NULL AUTO_INCREMENT, |
|
98 | 98 | REG_ID int(10) unsigned NOT NULL, |
99 | 99 | QST_ID int(10) unsigned NOT NULL, |
100 | 100 | ANS_value text NOT NULL, |
101 | 101 | PRIMARY KEY (ANS_ID), |
102 | 102 | KEY REG_ID (REG_ID), |
103 | 103 | KEY QST_ID (QST_ID)"; |
104 | - $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB'); |
|
105 | - $table_name = 'esp_attendee_meta'; |
|
106 | - $sql = "ATTM_ID int(10) unsigned NOT NULL AUTO_INCREMENT, |
|
104 | + $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB'); |
|
105 | + $table_name = 'esp_attendee_meta'; |
|
106 | + $sql = "ATTM_ID int(10) unsigned NOT NULL AUTO_INCREMENT, |
|
107 | 107 | ATT_ID bigint(20) unsigned NOT NULL, |
108 | 108 | ATT_fname varchar(45) NOT NULL, |
109 | 109 | ATT_lname varchar(45) NOT NULL, |
@@ -120,9 +120,9 @@ discard block |
||
120 | 120 | KEY ATT_email (ATT_email), |
121 | 121 | KEY ATT_lname (ATT_lname), |
122 | 122 | KEY ATT_fname (ATT_fname)"; |
123 | - $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB '); |
|
124 | - $table_name = 'esp_checkin'; |
|
125 | - $sql = "CHK_ID int(10) unsigned NOT NULL AUTO_INCREMENT, |
|
123 | + $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB '); |
|
124 | + $table_name = 'esp_checkin'; |
|
125 | + $sql = "CHK_ID int(10) unsigned NOT NULL AUTO_INCREMENT, |
|
126 | 126 | REG_ID int(10) unsigned NOT NULL, |
127 | 127 | DTT_ID int(10) unsigned NOT NULL, |
128 | 128 | CHK_in tinyint(1) unsigned NOT NULL DEFAULT 1, |
@@ -130,9 +130,9 @@ discard block |
||
130 | 130 | PRIMARY KEY (CHK_ID), |
131 | 131 | KEY REG_ID (REG_ID), |
132 | 132 | KEY DTT_ID (DTT_ID)"; |
133 | - $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB'); |
|
134 | - $table_name = 'esp_country'; |
|
135 | - $sql = "CNT_ISO varchar(2) collate utf8_bin NOT NULL, |
|
133 | + $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB'); |
|
134 | + $table_name = 'esp_country'; |
|
135 | + $sql = "CNT_ISO varchar(2) collate utf8_bin NOT NULL, |
|
136 | 136 | CNT_ISO3 varchar(3) collate utf8_bin NOT NULL, |
137 | 137 | RGN_ID tinyint(3) unsigned DEFAULT NULL, |
138 | 138 | CNT_name varchar(45) collate utf8_bin NOT NULL, |
@@ -148,25 +148,25 @@ discard block |
||
148 | 148 | CNT_is_EU tinyint(1) DEFAULT '0', |
149 | 149 | CNT_active tinyint(1) DEFAULT '0', |
150 | 150 | PRIMARY KEY (CNT_ISO)"; |
151 | - $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB'); |
|
152 | - $table_name = 'esp_currency'; |
|
153 | - $sql = "CUR_code varchar(6) collate utf8_bin NOT NULL, |
|
151 | + $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB'); |
|
152 | + $table_name = 'esp_currency'; |
|
153 | + $sql = "CUR_code varchar(6) collate utf8_bin NOT NULL, |
|
154 | 154 | CUR_single varchar(45) collate utf8_bin DEFAULT 'dollar', |
155 | 155 | CUR_plural varchar(45) collate utf8_bin DEFAULT 'dollars', |
156 | 156 | CUR_sign varchar(45) collate utf8_bin DEFAULT '$', |
157 | 157 | CUR_dec_plc varchar(1) collate utf8_bin NOT NULL DEFAULT '2', |
158 | 158 | CUR_active tinyint(1) DEFAULT '0', |
159 | 159 | PRIMARY KEY (CUR_code)"; |
160 | - $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB'); |
|
161 | - $table_name = 'esp_currency_payment_method'; |
|
162 | - $sql = "CPM_ID int(11) NOT NULL AUTO_INCREMENT, |
|
160 | + $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB'); |
|
161 | + $table_name = 'esp_currency_payment_method'; |
|
162 | + $sql = "CPM_ID int(11) NOT NULL AUTO_INCREMENT, |
|
163 | 163 | CUR_code varchar(6) collate utf8_bin NOT NULL, |
164 | 164 | PMD_ID int(11) NOT NULL, |
165 | 165 | PRIMARY KEY (CPM_ID), |
166 | 166 | KEY PMD_ID (PMD_ID)"; |
167 | - $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB '); |
|
168 | - $table_name = 'esp_datetime'; |
|
169 | - $sql = "DTT_ID int(10) unsigned NOT NULL AUTO_INCREMENT, |
|
167 | + $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB '); |
|
168 | + $table_name = 'esp_datetime'; |
|
169 | + $sql = "DTT_ID int(10) unsigned NOT NULL AUTO_INCREMENT, |
|
170 | 170 | EVT_ID bigint(20) unsigned NOT NULL, |
171 | 171 | DTT_name varchar(255) NOT NULL DEFAULT '', |
172 | 172 | DTT_description text NOT NULL, |
@@ -182,25 +182,25 @@ discard block |
||
182 | 182 | KEY DTT_EVT_start (DTT_EVT_start), |
183 | 183 | KEY EVT_ID (EVT_ID), |
184 | 184 | KEY DTT_is_primary (DTT_is_primary)"; |
185 | - $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB'); |
|
186 | - $table_name = "esp_datetime_ticket"; |
|
187 | - $sql = "DTK_ID int(10) unsigned NOT NULL AUTO_INCREMENT, |
|
185 | + $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB'); |
|
186 | + $table_name = "esp_datetime_ticket"; |
|
187 | + $sql = "DTK_ID int(10) unsigned NOT NULL AUTO_INCREMENT, |
|
188 | 188 | DTT_ID int(10) unsigned NOT NULL, |
189 | 189 | TKT_ID int(10) unsigned NOT NULL, |
190 | 190 | PRIMARY KEY (DTK_ID), |
191 | 191 | KEY DTT_ID (DTT_ID), |
192 | 192 | KEY TKT_ID (TKT_ID)"; |
193 | - $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB'); |
|
194 | - $table_name = 'esp_event_message_template'; |
|
195 | - $sql = "EMT_ID bigint(20) unsigned NOT NULL AUTO_INCREMENT, |
|
193 | + $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB'); |
|
194 | + $table_name = 'esp_event_message_template'; |
|
195 | + $sql = "EMT_ID bigint(20) unsigned NOT NULL AUTO_INCREMENT, |
|
196 | 196 | EVT_ID bigint(20) unsigned NOT NULL DEFAULT 0, |
197 | 197 | GRP_ID int(10) unsigned NOT NULL DEFAULT 0, |
198 | 198 | PRIMARY KEY (EMT_ID), |
199 | 199 | KEY EVT_ID (EVT_ID), |
200 | 200 | KEY GRP_ID (GRP_ID)"; |
201 | - $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB'); |
|
202 | - $table_name = 'esp_event_meta'; |
|
203 | - $sql = "EVTM_ID int(10) NOT NULL AUTO_INCREMENT, |
|
201 | + $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB'); |
|
202 | + $table_name = 'esp_event_meta'; |
|
203 | + $sql = "EVTM_ID int(10) NOT NULL AUTO_INCREMENT, |
|
204 | 204 | EVT_ID bigint(20) unsigned NOT NULL, |
205 | 205 | EVT_display_desc tinyint(1) unsigned NOT NULL DEFAULT 1, |
206 | 206 | EVT_display_ticket_selector tinyint(1) unsigned NOT NULL DEFAULT 1, |
@@ -215,34 +215,34 @@ discard block |
||
215 | 215 | EVT_donations tinyint(1) NULL, |
216 | 216 | PRIMARY KEY (EVTM_ID), |
217 | 217 | KEY EVT_ID (EVT_ID)"; |
218 | - $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB'); |
|
219 | - $table_name = 'esp_event_question_group'; |
|
220 | - $sql = "EQG_ID int(10) unsigned NOT NULL AUTO_INCREMENT, |
|
218 | + $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB'); |
|
219 | + $table_name = 'esp_event_question_group'; |
|
220 | + $sql = "EQG_ID int(10) unsigned NOT NULL AUTO_INCREMENT, |
|
221 | 221 | EVT_ID bigint(20) unsigned NOT NULL, |
222 | 222 | QSG_ID int(10) unsigned NOT NULL, |
223 | 223 | EQG_primary tinyint(1) unsigned NOT NULL DEFAULT 0, |
224 | 224 | PRIMARY KEY (EQG_ID), |
225 | 225 | KEY EVT_ID (EVT_ID), |
226 | 226 | KEY QSG_ID (QSG_ID)"; |
227 | - $this->_table_is_changed_in_this_version($table_name, $sql, 'ENGINE=InnoDB'); |
|
228 | - $table_name = 'esp_event_venue'; |
|
229 | - $sql = "EVV_ID int(11) NOT NULL AUTO_INCREMENT, |
|
227 | + $this->_table_is_changed_in_this_version($table_name, $sql, 'ENGINE=InnoDB'); |
|
228 | + $table_name = 'esp_event_venue'; |
|
229 | + $sql = "EVV_ID int(11) NOT NULL AUTO_INCREMENT, |
|
230 | 230 | EVT_ID bigint(20) unsigned NOT NULL, |
231 | 231 | VNU_ID bigint(20) unsigned NOT NULL, |
232 | 232 | EVV_primary tinyint(1) unsigned NOT NULL DEFAULT 0, |
233 | 233 | PRIMARY KEY (EVV_ID)"; |
234 | - $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB'); |
|
235 | - $table_name = 'esp_extra_meta'; |
|
236 | - $sql = "EXM_ID int(11) NOT NULL AUTO_INCREMENT, |
|
234 | + $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB'); |
|
235 | + $table_name = 'esp_extra_meta'; |
|
236 | + $sql = "EXM_ID int(11) NOT NULL AUTO_INCREMENT, |
|
237 | 237 | OBJ_ID int(11) DEFAULT NULL, |
238 | 238 | EXM_type varchar(45) DEFAULT NULL, |
239 | 239 | EXM_key varchar(45) DEFAULT NULL, |
240 | 240 | EXM_value text, |
241 | 241 | PRIMARY KEY (EXM_ID), |
242 | 242 | KEY EXM_type (EXM_type,OBJ_ID,EXM_key)"; |
243 | - $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB'); |
|
244 | - $table_name = 'esp_extra_join'; |
|
245 | - $sql = "EXJ_ID int(11) NOT NULL AUTO_INCREMENT, |
|
243 | + $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB'); |
|
244 | + $table_name = 'esp_extra_join'; |
|
245 | + $sql = "EXJ_ID int(11) NOT NULL AUTO_INCREMENT, |
|
246 | 246 | EXJ_first_model_id varchar(6) NOT NULL, |
247 | 247 | EXJ_first_model_name varchar(20) NOT NULL, |
248 | 248 | EXJ_second_model_id varchar(6) NOT NULL, |
@@ -250,9 +250,9 @@ discard block |
||
250 | 250 | PRIMARY KEY (EXJ_ID), |
251 | 251 | KEY first_model (EXJ_first_model_name,EXJ_first_model_id), |
252 | 252 | KEY second_model (EXJ_second_model_name,EXJ_second_model_id)"; |
253 | - $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB '); |
|
254 | - $table_name = 'esp_line_item'; |
|
255 | - $sql = "LIN_ID int(11) NOT NULL AUTO_INCREMENT, |
|
253 | + $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB '); |
|
254 | + $table_name = 'esp_line_item'; |
|
255 | + $sql = "LIN_ID int(11) NOT NULL AUTO_INCREMENT, |
|
256 | 256 | LIN_code varchar(245) NOT NULL DEFAULT '', |
257 | 257 | TXN_ID int(11) DEFAULT NULL, |
258 | 258 | LIN_name varchar(245) NOT NULL DEFAULT '', |
@@ -271,9 +271,9 @@ discard block |
||
271 | 271 | PRIMARY KEY (LIN_ID), |
272 | 272 | KEY LIN_code (LIN_code(191)), |
273 | 273 | KEY TXN_ID (TXN_ID)"; |
274 | - $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB'); |
|
275 | - $table_name = 'esp_log'; |
|
276 | - $sql = "LOG_ID int(11) NOT NULL AUTO_INCREMENT, |
|
274 | + $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB'); |
|
275 | + $table_name = 'esp_log'; |
|
276 | + $sql = "LOG_ID int(11) NOT NULL AUTO_INCREMENT, |
|
277 | 277 | LOG_time datetime DEFAULT NULL, |
278 | 278 | OBJ_ID varchar(45) DEFAULT NULL, |
279 | 279 | OBJ_type varchar(45) DEFAULT NULL, |
@@ -284,9 +284,9 @@ discard block |
||
284 | 284 | KEY LOG_time (LOG_time), |
285 | 285 | KEY OBJ (OBJ_type,OBJ_ID), |
286 | 286 | KEY LOG_type (LOG_type)"; |
287 | - $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB'); |
|
288 | - $table_name = 'esp_message'; |
|
289 | - $sql = "MSG_ID bigint(20) unsigned NOT NULL AUTO_INCREMENT, |
|
287 | + $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB'); |
|
288 | + $table_name = 'esp_message'; |
|
289 | + $sql = "MSG_ID bigint(20) unsigned NOT NULL AUTO_INCREMENT, |
|
290 | 290 | GRP_ID int(10) unsigned NULL, |
291 | 291 | MSG_token varchar(255) NULL, |
292 | 292 | TXN_ID int(10) unsigned NULL, |
@@ -318,18 +318,18 @@ discard block |
||
318 | 318 | KEY STS_ID (STS_ID), |
319 | 319 | KEY MSG_created (MSG_created), |
320 | 320 | KEY MSG_modified (MSG_modified)"; |
321 | - $this->_table_is_new_in_this_version($table_name, $sql, 'ENGINE=InnoDB'); |
|
322 | - $table_name = 'esp_message_template'; |
|
323 | - $sql = "MTP_ID int(10) unsigned NOT NULL AUTO_INCREMENT, |
|
321 | + $this->_table_is_new_in_this_version($table_name, $sql, 'ENGINE=InnoDB'); |
|
322 | + $table_name = 'esp_message_template'; |
|
323 | + $sql = "MTP_ID int(10) unsigned NOT NULL AUTO_INCREMENT, |
|
324 | 324 | GRP_ID int(10) unsigned NOT NULL, |
325 | 325 | MTP_context varchar(50) NOT NULL, |
326 | 326 | MTP_template_field varchar(30) NOT NULL, |
327 | 327 | MTP_content text NOT NULL, |
328 | 328 | PRIMARY KEY (MTP_ID), |
329 | 329 | KEY GRP_ID (GRP_ID)"; |
330 | - $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB'); |
|
331 | - $table_name = 'esp_message_template_group'; |
|
332 | - $sql = "GRP_ID int(10) unsigned NOT NULL AUTO_INCREMENT, |
|
330 | + $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB'); |
|
331 | + $table_name = 'esp_message_template_group'; |
|
332 | + $sql = "GRP_ID int(10) unsigned NOT NULL AUTO_INCREMENT, |
|
333 | 333 | MTP_user_id int(10) NOT NULL DEFAULT '1', |
334 | 334 | MTP_name varchar(245) NOT NULL DEFAULT '', |
335 | 335 | MTP_description varchar(245) NOT NULL DEFAULT '', |
@@ -341,9 +341,9 @@ discard block |
||
341 | 341 | MTP_is_active tinyint(1) NOT NULL DEFAULT '1', |
342 | 342 | PRIMARY KEY (GRP_ID), |
343 | 343 | KEY MTP_user_id (MTP_user_id)"; |
344 | - $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB'); |
|
345 | - $table_name = 'esp_payment'; |
|
346 | - $sql = "PAY_ID int(10) unsigned NOT NULL AUTO_INCREMENT, |
|
344 | + $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB'); |
|
345 | + $table_name = 'esp_payment'; |
|
346 | + $sql = "PAY_ID int(10) unsigned NOT NULL AUTO_INCREMENT, |
|
347 | 347 | TXN_ID int(10) unsigned DEFAULT NULL, |
348 | 348 | STS_ID varchar(3) collate utf8_bin DEFAULT NULL, |
349 | 349 | PAY_timestamp datetime NOT NULL DEFAULT '0000-00-00 00:00:00', |
@@ -360,9 +360,9 @@ discard block |
||
360 | 360 | PRIMARY KEY (PAY_ID), |
361 | 361 | KEY PAY_timestamp (PAY_timestamp), |
362 | 362 | KEY TXN_ID (TXN_ID)"; |
363 | - $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB '); |
|
364 | - $table_name = 'esp_payment_method'; |
|
365 | - $sql = "PMD_ID int(11) NOT NULL AUTO_INCREMENT, |
|
363 | + $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB '); |
|
364 | + $table_name = 'esp_payment_method'; |
|
365 | + $sql = "PMD_ID int(11) NOT NULL AUTO_INCREMENT, |
|
366 | 366 | PMD_type varchar(124) DEFAULT NULL, |
367 | 367 | PMD_name varchar(255) DEFAULT NULL, |
368 | 368 | PMD_desc text, |
@@ -378,24 +378,24 @@ discard block |
||
378 | 378 | PRIMARY KEY (PMD_ID), |
379 | 379 | UNIQUE KEY PMD_slug_UNIQUE (PMD_slug), |
380 | 380 | KEY PMD_type (PMD_type)"; |
381 | - $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB '); |
|
382 | - $table_name = "esp_ticket_price"; |
|
383 | - $sql = "TKP_ID int(10) unsigned NOT NULL AUTO_INCREMENT, |
|
381 | + $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB '); |
|
382 | + $table_name = "esp_ticket_price"; |
|
383 | + $sql = "TKP_ID int(10) unsigned NOT NULL AUTO_INCREMENT, |
|
384 | 384 | TKT_ID int(10) unsigned NOT NULL, |
385 | 385 | PRC_ID int(10) unsigned NOT NULL, |
386 | 386 | PRIMARY KEY (TKP_ID), |
387 | 387 | KEY TKT_ID (TKT_ID), |
388 | 388 | KEY PRC_ID (PRC_ID)"; |
389 | - $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB'); |
|
390 | - $table_name = "esp_ticket_template"; |
|
391 | - $sql = "TTM_ID int(10) unsigned NOT NULL AUTO_INCREMENT, |
|
389 | + $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB'); |
|
390 | + $table_name = "esp_ticket_template"; |
|
391 | + $sql = "TTM_ID int(10) unsigned NOT NULL AUTO_INCREMENT, |
|
392 | 392 | TTM_name varchar(45) NOT NULL, |
393 | 393 | TTM_description text, |
394 | 394 | TTM_file varchar(45), |
395 | 395 | PRIMARY KEY (TTM_ID)"; |
396 | - $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB'); |
|
397 | - $table_name = 'esp_question'; |
|
398 | - $sql = 'QST_ID int(10) unsigned NOT NULL AUTO_INCREMENT, |
|
396 | + $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB'); |
|
397 | + $table_name = 'esp_question'; |
|
398 | + $sql = 'QST_ID int(10) unsigned NOT NULL AUTO_INCREMENT, |
|
399 | 399 | QST_display_text text NOT NULL, |
400 | 400 | QST_admin_label varchar(255) NOT NULL, |
401 | 401 | QST_system varchar(25) DEFAULT NULL, |
@@ -409,18 +409,18 @@ discard block |
||
409 | 409 | QST_deleted tinyint(2) unsigned NOT NULL DEFAULT 0, |
410 | 410 | PRIMARY KEY (QST_ID), |
411 | 411 | KEY QST_order (QST_order)'; |
412 | - $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB'); |
|
413 | - $table_name = 'esp_question_group_question'; |
|
414 | - $sql = "QGQ_ID int(10) unsigned NOT NULL AUTO_INCREMENT, |
|
412 | + $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB'); |
|
413 | + $table_name = 'esp_question_group_question'; |
|
414 | + $sql = "QGQ_ID int(10) unsigned NOT NULL AUTO_INCREMENT, |
|
415 | 415 | QSG_ID int(10) unsigned NOT NULL, |
416 | 416 | QST_ID int(10) unsigned NOT NULL, |
417 | 417 | QGQ_order int(10) unsigned NOT NULL DEFAULT 0, |
418 | 418 | PRIMARY KEY (QGQ_ID), |
419 | 419 | KEY QST_ID (QST_ID), |
420 | 420 | KEY QSG_ID_order (QSG_ID,QGQ_order)"; |
421 | - $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB'); |
|
422 | - $table_name = 'esp_question_option'; |
|
423 | - $sql = "QSO_ID int(10) unsigned NOT NULL AUTO_INCREMENT, |
|
421 | + $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB'); |
|
422 | + $table_name = 'esp_question_option'; |
|
423 | + $sql = "QSO_ID int(10) unsigned NOT NULL AUTO_INCREMENT, |
|
424 | 424 | QSO_value varchar(255) NOT NULL, |
425 | 425 | QSO_desc text NOT NULL, |
426 | 426 | QST_ID int(10) unsigned NOT NULL, |
@@ -430,9 +430,9 @@ discard block |
||
430 | 430 | PRIMARY KEY (QSO_ID), |
431 | 431 | KEY QST_ID (QST_ID), |
432 | 432 | KEY QSO_order (QSO_order)"; |
433 | - $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB'); |
|
434 | - $table_name = 'esp_registration'; |
|
435 | - $sql = "REG_ID int(10) unsigned NOT NULL AUTO_INCREMENT, |
|
433 | + $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB'); |
|
434 | + $table_name = 'esp_registration'; |
|
435 | + $sql = "REG_ID int(10) unsigned NOT NULL AUTO_INCREMENT, |
|
436 | 436 | EVT_ID bigint(20) unsigned NOT NULL, |
437 | 437 | ATT_ID bigint(20) unsigned NOT NULL, |
438 | 438 | TXN_ID int(10) unsigned NOT NULL, |
@@ -456,18 +456,18 @@ discard block |
||
456 | 456 | KEY TKT_ID (TKT_ID), |
457 | 457 | KEY EVT_ID (EVT_ID), |
458 | 458 | KEY STS_ID (STS_ID)"; |
459 | - $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB '); |
|
460 | - $table_name = 'esp_registration_payment'; |
|
461 | - $sql = "RPY_ID int(10) unsigned NOT NULL AUTO_INCREMENT, |
|
459 | + $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB '); |
|
460 | + $table_name = 'esp_registration_payment'; |
|
461 | + $sql = "RPY_ID int(10) unsigned NOT NULL AUTO_INCREMENT, |
|
462 | 462 | REG_ID int(10) unsigned NOT NULL, |
463 | 463 | PAY_ID int(10) unsigned NULL, |
464 | 464 | RPY_amount decimal(10,3) NOT NULL DEFAULT '0.00', |
465 | 465 | PRIMARY KEY (RPY_ID), |
466 | 466 | KEY REG_ID (REG_ID), |
467 | 467 | KEY PAY_ID (PAY_ID)"; |
468 | - $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB '); |
|
469 | - $table_name = 'esp_state'; |
|
470 | - $sql = "STA_ID smallint(5) unsigned NOT NULL AUTO_INCREMENT, |
|
468 | + $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB '); |
|
469 | + $table_name = 'esp_state'; |
|
470 | + $sql = "STA_ID smallint(5) unsigned NOT NULL AUTO_INCREMENT, |
|
471 | 471 | CNT_ISO varchar(2) collate utf8_bin NOT NULL, |
472 | 472 | STA_abbrev varchar(24) collate utf8_bin NOT NULL, |
473 | 473 | STA_name varchar(100) collate utf8_bin NOT NULL, |
@@ -475,9 +475,9 @@ discard block |
||
475 | 475 | PRIMARY KEY (STA_ID), |
476 | 476 | KEY STA_abbrev (STA_abbrev), |
477 | 477 | KEY CNT_ISO (CNT_ISO)"; |
478 | - $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB'); |
|
479 | - $table_name = 'esp_status'; |
|
480 | - $sql = "STS_ID varchar(3) NOT NULL, |
|
478 | + $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB'); |
|
479 | + $table_name = 'esp_status'; |
|
480 | + $sql = "STS_ID varchar(3) NOT NULL, |
|
481 | 481 | STS_code varchar(45) NOT NULL, |
482 | 482 | STS_type varchar(45) NOT NULL, |
483 | 483 | STS_can_edit tinyint(1) NOT NULL DEFAULT 0, |
@@ -485,9 +485,9 @@ discard block |
||
485 | 485 | STS_open tinyint(1) NOT NULL DEFAULT 1, |
486 | 486 | UNIQUE KEY STS_ID_UNIQUE (STS_ID), |
487 | 487 | KEY STS_type (STS_type)"; |
488 | - $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB'); |
|
489 | - $table_name = 'esp_transaction'; |
|
490 | - $sql = "TXN_ID int(10) unsigned NOT NULL AUTO_INCREMENT, |
|
488 | + $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB'); |
|
489 | + $table_name = 'esp_transaction'; |
|
490 | + $sql = "TXN_ID int(10) unsigned NOT NULL AUTO_INCREMENT, |
|
491 | 491 | TXN_timestamp datetime NOT NULL DEFAULT '0000-00-00 00:00:00', |
492 | 492 | TXN_total decimal(10,3) DEFAULT '0.00', |
493 | 493 | TXN_paid decimal(10,3) NOT NULL DEFAULT '0.00', |
@@ -499,9 +499,9 @@ discard block |
||
499 | 499 | PRIMARY KEY (TXN_ID), |
500 | 500 | KEY TXN_timestamp (TXN_timestamp), |
501 | 501 | KEY STS_ID (STS_ID)"; |
502 | - $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB'); |
|
503 | - $table_name = 'esp_venue_meta'; |
|
504 | - $sql = "VNUM_ID int(11) NOT NULL AUTO_INCREMENT, |
|
502 | + $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB'); |
|
503 | + $table_name = 'esp_venue_meta'; |
|
504 | + $sql = "VNUM_ID int(11) NOT NULL AUTO_INCREMENT, |
|
505 | 505 | VNU_ID bigint(20) unsigned NOT NULL DEFAULT 0, |
506 | 506 | VNU_address varchar(255) DEFAULT NULL, |
507 | 507 | VNU_address2 varchar(255) DEFAULT NULL, |
@@ -520,10 +520,10 @@ discard block |
||
520 | 520 | KEY VNU_ID (VNU_ID), |
521 | 521 | KEY STA_ID (STA_ID), |
522 | 522 | KEY CNT_ISO (CNT_ISO)"; |
523 | - $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB'); |
|
524 | - //modified tables |
|
525 | - $table_name = "esp_price"; |
|
526 | - $sql = "PRC_ID int(10) unsigned NOT NULL AUTO_INCREMENT, |
|
523 | + $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB'); |
|
524 | + //modified tables |
|
525 | + $table_name = "esp_price"; |
|
526 | + $sql = "PRC_ID int(10) unsigned NOT NULL AUTO_INCREMENT, |
|
527 | 527 | PRT_ID tinyint(3) unsigned NOT NULL, |
528 | 528 | PRC_amount decimal(10,3) NOT NULL DEFAULT '0.00', |
529 | 529 | PRC_name varchar(245) NOT NULL, |
@@ -536,9 +536,9 @@ discard block |
||
536 | 536 | PRC_parent int(10) unsigned DEFAULT 0, |
537 | 537 | PRIMARY KEY (PRC_ID), |
538 | 538 | KEY PRT_ID (PRT_ID)"; |
539 | - $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB'); |
|
540 | - $table_name = "esp_price_type"; |
|
541 | - $sql = "PRT_ID tinyint(3) unsigned NOT NULL AUTO_INCREMENT, |
|
539 | + $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB'); |
|
540 | + $table_name = "esp_price_type"; |
|
541 | + $sql = "PRT_ID tinyint(3) unsigned NOT NULL AUTO_INCREMENT, |
|
542 | 542 | PRT_name varchar(45) NOT NULL, |
543 | 543 | PBT_ID tinyint(3) unsigned NOT NULL DEFAULT '1', |
544 | 544 | PRT_is_percent tinyint(1) NOT NULL DEFAULT '0', |
@@ -547,9 +547,9 @@ discard block |
||
547 | 547 | PRT_deleted tinyint(1) NOT NULL DEFAULT '0', |
548 | 548 | UNIQUE KEY PRT_name_UNIQUE (PRT_name), |
549 | 549 | PRIMARY KEY (PRT_ID)"; |
550 | - $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB '); |
|
551 | - $table_name = "esp_ticket"; |
|
552 | - $sql = "TKT_ID int(10) unsigned NOT NULL AUTO_INCREMENT, |
|
550 | + $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB '); |
|
551 | + $table_name = "esp_ticket"; |
|
552 | + $sql = "TKT_ID int(10) unsigned NOT NULL AUTO_INCREMENT, |
|
553 | 553 | TTM_ID int(10) unsigned NOT NULL, |
554 | 554 | TKT_name varchar(245) NOT NULL DEFAULT '', |
555 | 555 | TKT_description text NOT NULL, |
@@ -571,9 +571,9 @@ discard block |
||
571 | 571 | TKT_deleted tinyint(1) NOT NULL DEFAULT '0', |
572 | 572 | PRIMARY KEY (TKT_ID), |
573 | 573 | KEY TKT_start_date (TKT_start_date)"; |
574 | - $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB'); |
|
575 | - $table_name = 'esp_question_group'; |
|
576 | - $sql = 'QSG_ID int(10) unsigned NOT NULL AUTO_INCREMENT, |
|
574 | + $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB'); |
|
575 | + $table_name = 'esp_question_group'; |
|
576 | + $sql = 'QSG_ID int(10) unsigned NOT NULL AUTO_INCREMENT, |
|
577 | 577 | QSG_name varchar(255) NOT NULL, |
578 | 578 | QSG_identifier varchar(100) NOT NULL, |
579 | 579 | QSG_desc text NULL, |
@@ -586,41 +586,41 @@ discard block |
||
586 | 586 | PRIMARY KEY (QSG_ID), |
587 | 587 | UNIQUE KEY QSG_identifier_UNIQUE (QSG_identifier), |
588 | 588 | KEY QSG_order (QSG_order)'; |
589 | - $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB'); |
|
590 | - /** @var EE_DMS_Core_4_1_0 $script_4_1_defaults */ |
|
591 | - $script_4_1_defaults = EE_Registry::instance()->load_dms('Core_4_1_0'); |
|
592 | - //(because many need to convert old string states to foreign keys into the states table) |
|
593 | - $script_4_1_defaults->insert_default_states(); |
|
594 | - $script_4_1_defaults->insert_default_countries(); |
|
595 | - /** @var EE_DMS_Core_4_5_0 $script_4_5_defaults */ |
|
596 | - $script_4_5_defaults = EE_Registry::instance()->load_dms('Core_4_5_0'); |
|
597 | - $script_4_5_defaults->insert_default_price_types(); |
|
598 | - $script_4_5_defaults->insert_default_prices(); |
|
599 | - $script_4_5_defaults->insert_default_tickets(); |
|
600 | - /** @var EE_DMS_Core_4_6_0 $script_4_6_defaults */ |
|
601 | - $script_4_6_defaults = EE_Registry::instance()->load_dms('Core_4_6_0'); |
|
602 | - $script_4_6_defaults->add_default_admin_only_payments(); |
|
603 | - $script_4_6_defaults->insert_default_currencies(); |
|
604 | - /** @var EE_DMS_Core_4_8_0 $script_4_8_defaults */ |
|
605 | - $script_4_8_defaults = EE_Registry::instance()->load_dms('Core_4_8_0'); |
|
606 | - $script_4_8_defaults->verify_new_countries(); |
|
607 | - $script_4_8_defaults->verify_new_currencies(); |
|
608 | - return true; |
|
609 | - } |
|
589 | + $this->_table_has_not_changed_since_previous($table_name, $sql, 'ENGINE=InnoDB'); |
|
590 | + /** @var EE_DMS_Core_4_1_0 $script_4_1_defaults */ |
|
591 | + $script_4_1_defaults = EE_Registry::instance()->load_dms('Core_4_1_0'); |
|
592 | + //(because many need to convert old string states to foreign keys into the states table) |
|
593 | + $script_4_1_defaults->insert_default_states(); |
|
594 | + $script_4_1_defaults->insert_default_countries(); |
|
595 | + /** @var EE_DMS_Core_4_5_0 $script_4_5_defaults */ |
|
596 | + $script_4_5_defaults = EE_Registry::instance()->load_dms('Core_4_5_0'); |
|
597 | + $script_4_5_defaults->insert_default_price_types(); |
|
598 | + $script_4_5_defaults->insert_default_prices(); |
|
599 | + $script_4_5_defaults->insert_default_tickets(); |
|
600 | + /** @var EE_DMS_Core_4_6_0 $script_4_6_defaults */ |
|
601 | + $script_4_6_defaults = EE_Registry::instance()->load_dms('Core_4_6_0'); |
|
602 | + $script_4_6_defaults->add_default_admin_only_payments(); |
|
603 | + $script_4_6_defaults->insert_default_currencies(); |
|
604 | + /** @var EE_DMS_Core_4_8_0 $script_4_8_defaults */ |
|
605 | + $script_4_8_defaults = EE_Registry::instance()->load_dms('Core_4_8_0'); |
|
606 | + $script_4_8_defaults->verify_new_countries(); |
|
607 | + $script_4_8_defaults->verify_new_currencies(); |
|
608 | + return true; |
|
609 | + } |
|
610 | 610 | |
611 | 611 | |
612 | 612 | |
613 | - /** |
|
614 | - * @return boolean |
|
615 | - */ |
|
616 | - public function schema_changes_after_migration() |
|
617 | - { |
|
618 | - return true; |
|
619 | - } |
|
613 | + /** |
|
614 | + * @return boolean |
|
615 | + */ |
|
616 | + public function schema_changes_after_migration() |
|
617 | + { |
|
618 | + return true; |
|
619 | + } |
|
620 | 620 | |
621 | 621 | |
622 | 622 | |
623 | - public function migration_page_hooks() |
|
624 | - { |
|
625 | - } |
|
623 | + public function migration_page_hooks() |
|
624 | + { |
|
625 | + } |
|
626 | 626 | } |
627 | 627 | \ No newline at end of file |
@@ -1,36 +1,36 @@ |
||
1 | 1 | <div id="admin-primary-mbox-reg-details-dv" class="admin-primary-mbox-dv"> |
2 | 2 | |
3 | - <?php do_action( 'AHEE__reg_admin_details_main_meta_box_reg_details__top', $REG_ID ); ?> |
|
3 | + <?php do_action('AHEE__reg_admin_details_main_meta_box_reg_details__top', $REG_ID); ?> |
|
4 | 4 | <?php echo $resend_registration_button; ?> |
5 | 5 | <?php echo $view_transaction_button; ?> |
6 | 6 | <br/> |
7 | 7 | |
8 | - <h3 class="admin-primary-mbox-h4 hdr-has-icon"><span class="dashicons dashicons-clipboard"></span><?php _e( 'Registration Items', 'event_espresso' );?></h3> |
|
8 | + <h3 class="admin-primary-mbox-h4 hdr-has-icon"><span class="dashicons dashicons-clipboard"></span><?php _e('Registration Items', 'event_espresso'); ?></h3> |
|
9 | 9 | |
10 | 10 | <?php echo $line_item_table; ?> |
11 | 11 | |
12 | 12 | <a id="display-additional-registration-session-info" class="display-the-hidden smaller-text" rel="additional-registration-session-info"> |
13 | - <span class="dashicons dashicons-plus-alt"></span><?php _e( 'view additional registration session details', 'event_espresso' );?> |
|
13 | + <span class="dashicons dashicons-plus-alt"></span><?php _e('view additional registration session details', 'event_espresso'); ?> |
|
14 | 14 | </a> |
15 | 15 | |
16 | 16 | <div id="additional-registration-session-info-dv" class="hidden"> |
17 | 17 | |
18 | 18 | <a id="hide-additional-registration-session-info" class="hide-the-displayed hidden smaller-text" rel="additional-registration-session-info"> |
19 | - <span class="dashicons dashicons-dismiss"></span><?php _e( 'hide additional registration session details', 'event_espresso' );?> |
|
19 | + <span class="dashicons dashicons-dismiss"></span><?php _e('hide additional registration session details', 'event_espresso'); ?> |
|
20 | 20 | </a> |
21 | 21 | <br class="clear"/> |
22 | 22 | |
23 | - <h3 class="admin-primary-mbox-h4"><?php _e( 'Registration Session Details', 'event_espresso' );?></h3> |
|
23 | + <h3 class="admin-primary-mbox-h4"><?php _e('Registration Session Details', 'event_espresso'); ?></h3> |
|
24 | 24 | |
25 | 25 | <table id="admin-primary-mbox-reg-extra-session-info-tbl" class="form-table skinny-rows"> |
26 | 26 | <tbody> |
27 | - <?php foreach ( $reg_details as $key => $reg_detail ) : ?> |
|
27 | + <?php foreach ($reg_details as $key => $reg_detail) : ?> |
|
28 | 28 | <tr> |
29 | 29 | <th> |
30 | - <label for="<?php echo $key;?>"><?php echo $reg_detail['label'];?></label> |
|
30 | + <label for="<?php echo $key; ?>"><?php echo $reg_detail['label']; ?></label> |
|
31 | 31 | </th> |
32 | 32 | <td> |
33 | - <?php echo $reg_detail['value'];?> |
|
33 | + <?php echo $reg_detail['value']; ?> |
|
34 | 34 | </td> |
35 | 35 | </tr> |
36 | 36 | <?php endforeach; // $reg_details?> |