@@ -35,7 +35,7 @@ discard block |
||
35 | 35 | 'post_type' => Application::POST_TYPE, |
36 | 36 | ]; |
37 | 37 | $postId = wp_insert_post( $post, true ); |
38 | - if( is_wp_error( $postId )) { |
|
38 | + if( is_wp_error( $postId ) ) { |
|
39 | 39 | glsr_log()->error( $postId->get_error_message() ); |
40 | 40 | return false; |
41 | 41 | } |
@@ -51,7 +51,7 @@ discard block |
||
51 | 51 | */ |
52 | 52 | public function deleteReview( $metaReviewId ) |
53 | 53 | { |
54 | - if( $postId = $this->getReviewPostId( $metaReviewId )) { |
|
54 | + if( $postId = $this->getReviewPostId( $metaReviewId ) ) { |
|
55 | 55 | wp_delete_post( $postId, true ); |
56 | 56 | } |
57 | 57 | } |
@@ -64,12 +64,12 @@ discard block |
||
64 | 64 | public function getAssignedToPost( $post, $assignedTo = '' ) |
65 | 65 | { |
66 | 66 | $post = get_post( $post ); |
67 | - if( !( $post instanceof WP_Post ))return; |
|
68 | - if( empty( $assignedTo )) { |
|
67 | + if( !($post instanceof WP_Post) )return; |
|
68 | + if( empty($assignedTo) ) { |
|
69 | 69 | $assignedTo = get_post_meta( $post->ID, 'assigned_to', true ); |
70 | 70 | } |
71 | 71 | $assignedPost = get_post( $assignedTo ); |
72 | - if( !empty( $assignedTo ) |
|
72 | + if( !empty($assignedTo) |
|
73 | 73 | && $assignedPost instanceof WP_Post |
74 | 74 | && $assignedPost->ID != $post->ID ) { |
75 | 75 | return $assignedPost; |
@@ -82,7 +82,7 @@ discard block |
||
82 | 82 | */ |
83 | 83 | public function getReview( $post ) |
84 | 84 | { |
85 | - if( !( $post instanceof WP_Post ) || $post->post_type != Application::POST_TYPE )return; |
|
85 | + if( !($post instanceof WP_Post) || $post->post_type != Application::POST_TYPE )return; |
|
86 | 86 | $review = $this->getReviewMeta( $post->ID ); |
87 | 87 | $modified = $this->isReviewModified( $post, $review ); |
88 | 88 | $review->content = $post->post_content; |
@@ -104,13 +104,13 @@ discard block |
||
104 | 104 | { |
105 | 105 | $metaKey = $this->normalizeMetaKey( $metaKey ); |
106 | 106 | if( !$metaKey ) { |
107 | - return (array) wp_count_posts( Application::POST_TYPE ); |
|
107 | + return (array)wp_count_posts( Application::POST_TYPE ); |
|
108 | 108 | } |
109 | 109 | $counts = glsr( Cache::class )->getReviewCountsFor( $metaKey ); |
110 | 110 | if( !$metaValue ) { |
111 | 111 | return $counts; |
112 | 112 | } |
113 | - return isset( $counts[$metaValue] ) |
|
113 | + return isset($counts[$metaValue]) |
|
114 | 114 | ? $counts[$metaValue] |
115 | 115 | : 0; |
116 | 116 | } |
@@ -131,9 +131,9 @@ discard block |
||
131 | 131 | public function getReviewMeta( $postId ) |
132 | 132 | { |
133 | 133 | $meta = get_post_type( $postId ) == Application::POST_TYPE |
134 | - ? array_map( 'array_shift', (array) get_post_meta( $postId )) |
|
134 | + ? array_map( 'array_shift', (array)get_post_meta( $postId ) ) |
|
135 | 135 | : []; |
136 | - return (object) $this->normalizeMeta( array_filter( $meta, 'strlen' )); |
|
136 | + return (object)$this->normalizeMeta( array_filter( $meta, 'strlen' ) ); |
|
137 | 137 | } |
138 | 138 | |
139 | 139 | /** |
@@ -162,7 +162,7 @@ discard block |
||
162 | 162 | $paged = glsr( QueryBuilder::class )->getPaged( |
163 | 163 | wp_validate_boolean( $args['pagination'] ) |
164 | 164 | ); |
165 | - $reviews = new WP_Query([ |
|
165 | + $reviews = new WP_Query( [ |
|
166 | 166 | 'meta_key' => 'pinned', |
167 | 167 | 'meta_query' => $metaQuery, |
168 | 168 | 'offset' => $args['offset'], |
@@ -175,8 +175,8 @@ discard block |
||
175 | 175 | 'post_type' => Application::POST_TYPE, |
176 | 176 | 'posts_per_page' => $args['count'] ? $args['count'] : -1, |
177 | 177 | 'tax_query' => $taxQuery, |
178 | - ]); |
|
179 | - return (object) [ |
|
178 | + ] ); |
|
179 | + return (object)[ |
|
180 | 180 | 'results' => array_map( [$this, 'getReview'], $reviews->posts ), |
181 | 181 | 'max_num_pages' => $reviews->max_num_pages, |
182 | 182 | ]; |
@@ -190,7 +190,7 @@ discard block |
||
190 | 190 | public function getReviewsMeta( $keys, $status = 'publish' ) |
191 | 191 | { |
192 | 192 | $keys = array_map( [$this, 'normalizeMetaKey'], (array)$keys ); |
193 | - if( $status == 'all' || empty( $status )) { |
|
193 | + if( $status == 'all' || empty($status) ) { |
|
194 | 194 | $status = get_post_stati( ['exclude_from_search' => false] ); |
195 | 195 | } |
196 | 196 | return glsr( SqlQueries::class )->getReviewsMeta( $keys, $status ); |
@@ -206,10 +206,10 @@ discard block |
||
206 | 206 | 'fields' => 'id=>name', |
207 | 207 | 'hide_empty' => false, |
208 | 208 | 'taxonomy' => Application::TAXONOMY, |
209 | - ]); |
|
210 | - unset( $args['count'] ); //we don't want a term count |
|
209 | + ] ); |
|
210 | + unset($args['count']); //we don't want a term count |
|
211 | 211 | $terms = get_terms( $args ); |
212 | - if( is_wp_error( $terms )) { |
|
212 | + if( is_wp_error( $terms ) ) { |
|
213 | 213 | glsr_log()->error( $terms->get_error_message() ); |
214 | 214 | return []; |
215 | 215 | } |
@@ -221,7 +221,7 @@ discard block |
||
221 | 221 | */ |
222 | 222 | public function normalizeMeta( array $meta ) |
223 | 223 | { |
224 | - if( empty( $meta )) { |
|
224 | + if( empty($meta) ) { |
|
225 | 225 | return []; |
226 | 226 | } |
227 | 227 | $defaults = wp_parse_args( $meta, [ |
@@ -229,7 +229,7 @@ discard block |
||
229 | 229 | 'date' => '', |
230 | 230 | 'review_id' => '', |
231 | 231 | 'review_type' => '', |
232 | - ]); |
|
232 | + ] ); |
|
233 | 233 | return glsr( CreateReviewDefaults::class )->restrict( $defaults ); |
234 | 234 | } |
235 | 235 | |
@@ -240,7 +240,7 @@ discard block |
||
240 | 240 | public function normalizeMetaKey( $metaKey ) |
241 | 241 | { |
242 | 242 | $metaKey = strtolower( $metaKey ); |
243 | - if( in_array( $metaKey, ['id', 'type'] )) { |
|
243 | + if( in_array( $metaKey, ['id', 'type'] ) ) { |
|
244 | 244 | $metaKey = 'review_'.$metaKey; |
245 | 245 | } |
246 | 246 | return $metaKey; |
@@ -253,10 +253,10 @@ discard block |
||
253 | 253 | public function normalizeTerms( $termIds ) |
254 | 254 | { |
255 | 255 | $terms = []; |
256 | - $termIds = array_map( 'trim', explode( ',', $termIds )); |
|
256 | + $termIds = array_map( 'trim', explode( ',', $termIds ) ); |
|
257 | 257 | foreach( $termIds as $termId ) { |
258 | 258 | $term = term_exists( $termId, Application::TAXONOMY ); |
259 | - if( !isset( $term['term_id'] ))continue; |
|
259 | + if( !isset($term['term_id']) )continue; |
|
260 | 260 | $terms[] = intval( $term['term_id'] ); |
261 | 261 | } |
262 | 262 | return $terms; |
@@ -269,15 +269,15 @@ discard block |
||
269 | 269 | public function revertReview( $postId ) |
270 | 270 | { |
271 | 271 | $post = get_post( $postId ); |
272 | - if( !( $post instanceof WP_Post ) || $post->post_type != Application::POST_TYPE )return; |
|
272 | + if( !($post instanceof WP_Post) || $post->post_type != Application::POST_TYPE )return; |
|
273 | 273 | delete_post_meta( $post->ID, '_edit_last' ); |
274 | - $result = wp_update_post([ |
|
274 | + $result = wp_update_post( [ |
|
275 | 275 | 'ID' => $post->ID, |
276 | 276 | 'post_content' => get_post_meta( $post->ID, 'content', true ), |
277 | 277 | 'post_date' => get_post_meta( $post->ID, 'date', true ), |
278 | 278 | 'post_title' => get_post_meta( $post->ID, 'title', true ), |
279 | - ]); |
|
280 | - if( is_wp_error( $result )) { |
|
279 | + ] ); |
|
280 | + if( is_wp_error( $result ) ) { |
|
281 | 281 | glsr_log()->error( $result->get_error_message() ); |
282 | 282 | } |
283 | 283 | } |
@@ -292,7 +292,7 @@ discard block |
||
292 | 292 | 'post_status' => 'publish', |
293 | 293 | 'post_type' => 'any', |
294 | 294 | ]; |
295 | - if( is_numeric( $searchTerm )) { |
|
295 | + if( is_numeric( $searchTerm ) ) { |
|
296 | 296 | $args['post__in'] = [$searchTerm]; |
297 | 297 | } |
298 | 298 | else { |
@@ -311,9 +311,9 @@ discard block |
||
311 | 311 | ob_start(); |
312 | 312 | glsr()->render( 'partials/editor/search-result', [ |
313 | 313 | 'ID' => get_the_ID(), |
314 | - 'permalink' => esc_url( (string) get_permalink() ), |
|
314 | + 'permalink' => esc_url( (string)get_permalink() ), |
|
315 | 315 | 'title' => esc_attr( get_the_title() ), |
316 | - ]); |
|
316 | + ] ); |
|
317 | 317 | $results .= ob_get_clean(); |
318 | 318 | } |
319 | 319 | wp_reset_postdata(); |
@@ -331,9 +331,9 @@ discard block |
||
331 | 331 | update_post_meta( $postId, $metaKey, $metaValue ); |
332 | 332 | } |
333 | 333 | $terms = $this->normalizeTerms( $termIds ); |
334 | - if( empty( $terms ))return; |
|
334 | + if( empty($terms) )return; |
|
335 | 335 | $result = wp_set_object_terms( $postId, $terms, Application::TAXONOMY ); |
336 | - if( is_wp_error( $result )) { |
|
336 | + if( is_wp_error( $result ) ) { |
|
337 | 337 | glsr_log()->error( $result->get_error_message() ); |
338 | 338 | } |
339 | 339 | } |
@@ -345,7 +345,7 @@ discard block |
||
345 | 345 | protected function getNewPostStatus( array $review, $isBlacklisted ) |
346 | 346 | { |
347 | 347 | $requireApprovalOption = glsr( OptionManager::class )->get( 'settings.general.require.approval' ); |
348 | - return $review['review_type'] == 'local' && ( $requireApprovalOption == 'yes' || $isBlacklisted ) |
|
348 | + return $review['review_type'] == 'local' && ($requireApprovalOption == 'yes' || $isBlacklisted) |
|
349 | 349 | ? 'pending' |
350 | 350 | : 'publish'; |
351 | 351 | } |
@@ -64,7 +64,9 @@ discard block |
||
64 | 64 | public function getAssignedToPost( $post, $assignedTo = '' ) |
65 | 65 | { |
66 | 66 | $post = get_post( $post ); |
67 | - if( !( $post instanceof WP_Post ))return; |
|
67 | + if( !( $post instanceof WP_Post )) { |
|
68 | + return; |
|
69 | + } |
|
68 | 70 | if( empty( $assignedTo )) { |
69 | 71 | $assignedTo = get_post_meta( $post->ID, 'assigned_to', true ); |
70 | 72 | } |
@@ -82,7 +84,9 @@ discard block |
||
82 | 84 | */ |
83 | 85 | public function getReview( $post ) |
84 | 86 | { |
85 | - if( !( $post instanceof WP_Post ) || $post->post_type != Application::POST_TYPE )return; |
|
87 | + if( !( $post instanceof WP_Post ) || $post->post_type != Application::POST_TYPE ) { |
|
88 | + return; |
|
89 | + } |
|
86 | 90 | $review = $this->getReviewMeta( $post->ID ); |
87 | 91 | $modified = $this->isReviewModified( $post, $review ); |
88 | 92 | $review->content = $post->post_content; |
@@ -256,7 +260,9 @@ discard block |
||
256 | 260 | $termIds = array_map( 'trim', explode( ',', $termIds )); |
257 | 261 | foreach( $termIds as $termId ) { |
258 | 262 | $term = term_exists( $termId, Application::TAXONOMY ); |
259 | - if( !isset( $term['term_id'] ))continue; |
|
263 | + if( !isset( $term['term_id'] )) { |
|
264 | + continue; |
|
265 | + } |
|
260 | 266 | $terms[] = intval( $term['term_id'] ); |
261 | 267 | } |
262 | 268 | return $terms; |
@@ -269,7 +275,9 @@ discard block |
||
269 | 275 | public function revertReview( $postId ) |
270 | 276 | { |
271 | 277 | $post = get_post( $postId ); |
272 | - if( !( $post instanceof WP_Post ) || $post->post_type != Application::POST_TYPE )return; |
|
278 | + if( !( $post instanceof WP_Post ) || $post->post_type != Application::POST_TYPE ) { |
|
279 | + return; |
|
280 | + } |
|
273 | 281 | delete_post_meta( $post->ID, '_edit_last' ); |
274 | 282 | $result = wp_update_post([ |
275 | 283 | 'ID' => $post->ID, |
@@ -304,7 +312,9 @@ discard block |
||
304 | 312 | add_filter( 'posts_search', [$queryBuilder, 'filterSearchByTitle'], 500, 2 ); |
305 | 313 | $search = new WP_Query( $args ); |
306 | 314 | remove_filter( 'posts_search', [$queryBuilder, 'filterSearchByTitle'], 500 ); |
307 | - if( !$search->have_posts() )return; |
|
315 | + if( !$search->have_posts() ) { |
|
316 | + return; |
|
317 | + } |
|
308 | 318 | $results = ''; |
309 | 319 | while( $search->have_posts() ) { |
310 | 320 | $search->the_post(); |
@@ -331,7 +341,9 @@ discard block |
||
331 | 341 | update_post_meta( $postId, $metaKey, $metaValue ); |
332 | 342 | } |
333 | 343 | $terms = $this->normalizeTerms( $termIds ); |
334 | - if( empty( $terms ))return; |
|
344 | + if( empty( $terms )) { |
|
345 | + return; |
|
346 | + } |
|
335 | 347 | $result = wp_set_object_terms( $postId, $terms, Application::TAXONOMY ); |
336 | 348 | if( is_wp_error( $result )) { |
337 | 349 | glsr_log()->error( $result->get_error_message() ); |
@@ -50,7 +50,7 @@ |
||
50 | 50 | public function routerSubmitReview( array $request ) |
51 | 51 | { |
52 | 52 | $validated = glsr( ValidateReview::class )->validate( $request ); |
53 | - if( !empty( $validated->error ) || $validated->recaptchaIsUnset )return; |
|
54 | - $this->execute( new CreateReview( $validated->request )); |
|
53 | + if( !empty($validated->error) || $validated->recaptchaIsUnset )return; |
|
54 | + $this->execute( new CreateReview( $validated->request ) ); |
|
55 | 55 | } |
56 | 56 | } |
@@ -50,7 +50,9 @@ |
||
50 | 50 | public function routerSubmitReview( array $request ) |
51 | 51 | { |
52 | 52 | $validated = glsr( ValidateReview::class )->validate( $request ); |
53 | - if( !empty( $validated->error ) || $validated->recaptchaIsUnset )return; |
|
53 | + if( !empty( $validated->error ) || $validated->recaptchaIsUnset ) { |
|
54 | + return; |
|
55 | + } |
|
54 | 56 | $this->execute( new CreateReview( $validated->request )); |
55 | 57 | } |
56 | 58 | } |
@@ -23,11 +23,11 @@ discard block |
||
23 | 23 | */ |
24 | 24 | public function deleteAllSessions( $sessionCookiePrefix ) |
25 | 25 | { |
26 | - return $this->db->query(" |
|
26 | + return $this->db->query( " |
|
27 | 27 | DELETE |
28 | 28 | FROM {$this->db->options} |
29 | 29 | WHERE option_name LIKE '{$sessionCookiePrefix}_%' |
30 | - "); |
|
30 | + " ); |
|
31 | 31 | } |
32 | 32 | |
33 | 33 | /** |
@@ -36,11 +36,11 @@ discard block |
||
36 | 36 | */ |
37 | 37 | public function deleteExpiredSessions( $expiredSessions ) |
38 | 38 | { |
39 | - return $this->db->query(" |
|
39 | + return $this->db->query( " |
|
40 | 40 | DELETE |
41 | 41 | FROM {$this->db->options} |
42 | 42 | WHERE option_name IN ('{$expiredSessions}') |
43 | - "); |
|
43 | + " ); |
|
44 | 44 | } |
45 | 45 | |
46 | 46 | /** |
@@ -49,13 +49,13 @@ discard block |
||
49 | 49 | */ |
50 | 50 | public function getReviewCounts( $metaKey ) |
51 | 51 | { |
52 | - return (array) $this->db->get_results(" |
|
52 | + return (array)$this->db->get_results( " |
|
53 | 53 | SELECT m.meta_value AS name, COUNT(*) num_posts |
54 | 54 | FROM {$this->db->posts} AS p |
55 | 55 | INNER JOIN {$this->db->postmeta} AS m ON p.ID = m.post_id |
56 | 56 | WHERE p.post_type = '{$this->postType}' AND m.meta_key = '{$metaKey}' |
57 | 57 | GROUP BY name |
58 | - "); |
|
58 | + " ); |
|
59 | 59 | } |
60 | 60 | |
61 | 61 | /** |
@@ -65,13 +65,13 @@ discard block |
||
65 | 65 | */ |
66 | 66 | public function getExpiredSessions( $sessionCookiePrefix, $limit ) |
67 | 67 | { |
68 | - return $this->db->get_results(" |
|
68 | + return $this->db->get_results( " |
|
69 | 69 | SELECT option_name AS name, option_value AS expiration |
70 | 70 | FROM {$this->db->options} |
71 | 71 | WHERE option_name LIKE '{$sessionCookiePrefix}_expires_%' |
72 | 72 | ORDER BY option_value ASC |
73 | 73 | LIMIT 0, {$limit} |
74 | - "); |
|
74 | + " ); |
|
75 | 75 | } |
76 | 76 | |
77 | 77 | /** |
@@ -80,14 +80,14 @@ discard block |
||
80 | 80 | */ |
81 | 81 | public function getReviewPostId( $metaReviewId ) |
82 | 82 | { |
83 | - $postId = $this->db->get_var(" |
|
83 | + $postId = $this->db->get_var( " |
|
84 | 84 | SELECT p.ID |
85 | 85 | FROM {$this->db->posts} AS p |
86 | 86 | INNER JOIN {$this->db->postmeta} AS pm ON p.ID = pm.post_id |
87 | 87 | WHERE p.post_type = '{$this->postType}' |
88 | 88 | AND pm.meta_key = 'review_id' |
89 | 89 | AND pm.meta_value = '{$metaReviewId}' |
90 | - "); |
|
90 | + " ); |
|
91 | 91 | return intval( $postId ); |
92 | 92 | } |
93 | 93 | |
@@ -97,7 +97,7 @@ discard block |
||
97 | 97 | */ |
98 | 98 | public function getReviewIdsByType( $metaReviewType ) |
99 | 99 | { |
100 | - $query = $this->db->get_col(" |
|
100 | + $query = $this->db->get_col( " |
|
101 | 101 | SELECT m1.meta_value AS review_id |
102 | 102 | FROM {$this->db->posts} AS p |
103 | 103 | INNER JOIN {$this->db->postmeta} AS m1 ON p.ID = m1.post_id |
@@ -106,8 +106,8 @@ discard block |
||
106 | 106 | AND m1.meta_key = 'review_id' |
107 | 107 | AND m2.meta_key = 'review_type' |
108 | 108 | AND m2.meta_value = '{$metaReviewType}' |
109 | - "); |
|
110 | - return array_keys( array_flip( $query )); |
|
109 | + " ); |
|
110 | + return array_keys( array_flip( $query ) ); |
|
111 | 111 | } |
112 | 112 | |
113 | 113 | /** |
@@ -120,13 +120,13 @@ discard block |
||
120 | 120 | $queryBuilder = glsr( QueryBuilder::class ); |
121 | 121 | $keys = $queryBuilder->buildSqlOr( $keys, "pm.meta_key = '%s'" ); |
122 | 122 | $status = $queryBuilder->buildSqlOr( $status, "p.post_status = '%s'" ); |
123 | - return $this->db->get_col(" |
|
123 | + return $this->db->get_col( " |
|
124 | 124 | SELECT DISTINCT pm.meta_value FROM {$this->db->postmeta} pm |
125 | 125 | LEFT JOIN {$this->db->posts} p ON p.ID = pm.post_id |
126 | 126 | WHERE p.post_type = '{$this->postType}' |
127 | 127 | AND ({$keys}) |
128 | 128 | AND ({$status}) |
129 | 129 | ORDER BY pm.meta_value |
130 | - "); |
|
130 | + " ); |
|
131 | 131 | } |
132 | 132 | } |
@@ -152,7 +152,9 @@ discard block |
||
152 | 152 | */ |
153 | 153 | protected function normalizeFieldErrors( Field &$field ) |
154 | 154 | { |
155 | - if( !array_key_exists( $field->field['path'], $this->errors ))return; |
|
155 | + if( !array_key_exists( $field->field['path'], $this->errors )) { |
|
156 | + return; |
|
157 | + } |
|
156 | 158 | $field->field['errors'] = $this->errors[$field->field['path']]; |
157 | 159 | } |
158 | 160 | |
@@ -161,7 +163,9 @@ discard block |
||
161 | 163 | */ |
162 | 164 | protected function normalizeFieldRequired( Field &$field ) |
163 | 165 | { |
164 | - if( !in_array( $field->field['path'], $this->required ))return; |
|
166 | + if( !in_array( $field->field['path'], $this->required )) { |
|
167 | + return; |
|
168 | + } |
|
165 | 169 | $field->field['required'] = true; |
166 | 170 | } |
167 | 171 | |
@@ -183,7 +187,9 @@ discard block |
||
183 | 187 | */ |
184 | 188 | protected function normalizeFieldValue( Field &$field ) |
185 | 189 | { |
186 | - if( !array_key_exists( $field->field['path'], $this->values ))return; |
|
190 | + if( !array_key_exists( $field->field['path'], $this->values )) { |
|
191 | + return; |
|
192 | + } |
|
187 | 193 | if( in_array( $field->field['type'], ['radio', 'checkbox'] )) { |
188 | 194 | $field->field['checked'] = $field->field['value'] == $this->values[$field->field['path']]; |
189 | 195 | } |
@@ -60,7 +60,7 @@ discard block |
||
60 | 60 | 'results' => $this->buildResults(), |
61 | 61 | 'submit_button' => $this->buildSubmitButton().$this->buildRecaptcha(), |
62 | 62 | ], |
63 | - ]); |
|
63 | + ] ); |
|
64 | 64 | } |
65 | 65 | |
66 | 66 | /** |
@@ -70,7 +70,7 @@ discard block |
||
70 | 70 | { |
71 | 71 | $integration = glsr( OptionManager::class )->get( 'settings.submissions.recaptcha.integration' ); |
72 | 72 | $recaptchaMethod = glsr( Helper::class )->buildMethodName( $integration, 'getRecaptcha' ); |
73 | - if( method_exists( $this, $recaptchaMethod )) { |
|
73 | + if( method_exists( $this, $recaptchaMethod ) ) { |
|
74 | 74 | return $this->$recaptchaMethod(); |
75 | 75 | } |
76 | 76 | } |
@@ -83,7 +83,7 @@ discard block |
||
83 | 83 | return glsr( Partial::class )->build( 'form-results', [ |
84 | 84 | 'errors' => $this->errors, |
85 | 85 | 'message' => $this->message, |
86 | - ]); |
|
86 | + ] ); |
|
87 | 87 | } |
88 | 88 | |
89 | 89 | /** |
@@ -95,7 +95,7 @@ discard block |
||
95 | 95 | 'context' => [ |
96 | 96 | 'text' => __( 'Submit your review', 'site-reviews' ), |
97 | 97 | ], |
98 | - ]); |
|
98 | + ] ); |
|
99 | 99 | } |
100 | 100 | |
101 | 101 | /** |
@@ -115,7 +115,7 @@ discard block |
||
115 | 115 | $fields = array_merge( |
116 | 116 | $this->getHiddenFields(), |
117 | 117 | [$this->getHoneypotField()], |
118 | - $this->normalizeFields( glsr( Form::class )->getFields( 'submission-form' )) |
|
118 | + $this->normalizeFields( glsr( Form::class )->getFields( 'submission-form' ) ) |
|
119 | 119 | ); |
120 | 120 | return $fields; |
121 | 121 | } |
@@ -128,27 +128,27 @@ discard block |
||
128 | 128 | $fields = [[ |
129 | 129 | 'name' => 'action', |
130 | 130 | 'value' => 'submit-review', |
131 | - ],[ |
|
131 | + ], [ |
|
132 | 132 | 'name' => 'assign_to', |
133 | 133 | 'value' => $this->args['assign_to'], |
134 | - ],[ |
|
134 | + ], [ |
|
135 | 135 | 'name' => 'category', |
136 | 136 | 'value' => $this->args['category'], |
137 | - ],[ |
|
137 | + ], [ |
|
138 | 138 | 'name' => 'excluded', |
139 | 139 | 'value' => $this->args['excluded'], // @todo should default to "[]" |
140 | - ],[ |
|
140 | + ], [ |
|
141 | 141 | 'name' => 'form_id', |
142 | 142 | 'value' => $this->args['id'], |
143 | - ],[ |
|
143 | + ], [ |
|
144 | 144 | 'name' => 'nonce', |
145 | 145 | 'value' => wp_create_nonce( 'submit-review' ), |
146 | - ],[ |
|
146 | + ], [ |
|
147 | 147 | 'name' => 'referer', |
148 | - 'value' => wp_unslash( filter_input( INPUT_SERVER, 'REQUEST_URI' )), |
|
148 | + 'value' => wp_unslash( filter_input( INPUT_SERVER, 'REQUEST_URI' ) ), |
|
149 | 149 | ]]; |
150 | 150 | return array_map( function( $field ) { |
151 | - return new Field( wp_parse_args( $field, ['type' => 'hidden'] )); |
|
151 | + return new Field( wp_parse_args( $field, ['type' => 'hidden'] ) ); |
|
152 | 152 | }, $fields ); |
153 | 153 | } |
154 | 154 | |
@@ -157,10 +157,10 @@ discard block |
||
157 | 157 | */ |
158 | 158 | protected function getHoneypotField() |
159 | 159 | { |
160 | - return new Field([ |
|
160 | + return new Field( [ |
|
161 | 161 | 'name' => 'gotcha', |
162 | 162 | 'type' => 'honeypot', |
163 | - ]); |
|
163 | + ] ); |
|
164 | 164 | } |
165 | 165 | |
166 | 166 | /** |
@@ -168,12 +168,12 @@ discard block |
||
168 | 168 | */ |
169 | 169 | protected function getRecaptchaCustom() |
170 | 170 | { |
171 | - return glsr( Builder::class )->div([ |
|
171 | + return glsr( Builder::class )->div( [ |
|
172 | 172 | 'class' => 'glsr-recaptcha-holder', |
173 | - 'data-badge' => sanitize_text_field( glsr( OptionManager::class )->get( 'settings.submissions.recaptcha.position' )), |
|
174 | - 'data-sitekey' => sanitize_text_field( glsr( OptionManager::class )->get( 'settings.submissions.recaptcha.key' )), |
|
173 | + 'data-badge' => sanitize_text_field( glsr( OptionManager::class )->get( 'settings.submissions.recaptcha.position' ) ), |
|
174 | + 'data-sitekey' => sanitize_text_field( glsr( OptionManager::class )->get( 'settings.submissions.recaptcha.key' ) ), |
|
175 | 175 | 'data-size' => 'invisible', |
176 | - ]); |
|
176 | + ] ); |
|
177 | 177 | } |
178 | 178 | |
179 | 179 | /** |
@@ -186,7 +186,7 @@ discard block |
||
186 | 186 | $html = ob_get_clean(); |
187 | 187 | return glsr( Builder::class )->div( $html, [ |
188 | 188 | 'class' => 'glsr-recaptcha-holder', |
189 | - ]); |
|
189 | + ] ); |
|
190 | 190 | } |
191 | 191 | |
192 | 192 | /** |
@@ -194,7 +194,7 @@ discard block |
||
194 | 194 | */ |
195 | 195 | protected function normalizeFieldErrors( Field &$field ) |
196 | 196 | { |
197 | - if( !array_key_exists( $field->field['path'], $this->errors ))return; |
|
197 | + if( !array_key_exists( $field->field['path'], $this->errors ) )return; |
|
198 | 198 | $field->field['errors'] = $this->errors[$field->field['path']]; |
199 | 199 | } |
200 | 200 | |
@@ -203,7 +203,7 @@ discard block |
||
203 | 203 | */ |
204 | 204 | protected function normalizeFieldRequired( Field &$field ) |
205 | 205 | { |
206 | - if( !in_array( $field->field['path'], $this->required ))return; |
|
206 | + if( !in_array( $field->field['path'], $this->required ) )return; |
|
207 | 207 | $field->field['required'] = true; |
208 | 208 | } |
209 | 209 | |
@@ -225,8 +225,8 @@ discard block |
||
225 | 225 | */ |
226 | 226 | protected function normalizeFieldValue( Field &$field ) |
227 | 227 | { |
228 | - if( !array_key_exists( $field->field['path'], $this->values ))return; |
|
229 | - if( in_array( $field->field['type'], ['radio', 'checkbox'] )) { |
|
228 | + if( !array_key_exists( $field->field['path'], $this->values ) )return; |
|
229 | + if( in_array( $field->field['type'], ['radio', 'checkbox'] ) ) { |
|
230 | 230 | $field->field['checked'] = $field->field['value'] == $this->values[$field->field['path']]; |
231 | 231 | } |
232 | 232 | else { |
@@ -43,7 +43,9 @@ discard block |
||
43 | 43 | */ |
44 | 44 | public function build() |
45 | 45 | { |
46 | - if( !$this->field['is_valid'] )return; |
|
46 | + if( !$this->field['is_valid'] ) { |
|
47 | + return; |
|
48 | + } |
|
47 | 49 | if( $this->field['is_raw'] ) { |
48 | 50 | return glsr( Builder::class )->{$this->field['type']}( $this->field ); |
49 | 51 | } |
@@ -143,7 +145,9 @@ discard block |
||
143 | 145 | */ |
144 | 146 | protected function getFieldErrors() |
145 | 147 | { |
146 | - if( empty( $this->field['errors'] ) || !is_array( $this->field['errors'] ))return; |
|
148 | + if( empty( $this->field['errors'] ) || !is_array( $this->field['errors'] )) { |
|
149 | + return; |
|
150 | + } |
|
147 | 151 | $errors = array_reduce( $this->field['errors'], function( $carry, $error ) { |
148 | 152 | return $carry.glsr( Builder::class )->span( $error, ['class' => 'glsr-field-error'] ); |
149 | 153 | }); |
@@ -170,7 +174,9 @@ discard block |
||
170 | 174 | 'name', 'type', |
171 | 175 | ]; |
172 | 176 | foreach( $requiredValues as $value ) { |
173 | - if( isset( $this->field[$value] ))continue; |
|
177 | + if( isset( $this->field[$value] )) { |
|
178 | + continue; |
|
179 | + } |
|
174 | 180 | $missingValues[] = $value; |
175 | 181 | $this->field['is_valid'] = false; |
176 | 182 | } |
@@ -187,7 +193,9 @@ discard block |
||
187 | 193 | */ |
188 | 194 | protected function normalize() |
189 | 195 | { |
190 | - if( !$this->isFieldValid() )return; |
|
196 | + if( !$this->isFieldValid() ) { |
|
197 | + return; |
|
198 | + } |
|
191 | 199 | $this->field['path'] = $this->field['name']; |
192 | 200 | $className = glsr( Helper::class )->buildClassName( $this->field['type'], __NAMESPACE__.'\Fields' ); |
193 | 201 | if( class_exists( $className )) { |
@@ -205,7 +213,9 @@ discard block |
||
205 | 213 | */ |
206 | 214 | protected function normalizeFieldId() |
207 | 215 | { |
208 | - if( isset( $this->field['id'] ) || $this->field['is_raw'] )return; |
|
216 | + if( isset( $this->field['id'] ) || $this->field['is_raw'] ) { |
|
217 | + return; |
|
218 | + } |
|
209 | 219 | $this->field['id'] = glsr( Helper::class )->convertPathToId( |
210 | 220 | $this->field['path'], |
211 | 221 | $this->getFieldPrefix() |
@@ -26,7 +26,7 @@ discard block |
||
26 | 26 | 'is_valid' => true, |
27 | 27 | 'is_widget' => false, |
28 | 28 | 'path' => '', |
29 | - ]); |
|
29 | + ] ); |
|
30 | 30 | $this->normalize(); |
31 | 31 | } |
32 | 32 | |
@@ -45,7 +45,7 @@ discard block |
||
45 | 45 | { |
46 | 46 | if( !$this->field['is_valid'] )return; |
47 | 47 | if( $this->field['is_raw'] ) { |
48 | - return glsr( Builder::class )->{$this->field['type']}( $this->field ); |
|
48 | + return glsr( Builder::class )->{$this->field['type']}($this->field); |
|
49 | 49 | } |
50 | 50 | if( !$this->field['is_setting'] ) { |
51 | 51 | return $this->buildField(); |
@@ -73,9 +73,9 @@ discard block |
||
73 | 73 | 'context' => [ |
74 | 74 | 'class' => $this->getFieldClass(), |
75 | 75 | 'errors' => $this->getFieldErrors(), |
76 | - 'field' => glsr( Builder::class )->{$this->field['type']}( $this->field ), |
|
76 | + 'field' => glsr( Builder::class )->{$this->field['type']}($this->field), |
|
77 | 77 | ], |
78 | - ]); |
|
78 | + ] ); |
|
79 | 79 | return apply_filters( 'site-reviews/rendered/field', $field, $this->field['type'], $this->field ); |
80 | 80 | } |
81 | 81 | |
@@ -87,10 +87,10 @@ discard block |
||
87 | 87 | return glsr( Template::class )->build( 'partials/form/table-row', [ |
88 | 88 | 'context' => [ |
89 | 89 | 'class' => $this->getFieldClass(), |
90 | - 'field' => glsr( Builder::class )->{$this->field['type']}( $this->field ), |
|
90 | + 'field' => glsr( Builder::class )->{$this->field['type']}($this->field), |
|
91 | 91 | 'label' => glsr( Builder::class )->label( $this->field['legend'], ['for' => $this->field['id']] ), |
92 | 92 | ], |
93 | - ]); |
|
93 | + ] ); |
|
94 | 94 | } |
95 | 95 | |
96 | 96 | /** |
@@ -99,16 +99,16 @@ discard block |
||
99 | 99 | protected function buildSettingMultiField() |
100 | 100 | { |
101 | 101 | $dependsOn = $this->getFieldDependsOn(); |
102 | - unset( $this->field['data-depends'] ); |
|
102 | + unset($this->field['data-depends']); |
|
103 | 103 | return glsr( Template::class )->build( 'partials/form/table-row-multiple', [ |
104 | 104 | 'context' => [ |
105 | 105 | 'class' => $this->getFieldClass(), |
106 | 106 | 'depends_on' => $dependsOn, |
107 | - 'field' => glsr( Builder::class )->{$this->field['type']}( $this->field ), |
|
107 | + 'field' => glsr( Builder::class )->{$this->field['type']}($this->field), |
|
108 | 108 | 'label' => glsr( Builder::class )->label( $this->field['legend'], ['for' => $this->field['id']] ), |
109 | 109 | 'legend' => $this->field['legend'], |
110 | 110 | ], |
111 | - ]); |
|
111 | + ] ); |
|
112 | 112 | } |
113 | 113 | |
114 | 114 | /** |
@@ -117,13 +117,13 @@ discard block |
||
117 | 117 | protected function getFieldClass() |
118 | 118 | { |
119 | 119 | $classes = []; |
120 | - if( !empty( $this->field['errors'] )) { |
|
120 | + if( !empty($this->field['errors']) ) { |
|
121 | 121 | $classes[] = 'glsr-has-error'; |
122 | 122 | } |
123 | 123 | if( $this->field['is_hidden'] ) { |
124 | 124 | $classes[] = 'hidden'; |
125 | 125 | } |
126 | - if( !empty( $this->field['required'] )) { |
|
126 | + if( !empty($this->field['required']) ) { |
|
127 | 127 | $classes[] = 'glsr-required'; |
128 | 128 | } |
129 | 129 | return implode( ' ', $classes ); |
@@ -134,7 +134,7 @@ discard block |
||
134 | 134 | */ |
135 | 135 | protected function getFieldDependsOn() |
136 | 136 | { |
137 | - return !empty( $this->field['data-depends'] ) |
|
137 | + return !empty($this->field['data-depends']) |
|
138 | 138 | ? $this->field['data-depends'] |
139 | 139 | : ''; |
140 | 140 | } |
@@ -144,7 +144,7 @@ discard block |
||
144 | 144 | */ |
145 | 145 | protected function getFieldErrors() |
146 | 146 | { |
147 | - if( empty( $this->field['errors'] ) || !is_array( $this->field['errors'] ))return; |
|
147 | + if( empty($this->field['errors']) || !is_array( $this->field['errors'] ) )return; |
|
148 | 148 | $errors = array_reduce( $this->field['errors'], function( $carry, $error ) { |
149 | 149 | return $carry.glsr( Builder::class )->span( $error, ['class' => 'glsr-field-error'] ); |
150 | 150 | }); |
@@ -152,7 +152,7 @@ discard block |
||
152 | 152 | 'context' => [ |
153 | 153 | 'errors' => $errors, |
154 | 154 | ], |
155 | - ]); |
|
155 | + ] ); |
|
156 | 156 | } |
157 | 157 | |
158 | 158 | /** |
@@ -175,13 +175,13 @@ discard block |
||
175 | 175 | 'name', 'type', |
176 | 176 | ]; |
177 | 177 | foreach( $requiredValues as $value ) { |
178 | - if( isset( $this->field[$value] ))continue; |
|
178 | + if( isset($this->field[$value]) )continue; |
|
179 | 179 | $missingValues[] = $value; |
180 | 180 | $this->field['is_valid'] = false; |
181 | 181 | } |
182 | - if( !empty( $missingValues )) { |
|
182 | + if( !empty($missingValues) ) { |
|
183 | 183 | glsr_log() |
184 | - ->warning( 'Field is missing: '.implode( ', ', $missingValues )) |
|
184 | + ->warning( 'Field is missing: '.implode( ', ', $missingValues ) ) |
|
185 | 185 | ->info( $this->field ); |
186 | 186 | } |
187 | 187 | return $this->field['is_valid']; |
@@ -195,7 +195,7 @@ discard block |
||
195 | 195 | if( !$this->isFieldValid() )return; |
196 | 196 | $this->field['path'] = $this->field['name']; |
197 | 197 | $className = glsr( Helper::class )->buildClassName( $this->field['type'], __NAMESPACE__.'\Fields' ); |
198 | - if( class_exists( $className )) { |
|
198 | + if( class_exists( $className ) ) { |
|
199 | 199 | $this->field = array_merge( |
200 | 200 | wp_parse_args( $this->field, $className::defaults() ), |
201 | 201 | $className::required() |
@@ -210,7 +210,7 @@ discard block |
||
210 | 210 | */ |
211 | 211 | protected function normalizeFieldId() |
212 | 212 | { |
213 | - if( isset( $this->field['id'] ) || $this->field['is_raw'] )return; |
|
213 | + if( isset($this->field['id']) || $this->field['is_raw'] )return; |
|
214 | 214 | $this->field['id'] = glsr( Helper::class )->convertPathToId( |
215 | 215 | $this->field['path'], |
216 | 216 | $this->getFieldPrefix() |
@@ -73,7 +73,9 @@ discard block |
||
73 | 73 | foreach( $this->rules as $attribute => $rules ) { |
74 | 74 | foreach( $rules as $rule ) { |
75 | 75 | $this->validateAttribute( $attribute, $rule ); |
76 | - if( $this->shouldStopValidating( $attribute ))break; |
|
76 | + if( $this->shouldStopValidating( $attribute )) { |
|
77 | + break; |
|
78 | + } |
|
77 | 79 | } |
78 | 80 | } |
79 | 81 | return $this->errors; |
@@ -89,7 +91,9 @@ discard block |
||
89 | 91 | public function validateAttribute( $attribute, $rule ) |
90 | 92 | { |
91 | 93 | list( $rule, $parameters ) = $this->parseRule( $rule ); |
92 | - if( $rule == '' )return; |
|
94 | + if( $rule == '' ) { |
|
95 | + return; |
|
96 | + } |
|
93 | 97 | $value = $this->getValue( $attribute ); |
94 | 98 | if( !method_exists( $this, $method = 'validate'.$rule )) { |
95 | 99 | throw new BadMethodCallException( "Method [$method] does not exist." ); |
@@ -158,7 +162,9 @@ discard block |
||
158 | 162 | */ |
159 | 163 | protected function getRule( $attribute, $rules ) |
160 | 164 | { |
161 | - if( !array_key_exists( $attribute, $this->rules ))return; |
|
165 | + if( !array_key_exists( $attribute, $this->rules )) { |
|
166 | + return; |
|
167 | + } |
|
162 | 168 | $rules = (array) $rules; |
163 | 169 | foreach( $this->rules[$attribute] as $rule ) { |
164 | 170 | list( $rule, $parameters ) = $this->parseRule( $rule ); |
@@ -318,7 +324,9 @@ discard block |
||
318 | 324 | $message = isset( $strings[$key] ) |
319 | 325 | ? $strings[$key] |
320 | 326 | : false; |
321 | - if( !$message )return; |
|
327 | + if( !$message ) { |
|
328 | + return; |
|
329 | + } |
|
322 | 330 | if( method_exists( $this, $method = 'replace'.$rule )) { |
323 | 331 | $message = $this->$method( $message, $parameters ); |
324 | 332 | } |
@@ -73,7 +73,7 @@ discard block |
||
73 | 73 | foreach( $this->rules as $attribute => $rules ) { |
74 | 74 | foreach( $rules as $rule ) { |
75 | 75 | $this->validateAttribute( $attribute, $rule ); |
76 | - if( $this->shouldStopValidating( $attribute ))break; |
|
76 | + if( $this->shouldStopValidating( $attribute ) )break; |
|
77 | 77 | } |
78 | 78 | } |
79 | 79 | return $this->errors; |
@@ -88,13 +88,13 @@ discard block |
||
88 | 88 | */ |
89 | 89 | public function validateAttribute( $attribute, $rule ) |
90 | 90 | { |
91 | - list( $rule, $parameters ) = $this->parseRule( $rule ); |
|
91 | + list($rule, $parameters) = $this->parseRule( $rule ); |
|
92 | 92 | if( $rule == '' )return; |
93 | 93 | $value = $this->getValue( $attribute ); |
94 | - if( !method_exists( $this, $method = 'validate'.$rule )) { |
|
94 | + if( !method_exists( $this, $method = 'validate'.$rule ) ) { |
|
95 | 95 | throw new BadMethodCallException( "Method [$method] does not exist." ); |
96 | 96 | } |
97 | - if( !$this->$method( $value, $attribute, $parameters )) { |
|
97 | + if( !$this->$method( $value, $attribute, $parameters ) ) { |
|
98 | 98 | $this->addFailure( $attribute, $rule, $parameters ); |
99 | 99 | } |
100 | 100 | } |
@@ -143,7 +143,7 @@ discard block |
||
143 | 143 | */ |
144 | 144 | protected function getMessage( $attribute, $rule, array $parameters ) |
145 | 145 | { |
146 | - if( in_array( $rule, $this->sizeRules )) { |
|
146 | + if( in_array( $rule, $this->sizeRules ) ) { |
|
147 | 147 | return $this->getSizeMessage( $attribute, $rule, $parameters ); |
148 | 148 | } |
149 | 149 | $lowerRule = glsr( Helper::class )->snakeCase( $rule ); |
@@ -158,11 +158,11 @@ discard block |
||
158 | 158 | */ |
159 | 159 | protected function getRule( $attribute, $rules ) |
160 | 160 | { |
161 | - if( !array_key_exists( $attribute, $this->rules ))return; |
|
162 | - $rules = (array) $rules; |
|
161 | + if( !array_key_exists( $attribute, $this->rules ) )return; |
|
162 | + $rules = (array)$rules; |
|
163 | 163 | foreach( $this->rules[$attribute] as $rule ) { |
164 | - list( $rule, $parameters ) = $this->parseRule( $rule ); |
|
165 | - if( in_array( $rule, $rules )) { |
|
164 | + list($rule, $parameters) = $this->parseRule( $rule ); |
|
165 | + if( in_array( $rule, $rules ) ) { |
|
166 | 166 | return [$rule, $parameters]; |
167 | 167 | } |
168 | 168 | } |
@@ -180,7 +180,7 @@ discard block |
||
180 | 180 | if( is_numeric( $value ) && $hasNumeric ) { |
181 | 181 | return $value; |
182 | 182 | } |
183 | - elseif( is_array( $value )) { |
|
183 | + elseif( is_array( $value ) ) { |
|
184 | 184 | return count( $value ); |
185 | 185 | } |
186 | 186 | return mb_strlen( $value ); |
@@ -207,7 +207,7 @@ discard block |
||
207 | 207 | */ |
208 | 208 | protected function getValue( $attribute ) |
209 | 209 | { |
210 | - if( isset( $this->data[$attribute] )) { |
|
210 | + if( isset($this->data[$attribute]) ) { |
|
211 | 211 | return $this->data[$attribute]; |
212 | 212 | } |
213 | 213 | } |
@@ -220,7 +220,7 @@ discard block |
||
220 | 220 | */ |
221 | 221 | protected function hasRule( $attribute, $rules ) |
222 | 222 | { |
223 | - return !is_null( $this->getRule( $attribute, $rules )); |
|
223 | + return !is_null( $this->getRule( $attribute, $rules ) ); |
|
224 | 224 | } |
225 | 225 | |
226 | 226 | /** |
@@ -259,11 +259,11 @@ discard block |
||
259 | 259 | $parameters = []; |
260 | 260 | // example: {rule}:{parameters} |
261 | 261 | if( strpos( $rule, ':' ) !== false ) { |
262 | - list( $rule, $parameter ) = explode( ':', $rule, 2 ); |
|
262 | + list($rule, $parameter) = explode( ':', $rule, 2 ); |
|
263 | 263 | // example: {parameter1,parameter2,...} |
264 | 264 | $parameters = $this->parseParameters( $rule, $parameter ); |
265 | 265 | } |
266 | - $rule = ucwords( str_replace( ['-', '_'], ' ', trim( $rule ))); |
|
266 | + $rule = ucwords( str_replace( ['-', '_'], ' ', trim( $rule ) ) ); |
|
267 | 267 | $rule = str_replace( ' ', '', $rule ); |
268 | 268 | return [$rule, $parameters]; |
269 | 269 | } |
@@ -290,7 +290,7 @@ discard block |
||
290 | 290 | protected function shouldStopValidating( $attribute ) |
291 | 291 | { |
292 | 292 | return $this->hasRule( $attribute, $this->implicitRules ) |
293 | - && isset( $this->failedRules[$attribute] ) |
|
293 | + && isset($this->failedRules[$attribute]) |
|
294 | 294 | && array_intersect( array_keys( $this->failedRules[$attribute] ), $this->implicitRules ); |
295 | 295 | } |
296 | 296 | |
@@ -315,11 +315,11 @@ discard block |
||
315 | 315 | 'regex' => __( 'The format is invalid.', 'site-reviews' ), |
316 | 316 | 'required' => __( 'This field is required.', 'site-reviews' ), |
317 | 317 | ]; |
318 | - $message = isset( $strings[$key] ) |
|
318 | + $message = isset($strings[$key]) |
|
319 | 319 | ? $strings[$key] |
320 | 320 | : false; |
321 | 321 | if( !$message )return; |
322 | - if( method_exists( $this, $method = 'replace'.$rule )) { |
|
322 | + if( method_exists( $this, $method = 'replace'.$rule ) ) { |
|
323 | 323 | $message = $this->$method( $message, $parameters ); |
324 | 324 | } |
325 | 325 | return $message; |
@@ -102,7 +102,9 @@ discard block |
||
102 | 102 | protected function sendNotification( $postId ) |
103 | 103 | { |
104 | 104 | $notificationType = glsr( OptionManager::class )->get( 'settings.general.notification' ); |
105 | - if( !in_array( $notificationType, ['default','custom','webhook'] ))return; |
|
105 | + if( !in_array( $notificationType, ['default','custom','webhook'] )) { |
|
106 | + return; |
|
107 | + } |
|
106 | 108 | $assignedToTitle = get_the_title( (int)$this->command->assigned_to ); |
107 | 109 | $notificationSubject = _nx( |
108 | 110 | 'New %s-star review', |
@@ -150,7 +152,9 @@ discard block |
||
150 | 152 | */ |
151 | 153 | protected function sendWebhookNotification( array $args ) |
152 | 154 | { |
153 | - if( !( $endpoint = glsr( OptionManager::class )->get( 'settings.general.webhook_url' )))return; |
|
155 | + if( !( $endpoint = glsr( OptionManager::class )->get( 'settings.general.webhook_url' ))) { |
|
156 | + return; |
|
157 | + } |
|
154 | 158 | $notification = $this->createWebhookNotification( $args ); |
155 | 159 | $result = wp_remote_post( $endpoint, [ |
156 | 160 | 'blocking' => false, |
@@ -31,7 +31,7 @@ discard block |
||
31 | 31 | } |
32 | 32 | $this->sendNotification( $postId ); |
33 | 33 | do_action( 'site-reviews/local/review/submitted', $postId, $command ); |
34 | - glsr( Session::class )->set( $command->form_id.'message', __( 'Your review has been submitted!', 'site-reviews' )); |
|
34 | + glsr( Session::class )->set( $command->form_id.'message', __( 'Your review has been submitted!', 'site-reviews' ) ); |
|
35 | 35 | if( $command->ajax_request ) { |
36 | 36 | glsr( Session::class )->clear(); |
37 | 37 | return; |
@@ -81,8 +81,8 @@ discard block |
||
81 | 81 | if( $this->command->author ) { |
82 | 82 | $fields[] = ['value' => trim( $this->command->author.$this->command->email.' - '.$this->command->ip_address )]; |
83 | 83 | } |
84 | - $fields[] = ['value' => sprintf( '<%s|%s>', $args['notification_link'], __( 'View Review', 'site-reviews' ))]; |
|
85 | - return json_encode([ |
|
84 | + $fields[] = ['value' => sprintf( '<%s|%s>', $args['notification_link'], __( 'View Review', 'site-reviews' ) )]; |
|
85 | + return json_encode( [ |
|
86 | 86 | 'icon_url' => glsr()->url( 'assets/img/icon.png' ), |
87 | 87 | 'username' => glsr()->name, |
88 | 88 | 'attachments' => [[ |
@@ -91,7 +91,7 @@ discard block |
||
91 | 91 | 'fallback' => $this->createEmailNotification( $args )->read( 'plaintext' ), |
92 | 92 | 'fields' => $fields, |
93 | 93 | ]], |
94 | - ]); |
|
94 | + ] ); |
|
95 | 95 | } |
96 | 96 | |
97 | 97 | /** |
@@ -101,12 +101,12 @@ discard block |
||
101 | 101 | protected function sendNotification( $postId ) |
102 | 102 | { |
103 | 103 | $notificationType = glsr( OptionManager::class )->get( 'settings.general.notification' ); |
104 | - if( !in_array( $notificationType, ['default','custom','webhook'] ))return; |
|
104 | + if( !in_array( $notificationType, ['default', 'custom', 'webhook'] ) )return; |
|
105 | 105 | $assignedToTitle = get_the_title( (int)$this->command->assigned_to ); |
106 | 106 | $notificationSubject = _nx( |
107 | 107 | 'New %s-star review', |
108 | 108 | 'New %s-star review of: %s', |
109 | - intval( empty( $assignedToTitle )), |
|
109 | + intval( empty($assignedToTitle) ), |
|
110 | 110 | 'The text is different depending on whether or not the review has been assigned to a post.', |
111 | 111 | 'site-reviews' |
112 | 112 | ); |
@@ -115,7 +115,7 @@ discard block |
||
115 | 115 | sprintf( $notificationSubject, $this->command->rating, $assignedToTitle ) |
116 | 116 | ); |
117 | 117 | $args = [ |
118 | - 'notification_link' => esc_url( admin_url( sprintf( 'post.php?post=%s&action=edit', $postId ))), |
|
118 | + 'notification_link' => esc_url( admin_url( sprintf( 'post.php?post=%s&action=edit', $postId ) ) ), |
|
119 | 119 | 'notification_title' => $notificationTitle, |
120 | 120 | 'notification_type' => $notificationType, |
121 | 121 | ]; |
@@ -133,7 +133,7 @@ discard block |
||
133 | 133 | $args['recipient'] = $args['notification_type'] !== 'default' |
134 | 134 | ? glsr( OptionManager::class )->get( 'settings.general.notification_email' ) |
135 | 135 | : get_option( 'admin_email' ); |
136 | - if( empty( $args['recipient'] )) { |
|
136 | + if( empty($args['recipient']) ) { |
|
137 | 137 | glsr_log()->error( 'Email notification was not sent: missing email, subject, or message.' ); |
138 | 138 | } |
139 | 139 | else { |
@@ -149,7 +149,7 @@ discard block |
||
149 | 149 | */ |
150 | 150 | protected function sendWebhookNotification( array $args ) |
151 | 151 | { |
152 | - if( !( $endpoint = glsr( OptionManager::class )->get( 'settings.general.webhook_url' )))return; |
|
152 | + if( !($endpoint = glsr( OptionManager::class )->get( 'settings.general.webhook_url' )) )return; |
|
153 | 153 | $notification = $this->createWebhookNotification( $args ); |
154 | 154 | $result = wp_remote_post( $endpoint, [ |
155 | 155 | 'blocking' => false, |
@@ -160,8 +160,8 @@ discard block |
||
160 | 160 | 'redirection' => 5, |
161 | 161 | 'sslverify' => false, |
162 | 162 | 'timeout' => 45, |
163 | - ]); |
|
164 | - if( is_wp_error( $result )) { |
|
163 | + ] ); |
|
164 | + if( is_wp_error( $result ) ) { |
|
165 | 165 | glsr_log()->error( $result->get_error_message() ); |
166 | 166 | } |
167 | 167 | } |
@@ -27,21 +27,21 @@ discard block |
||
27 | 27 | public function __construct( $input ) |
28 | 28 | { |
29 | 29 | $this->request = $input; |
30 | - $this->ajax_request = isset( $input['ajax_request'] ); |
|
30 | + $this->ajax_request = isset($input['ajax_request']); |
|
31 | 31 | $this->assigned_to = $this->getNumeric( 'assign_to' ); |
32 | - $this->author = sanitize_text_field( $this->get( 'name' )); |
|
33 | - $this->avatar = get_avatar_url( $this->get( 'email' )); |
|
34 | - $this->blacklisted = isset( $input['blacklisted'] ); |
|
35 | - $this->category = sanitize_key( $this->get( 'category' )); |
|
36 | - $this->content = sanitize_textarea_field( $this->get( 'content' )); |
|
32 | + $this->author = sanitize_text_field( $this->get( 'name' ) ); |
|
33 | + $this->avatar = get_avatar_url( $this->get( 'email' ) ); |
|
34 | + $this->blacklisted = isset($input['blacklisted']); |
|
35 | + $this->category = sanitize_key( $this->get( 'category' ) ); |
|
36 | + $this->content = sanitize_textarea_field( $this->get( 'content' ) ); |
|
37 | 37 | $this->custom = $this->getCustom(); |
38 | - $this->email = sanitize_email( $this->get( 'email' )); |
|
39 | - $this->form_id = sanitize_key( $this->get( 'form_id' )); |
|
38 | + $this->email = sanitize_email( $this->get( 'email' ) ); |
|
39 | + $this->form_id = sanitize_key( $this->get( 'form_id' ) ); |
|
40 | 40 | $this->ip_address = $this->get( 'ip_address' ); |
41 | - $this->rating = intval( $this->get( 'rating' )); |
|
41 | + $this->rating = intval( $this->get( 'rating' ) ); |
|
42 | 42 | $this->referrer = $this->get( 'referrer' ); |
43 | - $this->terms = isset( $input['terms'] ); |
|
44 | - $this->title = sanitize_text_field( $this->get( 'title' )); |
|
43 | + $this->terms = isset($input['terms']); |
|
44 | + $this->title = sanitize_text_field( $this->get( 'title' ) ); |
|
45 | 45 | } |
46 | 46 | |
47 | 47 | /** |
@@ -50,7 +50,7 @@ discard block |
||
50 | 50 | */ |
51 | 51 | protected function get( $key ) |
52 | 52 | { |
53 | - return isset( $this->request[$key] ) |
|
53 | + return isset($this->request[$key]) |
|
54 | 54 | ? (string)$this->request[$key] |
55 | 55 | : ''; |
56 | 56 | } |
@@ -67,7 +67,7 @@ discard block |
||
67 | 67 | ]; |
68 | 68 | $custom = $this->request; |
69 | 69 | foreach( $unset as $value ) { |
70 | - unset( $custom[$value] ); |
|
70 | + unset($custom[$value]); |
|
71 | 71 | } |
72 | 72 | return $custom; |
73 | 73 | } |
@@ -193,8 +193,12 @@ discard block |
||
193 | 193 | */ |
194 | 194 | protected function validateAkismet() |
195 | 195 | { |
196 | - if( !empty( $this->error ))return; |
|
197 | - if( !glsr( Akismet::class )->isSpam( $this->request ))return; |
|
196 | + if( !empty( $this->error )) { |
|
197 | + return; |
|
198 | + } |
|
199 | + if( !glsr( Akismet::class )->isSpam( $this->request )) { |
|
200 | + return; |
|
201 | + } |
|
198 | 202 | $this->setSessionValues( 'errors', [], 'Akismet caught a spam submission:' ); |
199 | 203 | $this->error = __( 'Your review cannot be submitted at this time. Please try again later.', 'site-reviews' ); |
200 | 204 | } |
@@ -204,8 +208,12 @@ discard block |
||
204 | 208 | */ |
205 | 209 | protected function validateBlacklist() |
206 | 210 | { |
207 | - if( !empty( $this->error ))return; |
|
208 | - if( !glsr( Blacklist::class )->isBlacklisted( $this->request ))return; |
|
211 | + if( !empty( $this->error )) { |
|
212 | + return; |
|
213 | + } |
|
214 | + if( !glsr( Blacklist::class )->isBlacklisted( $this->request )) { |
|
215 | + return; |
|
216 | + } |
|
209 | 217 | $blacklistAction = $this->getOption( 'settings.submissions.blacklist.action' ); |
210 | 218 | if( $blacklistAction == 'reject' ) { |
211 | 219 | $this->setSessionValues( 'errors', [], 'Blacklisted submission detected:' ); |
@@ -220,9 +228,13 @@ discard block |
||
220 | 228 | */ |
221 | 229 | protected function validateCustom() |
222 | 230 | { |
223 | - if( !empty( $this->error ))return; |
|
231 | + if( !empty( $this->error )) { |
|
232 | + return; |
|
233 | + } |
|
224 | 234 | $validated = apply_filters( 'site-reviews/validate/review/submission', true, $this->request ); |
225 | - if( $validated === true )return; |
|
235 | + if( $validated === true ) { |
|
236 | + return; |
|
237 | + } |
|
226 | 238 | $this->setSessionValues( 'errors', [] ); |
227 | 239 | $this->setSessionValues( 'values', $this->request ); |
228 | 240 | $this->error = is_string( $validated ) |
@@ -235,8 +247,12 @@ discard block |
||
235 | 247 | */ |
236 | 248 | protected function validateHoneyPot() |
237 | 249 | { |
238 | - if( !empty( $this->error ))return; |
|
239 | - if( empty( $this->request['gotcha'] ))return; |
|
250 | + if( !empty( $this->error )) { |
|
251 | + return; |
|
252 | + } |
|
253 | + if( empty( $this->request['gotcha'] )) { |
|
254 | + return; |
|
255 | + } |
|
240 | 256 | $this->setSessionValues( 'errors', [], 'The Honeypot caught a bad submission:' ); |
241 | 257 | $this->error = __( 'The review submission failed. Please notify the site administrator.', 'site-reviews' ); |
242 | 258 | } |
@@ -246,7 +262,9 @@ discard block |
||
246 | 262 | */ |
247 | 263 | protected function validateRecaptcha() |
248 | 264 | { |
249 | - if( !empty( $this->error ))return; |
|
265 | + if( !empty( $this->error )) { |
|
266 | + return; |
|
267 | + } |
|
250 | 268 | $isValid = $this->isRecaptchaResponseValid(); |
251 | 269 | if( is_null( $isValid )) { |
252 | 270 | $this->setSessionValues( 'recaptcha', true ); |
@@ -61,7 +61,7 @@ discard block |
||
61 | 61 | $this->validateBlacklist(); |
62 | 62 | $this->validateAkismet(); |
63 | 63 | $this->validateRecaptcha(); |
64 | - if( !empty( $this->error )) { |
|
64 | + if( !empty($this->error) ) { |
|
65 | 65 | $this->setSessionValues( 'message', $this->error ); |
66 | 66 | } |
67 | 67 | return $this; |
@@ -86,10 +86,10 @@ discard block |
||
86 | 86 | apply_filters( 'site-reviews/validation/rules', static::VALIDATION_RULES ), |
87 | 87 | $this->getOption( 'settings.submissions.required', [] ) |
88 | 88 | ); |
89 | - $excluded = isset( $request['excluded'] ) |
|
89 | + $excluded = isset($request['excluded']) |
|
90 | 90 | ? (array)json_decode( $request['excluded'] ) |
91 | 91 | : []; |
92 | - return array_diff_key( $rules, array_flip( $excluded )); |
|
92 | + return array_diff_key( $rules, array_flip( $excluded ) ); |
|
93 | 93 | } |
94 | 94 | |
95 | 95 | /** |
@@ -101,14 +101,14 @@ discard block |
||
101 | 101 | if( !$integration ) { |
102 | 102 | return true; |
103 | 103 | } |
104 | - if( empty( $this->request['recaptcha-token'] )) { |
|
104 | + if( empty($this->request['recaptcha-token']) ) { |
|
105 | 105 | return null; // @see $this->validateRecaptcha() |
106 | 106 | } |
107 | 107 | if( $integration == 'custom' ) { |
108 | 108 | return $this->isRecaptchaValid( $this->request['recaptcha-token'] ); |
109 | 109 | } |
110 | 110 | if( $integration == 'invisible-recaptcha' ) { |
111 | - return boolval( apply_filters( 'google_invre_is_valid_request_filter', true )); |
|
111 | + return boolval( apply_filters( 'google_invre_is_valid_request_filter', true ) ); |
|
112 | 112 | } |
113 | 113 | return false; |
114 | 114 | } |
@@ -119,17 +119,17 @@ discard block |
||
119 | 119 | */ |
120 | 120 | protected function isRecaptchaValid( $recaptchaToken ) |
121 | 121 | { |
122 | - $endpoint = add_query_arg([ |
|
122 | + $endpoint = add_query_arg( [ |
|
123 | 123 | 'remoteip' => glsr( Helper::class )->getIpAddress(), |
124 | 124 | 'response' => $recaptchaToken, |
125 | 125 | 'secret' => $this->getOption( 'settings.submissions.recaptcha.secret' ), |
126 | 126 | ], static::RECAPTCHA_ENDPOINT ); |
127 | - if( is_wp_error( $response = wp_remote_get( $endpoint ))) { |
|
127 | + if( is_wp_error( $response = wp_remote_get( $endpoint ) ) ) { |
|
128 | 128 | glsr_log()->error( $response->get_error_message() ); |
129 | 129 | return false; |
130 | 130 | } |
131 | - $response = json_decode( wp_remote_retrieve_body( $response )); |
|
132 | - if( !empty( $response->success )) { |
|
131 | + $response = json_decode( wp_remote_retrieve_body( $response ) ); |
|
132 | + if( !empty($response->success) ) { |
|
133 | 133 | return boolval( $response->success ); |
134 | 134 | } |
135 | 135 | $errorCodes = [ |
@@ -152,7 +152,7 @@ discard block |
||
152 | 152 | { |
153 | 153 | $rules = $this->getValidationRules( $request ); |
154 | 154 | $errors = glsr( Validator::class )->validate( $request, $rules ); |
155 | - if( empty( $errors )) { |
|
155 | + if( empty($errors) ) { |
|
156 | 156 | return true; |
157 | 157 | } |
158 | 158 | $this->setSessionValues( 'errors', $errors ); |
@@ -169,7 +169,7 @@ discard block |
||
169 | 169 | protected function setSessionValues( $type, $value, $loggedMessage = '' ) |
170 | 170 | { |
171 | 171 | glsr( Session::class )->set( $this->form_id.$type, $value ); |
172 | - if( !empty( $loggedMessage )) { |
|
172 | + if( !empty($loggedMessage) ) { |
|
173 | 173 | glsr_log()->warning( $loggedMessage ); |
174 | 174 | glsr_log()->warning( $this->request ); |
175 | 175 | } |
@@ -180,8 +180,8 @@ discard block |
||
180 | 180 | */ |
181 | 181 | protected function validateAkismet() |
182 | 182 | { |
183 | - if( !empty( $this->error ))return; |
|
184 | - if( !glsr( Akismet::class )->isSpam( $this->request ))return; |
|
183 | + if( !empty($this->error) )return; |
|
184 | + if( !glsr( Akismet::class )->isSpam( $this->request ) )return; |
|
185 | 185 | $this->setSessionValues( 'errors', [], 'Akismet caught a spam submission:' ); |
186 | 186 | $this->error = __( 'Your review cannot be submitted at this time. Please try again later.', 'site-reviews' ); |
187 | 187 | } |
@@ -191,8 +191,8 @@ discard block |
||
191 | 191 | */ |
192 | 192 | protected function validateBlacklist() |
193 | 193 | { |
194 | - if( !empty( $this->error ))return; |
|
195 | - if( !glsr( Blacklist::class )->isBlacklisted( $this->request ))return; |
|
194 | + if( !empty($this->error) )return; |
|
195 | + if( !glsr( Blacklist::class )->isBlacklisted( $this->request ) )return; |
|
196 | 196 | $blacklistAction = $this->getOption( 'settings.submissions.blacklist.action' ); |
197 | 197 | if( $blacklistAction == 'reject' ) { |
198 | 198 | $this->setSessionValues( 'errors', [], 'Blacklisted submission detected:' ); |
@@ -207,7 +207,7 @@ discard block |
||
207 | 207 | */ |
208 | 208 | protected function validateCustom() |
209 | 209 | { |
210 | - if( !empty( $this->error ))return; |
|
210 | + if( !empty($this->error) )return; |
|
211 | 211 | $validated = apply_filters( 'site-reviews/validate/review/submission', true, $this->request ); |
212 | 212 | if( $validated === true )return; |
213 | 213 | $this->setSessionValues( 'errors', [] ); |
@@ -222,8 +222,8 @@ discard block |
||
222 | 222 | */ |
223 | 223 | protected function validateHoneyPot() |
224 | 224 | { |
225 | - if( !empty( $this->error ))return; |
|
226 | - if( empty( $this->request['gotcha'] ))return; |
|
225 | + if( !empty($this->error) )return; |
|
226 | + if( empty($this->request['gotcha']) )return; |
|
227 | 227 | $this->setSessionValues( 'errors', [], 'The Honeypot caught a bad submission:' ); |
228 | 228 | $this->error = __( 'The review submission failed. Please notify the site administrator.', 'site-reviews' ); |
229 | 229 | } |
@@ -233,9 +233,9 @@ discard block |
||
233 | 233 | */ |
234 | 234 | protected function validateRecaptcha() |
235 | 235 | { |
236 | - if( !empty( $this->error ))return; |
|
236 | + if( !empty($this->error) )return; |
|
237 | 237 | $isValid = $this->isRecaptchaResponseValid(); |
238 | - if( is_null( $isValid )) { |
|
238 | + if( is_null( $isValid ) ) { |
|
239 | 239 | $this->setSessionValues( 'recaptcha', true ); |
240 | 240 | $this->recaptchaIsUnset = true; |
241 | 241 | } |
@@ -251,11 +251,11 @@ discard block |
||
251 | 251 | */ |
252 | 252 | protected function validateRequest( array $request ) |
253 | 253 | { |
254 | - if( !$this->isRequestValid( $request )) { |
|
254 | + if( !$this->isRequestValid( $request ) ) { |
|
255 | 255 | $this->error = __( 'Please fix the submission errors.', 'site-reviews' ); |
256 | 256 | return $request; |
257 | 257 | } |
258 | - if( empty( $request['title'] )) { |
|
258 | + if( empty($request['title']) ) { |
|
259 | 259 | $request['title'] = __( 'No Title', 'site-reviews' ); |
260 | 260 | } |
261 | 261 | return array_merge( glsr( ValidateReviewDefaults::class )->defaults(), $request ); |