@@ -127,8 +127,8 @@ |
||
127 | 127 | public function validateRequired( $value ) |
128 | 128 | { |
129 | 129 | return is_null( $value ) |
130 | - || ( is_string( $value ) && trim( $value ) === '' ) |
|
131 | - || ( is_array( $value ) && count( $value ) < 1 ) |
|
130 | + || (is_string( $value ) && trim( $value ) === '') |
|
131 | + || (is_array( $value ) && count( $value ) < 1) |
|
132 | 132 | ? false |
133 | 133 | : true; |
134 | 134 | } |
@@ -33,7 +33,9 @@ discard block |
||
33 | 33 | foreach( glsr( Database::class )->getReviews( $this->args )->results as $review ) { |
34 | 34 | // Only include critic reviews that have been directly produced by your site, not reviews from third- party sites or syndicated reviews. |
35 | 35 | // @see https://developers.google.com/search/docs/data-types/review |
36 | - if( $review->review_type != 'local' )continue; |
|
36 | + if( $review->review_type != 'local' ) { |
|
37 | + continue; |
|
38 | + } |
|
37 | 39 | $reviews[] = $this->buildReview( $review ); |
38 | 40 | } |
39 | 41 | if( !empty( $reviews )) { |
@@ -78,7 +80,9 @@ discard block |
||
78 | 80 | */ |
79 | 81 | public function render() |
80 | 82 | { |
81 | - if( is_null( glsr()->schemas ))return; |
|
83 | + if( is_null( glsr()->schemas )) { |
|
84 | + return; |
|
85 | + } |
|
82 | 86 | printf( '<script type="application/ld+json">%s</script>', json_encode( |
83 | 87 | apply_filters( 'site-reviews/schema/all', glsr()->schemas ), |
84 | 88 | JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES |
@@ -129,7 +133,9 @@ discard block |
||
129 | 133 | { |
130 | 134 | foreach( $values as $value ) { |
131 | 135 | $option = $this->getSchemaOptionValue( $value ); |
132 | - if( empty( $option ))continue; |
|
136 | + if( empty( $option )) { |
|
137 | + continue; |
|
138 | + } |
|
133 | 139 | $schema->$value( $option ); |
134 | 140 | } |
135 | 141 | return $schema; |
@@ -242,7 +248,9 @@ discard block |
||
242 | 248 | if( $value != $fallback ) { |
243 | 249 | return $value; |
244 | 250 | } |
245 | - if( !is_single() && !is_page() )return; |
|
251 | + if( !is_single() && !is_page() ) { |
|
252 | + return; |
|
253 | + } |
|
246 | 254 | $method = glsr( Helper::class )->buildMethodName( $option, 'getThing' ); |
247 | 255 | if( method_exists( $this, $method )) { |
248 | 256 | return $this->$method(); |
@@ -36,10 +36,10 @@ discard block |
||
36 | 36 | if( $review->review_type != 'local' )continue; |
37 | 37 | $reviews[] = $this->buildReview( $review ); |
38 | 38 | } |
39 | - if( !empty( $reviews )) { |
|
39 | + if( !empty($reviews) ) { |
|
40 | 40 | array_walk( $reviews, function( &$review ) { |
41 | - unset( $review['@context'] ); |
|
42 | - unset( $review['itemReviewed'] ); |
|
41 | + unset($review['@context']); |
|
42 | + unset($review['itemReviewed']); |
|
43 | 43 | }); |
44 | 44 | $schema['review'] = $reviews; |
45 | 45 | } |
@@ -52,7 +52,7 @@ discard block |
||
52 | 52 | */ |
53 | 53 | public function buildSummary( $args = null ) |
54 | 54 | { |
55 | - if( is_array( $args )) { |
|
55 | + if( is_array( $args ) ) { |
|
56 | 56 | $this->args = $args; |
57 | 57 | } |
58 | 58 | $buildSummary = glsr( Helper::class )->buildMethodName( $this->getSchemaOptionValue( 'type' ), 'buildSummaryFor' ); |
@@ -60,7 +60,7 @@ discard block |
||
60 | 60 | $schema = method_exists( $this, $buildSummary ) |
61 | 61 | ? $this->$buildSummary() |
62 | 62 | : $this->buildSummaryForCustom(); |
63 | - if( !empty( $count )) { |
|
63 | + if( !empty($count) ) { |
|
64 | 64 | $schema->aggregateRating( |
65 | 65 | $this->getSchemaType( 'AggregateRating' ) |
66 | 66 | ->ratingValue( $this->getRatingValue() ) |
@@ -79,11 +79,11 @@ discard block |
||
79 | 79 | */ |
80 | 80 | public function render() |
81 | 81 | { |
82 | - if( is_null( glsr()->schemas ))return; |
|
82 | + if( is_null( glsr()->schemas ) )return; |
|
83 | 83 | printf( '<script type="application/ld+json">%s</script>', json_encode( |
84 | 84 | apply_filters( 'site-reviews/schema/all', glsr()->schemas ), |
85 | 85 | JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES |
86 | - )); |
|
86 | + ) ); |
|
87 | 87 | } |
88 | 88 | |
89 | 89 | /** |
@@ -93,7 +93,7 @@ discard block |
||
93 | 93 | { |
94 | 94 | $schemas = glsr()->schemas; |
95 | 95 | $schemas[] = $schema; |
96 | - glsr()->schemas = array_map( 'unserialize', array_unique( array_map( 'serialize', $schemas ))); |
|
96 | + glsr()->schemas = array_map( 'unserialize', array_unique( array_map( 'serialize', $schemas ) ) ); |
|
97 | 97 | } |
98 | 98 | |
99 | 99 | /** |
@@ -103,16 +103,16 @@ discard block |
||
103 | 103 | protected function buildReview( $review ) |
104 | 104 | { |
105 | 105 | $schema = $this->getSchemaType( 'Review' ) |
106 | - ->doIf( !in_array( 'title', $this->args['hide'] ), function( $schema ) use( $review ) { |
|
106 | + ->doIf( !in_array( 'title', $this->args['hide'] ), function( $schema ) use($review) { |
|
107 | 107 | $schema->name( $review->title ); |
108 | 108 | }) |
109 | - ->doIf( !in_array( 'excerpt', $this->args['hide'] ), function( $schema ) use( $review ) { |
|
109 | + ->doIf( !in_array( 'excerpt', $this->args['hide'] ), function( $schema ) use($review) { |
|
110 | 110 | $schema->reviewBody( $review->content ); |
111 | 111 | }) |
112 | - ->datePublished(( new DateTime( $review->date ))) |
|
113 | - ->author( $this->getSchemaType( 'Person' )->name( $review->author )) |
|
114 | - ->itemReviewed( $this->getSchemaType()->name( $this->getSchemaOptionValue( 'name' ))); |
|
115 | - if( !empty( $review->rating )) { |
|
112 | + ->datePublished( (new DateTime( $review->date )) ) |
|
113 | + ->author( $this->getSchemaType( 'Person' )->name( $review->author ) ) |
|
114 | + ->itemReviewed( $this->getSchemaType()->name( $this->getSchemaOptionValue( 'name' ) ) ); |
|
115 | + if( !empty($review->rating) ) { |
|
116 | 116 | $schema->reviewRating( |
117 | 117 | $this->getSchemaType( 'Rating' ) |
118 | 118 | ->ratingValue( $review->rating ) |
@@ -131,7 +131,7 @@ discard block |
||
131 | 131 | { |
132 | 132 | foreach( $values as $value ) { |
133 | 133 | $option = $this->getSchemaOptionValue( $value ); |
134 | - if( empty( $option ))continue; |
|
134 | + if( empty($option) )continue; |
|
135 | 135 | $schema->$value( $option ); |
136 | 136 | } |
137 | 137 | return $schema; |
@@ -144,7 +144,7 @@ discard block |
||
144 | 144 | { |
145 | 145 | return $this->buildSchemaValues( $this->getSchemaType(), [ |
146 | 146 | 'description', 'image', 'name', 'url', |
147 | - ]); |
|
147 | + ] ); |
|
148 | 148 | } |
149 | 149 | |
150 | 150 | /** |
@@ -154,7 +154,7 @@ discard block |
||
154 | 154 | { |
155 | 155 | return $this->buildSchemaValues( $this->buildSummaryForCustom(), [ |
156 | 156 | 'address', 'priceRange', 'telephone', |
157 | - ]); |
|
157 | + ] ); |
|
158 | 158 | } |
159 | 159 | |
160 | 160 | /** |
@@ -164,10 +164,10 @@ discard block |
||
164 | 164 | { |
165 | 165 | $offers = $this->buildSchemaValues( $this->getSchemaType( 'AggregateOffer' ), [ |
166 | 166 | 'highPrice', 'lowPrice', 'priceCurrency', |
167 | - ]); |
|
167 | + ] ); |
|
168 | 168 | return $this->buildSummaryForCustom() |
169 | 169 | ->offers( $offers ) |
170 | - ->setProperty( '@id', $this->getSchemaOptionValue( 'url' )); |
|
170 | + ->setProperty( '@id', $this->getSchemaOptionValue( 'url' ) ); |
|
171 | 171 | } |
172 | 172 | |
173 | 173 | /** |
@@ -191,7 +191,7 @@ discard block |
||
191 | 191 | */ |
192 | 192 | protected function getReviews( $force = false ) |
193 | 193 | { |
194 | - if( !isset( $this->reviews ) || $force ) { |
|
194 | + if( !isset($this->reviews) || $force ) { |
|
195 | 195 | $args = wp_parse_args( ['count' => -1], $this->args ); |
196 | 196 | $this->reviews = glsr( Database::class )->getReviews( $args )->results; |
197 | 197 | } |
@@ -206,14 +206,14 @@ discard block |
||
206 | 206 | protected function getSchemaOption( $option, $fallback ) |
207 | 207 | { |
208 | 208 | $option = strtolower( $option ); |
209 | - if( $schemaOption = trim( (string)get_post_meta( intval( get_the_ID() ), 'schema_'.$option, true ))) { |
|
209 | + if( $schemaOption = trim( (string)get_post_meta( intval( get_the_ID() ), 'schema_'.$option, true ) ) ) { |
|
210 | 210 | return $schemaOption; |
211 | 211 | } |
212 | 212 | $setting = glsr( OptionManager::class )->get( 'settings.schema.'.$option ); |
213 | - if( is_array( $setting )) { |
|
213 | + if( is_array( $setting ) ) { |
|
214 | 214 | return $this->getSchemaOptionDefault( $setting, $fallback ); |
215 | 215 | } |
216 | - return !empty( $setting ) |
|
216 | + return !empty($setting) |
|
217 | 217 | ? $setting |
218 | 218 | : $fallback; |
219 | 219 | } |
@@ -227,7 +227,7 @@ discard block |
||
227 | 227 | $setting = wp_parse_args( $setting, [ |
228 | 228 | 'custom' => '', |
229 | 229 | 'default' => $fallback, |
230 | - ]); |
|
230 | + ] ); |
|
231 | 231 | return $setting['default'] != 'custom' |
232 | 232 | ? $setting['default'] |
233 | 233 | : $setting['custom']; |
@@ -246,7 +246,7 @@ discard block |
||
246 | 246 | } |
247 | 247 | if( !is_single() && !is_page() )return; |
248 | 248 | $method = glsr( Helper::class )->buildMethodName( $option, 'getThing' ); |
249 | - if( method_exists( $this, $method )) { |
|
249 | + if( method_exists( $this, $method ) ) { |
|
250 | 250 | return $this->$method(); |
251 | 251 | } |
252 | 252 | } |
@@ -257,7 +257,7 @@ discard block |
||
257 | 257 | */ |
258 | 258 | protected function getSchemaType( $type = null ) |
259 | 259 | { |
260 | - if( !is_string( $type )) { |
|
260 | + if( !is_string( $type ) ) { |
|
261 | 261 | $type = $this->getSchemaOption( 'type', 'LocalBusiness' ); |
262 | 262 | } |
263 | 263 | $className = glsr( Helper::class )->buildClassName( $type, 'Modules\Schema' ); |
@@ -272,11 +272,11 @@ discard block |
||
272 | 272 | protected function getThingDescription() |
273 | 273 | { |
274 | 274 | $post = get_post(); |
275 | - if( !( $post instanceof WP_Post )) { |
|
275 | + if( !($post instanceof WP_Post) ) { |
|
276 | 276 | return ''; |
277 | 277 | } |
278 | - $text = strip_shortcodes( wp_strip_all_tags( $post->post_excerpt )); |
|
279 | - return wp_trim_words( $text, apply_filters( 'excerpt_length', 55 )); |
|
278 | + $text = strip_shortcodes( wp_strip_all_tags( $post->post_excerpt ) ); |
|
279 | + return wp_trim_words( $text, apply_filters( 'excerpt_length', 55 ) ); |
|
280 | 280 | } |
281 | 281 | |
282 | 282 | /** |
@@ -15,12 +15,12 @@ discard block |
||
15 | 15 | return [[ |
16 | 16 | 'type' => 'container', |
17 | 17 | 'html' => '<p class="strong">'.esc_html__( 'All settings are optional.', 'site-reviews' ).'</p>', |
18 | - ],[ |
|
18 | + ], [ |
|
19 | 19 | 'label' => esc_html__( 'Title', 'site-reviews' ), |
20 | 20 | 'name' => 'title', |
21 | 21 | 'tooltip' => esc_attr__( 'Enter a custom shortcode heading.', 'site-reviews' ), |
22 | 22 | 'type' => 'textbox', |
23 | - ],[ |
|
23 | + ], [ |
|
24 | 24 | 'label' => esc_html__( 'Description', 'site-reviews' ), |
25 | 25 | 'minHeight' => 60, |
26 | 26 | 'minWidth' => 240, |
@@ -35,29 +35,29 @@ discard block |
||
35 | 35 | 'name' => 'assign_to', |
36 | 36 | 'tooltip' => esc_attr__( 'Assign submitted reviews to a custom page/post ID. You can also enter "post_id" to assign reviews to the ID of the current page.', 'site-reviews' ), |
37 | 37 | 'type' => 'textbox', |
38 | - ],[ |
|
38 | + ], [ |
|
39 | 39 | 'label' => esc_html__( 'Classes', 'site-reviews' ), |
40 | 40 | 'name' => 'class', |
41 | 41 | 'tooltip' => esc_attr__( 'Add custom CSS classes to the shortcode.', 'site-reviews' ), |
42 | 42 | 'type' => 'textbox', |
43 | - ],[ |
|
43 | + ], [ |
|
44 | 44 | 'columns' => 2, |
45 | 45 | 'items' => [[ |
46 | 46 | 'name' => 'hide_email', |
47 | 47 | 'text' => esc_html__( 'Email', 'site-reviews' ), |
48 | 48 | 'tooltip' => esc_attr__( 'Hide the email field?', 'site-reviews' ), |
49 | 49 | 'type' => 'checkbox', |
50 | - ],[ |
|
50 | + ], [ |
|
51 | 51 | 'name' => 'hide_name', |
52 | 52 | 'text' => esc_html__( 'Name', 'site-reviews' ), |
53 | 53 | 'tooltip' => esc_attr__( 'Hide the name field?', 'site-reviews' ), |
54 | 54 | 'type' => 'checkbox', |
55 | - ],[ |
|
55 | + ], [ |
|
56 | 56 | 'name' => 'hide_terms', |
57 | 57 | 'text' => esc_html__( 'Terms', 'site-reviews' ), |
58 | 58 | 'tooltip' => esc_attr__( 'Hide the terms field?', 'site-reviews' ), |
59 | 59 | 'type' => 'checkbox', |
60 | - ],[ |
|
60 | + ], [ |
|
61 | 61 | 'name' => 'hide_title', |
62 | 62 | 'text' => esc_html__( 'Title', 'site-reviews' ), |
63 | 63 | 'tooltip' => esc_attr__( 'Hide the title field?', 'site-reviews' ), |
@@ -67,7 +67,7 @@ discard block |
||
67 | 67 | 'layout' => 'grid', |
68 | 68 | 'spacing' => 5, |
69 | 69 | 'type' => 'container', |
70 | - ],[ |
|
70 | + ], [ |
|
71 | 71 | 'hidden' => true, |
72 | 72 | 'name' => 'id', |
73 | 73 | 'type' => 'textbox', |
@@ -80,7 +80,7 @@ discard block |
||
80 | 80 | public function getTerms() |
81 | 81 | { |
82 | 82 | $terms = glsr( Database::class )->getTerms(); |
83 | - if( empty( $terms )) { |
|
83 | + if( empty($terms) ) { |
|
84 | 84 | return []; |
85 | 85 | } |
86 | 86 | return [ |
@@ -12,10 +12,10 @@ discard block |
||
12 | 12 | public function fields() |
13 | 13 | { |
14 | 14 | return [[ |
15 | - 'html' => sprintf( '<p class="strong">%s</p>', esc_html__( 'All settings are optional.', 'site-reviews' )), |
|
15 | + 'html' => sprintf( '<p class="strong">%s</p>', esc_html__( 'All settings are optional.', 'site-reviews' ) ), |
|
16 | 16 | 'minWidth' => 320, |
17 | 17 | 'type' => 'container', |
18 | - ],[ |
|
18 | + ], [ |
|
19 | 19 | 'label' => esc_html__( 'Title', 'site-reviews' ), |
20 | 20 | 'name' => 'title', |
21 | 21 | 'tooltip' => esc_attr__( 'Enter a custom shortcode heading.', 'site-reviews' ), |
@@ -28,7 +28,7 @@ discard block |
||
28 | 28 | 'name' => 'assigned_to', |
29 | 29 | 'tooltip' => esc_attr__( 'Limit reviews to those assigned to this post ID (separate multiple IDs with a comma). You can also enter "post_id" to use the ID of the current page.', 'site-reviews' ), |
30 | 30 | 'type' => 'textbox', |
31 | - ],[ |
|
31 | + ], [ |
|
32 | 32 | 'label' => esc_html__( 'Schema', 'site-reviews' ), |
33 | 33 | 'name' => 'schema', |
34 | 34 | 'options' => [ |
@@ -37,34 +37,34 @@ discard block |
||
37 | 37 | ], |
38 | 38 | 'tooltip' => esc_attr__( 'Rich snippets are disabled by default.', 'site-reviews' ), |
39 | 39 | 'type' => 'listbox', |
40 | - ],[ |
|
40 | + ], [ |
|
41 | 41 | 'label' => esc_html__( 'Classes', 'site-reviews' ), |
42 | 42 | 'name' => 'class', |
43 | 43 | 'tooltip' => esc_attr__( 'Add custom CSS classes to the shortcode.', 'site-reviews' ), |
44 | 44 | 'type' => 'textbox', |
45 | - ],[ |
|
45 | + ], [ |
|
46 | 46 | 'columns' => 2, |
47 | 47 | 'items' => [[ |
48 | 48 | 'type' => 'checkbox', |
49 | 49 | 'name' => 'hide_bars', |
50 | 50 | 'text' => esc_html__( 'Bars', 'site-reviews' ), |
51 | 51 | 'tooltip' => esc_attr__( 'Hide the percentage bars?', 'site-reviews' ), |
52 | - ],[ |
|
52 | + ], [ |
|
53 | 53 | 'type' => 'checkbox', |
54 | 54 | 'name' => 'hide_if_empty', |
55 | 55 | 'text' => esc_html__( 'If Empty', 'site-reviews' ), |
56 | 56 | 'tooltip' => esc_attr__( 'Hide the summary if no reviews are found?', 'site-reviews' ), |
57 | - ],[ |
|
57 | + ], [ |
|
58 | 58 | 'type' => 'checkbox', |
59 | 59 | 'name' => 'hide_rating', |
60 | 60 | 'text' => esc_html__( 'Rating', 'site-reviews' ), |
61 | 61 | 'tooltip' => esc_attr__( 'Hide the rating?', 'site-reviews' ), |
62 | - ],[ |
|
62 | + ], [ |
|
63 | 63 | 'type' => 'checkbox', |
64 | 64 | 'name' => 'hide_stars', |
65 | 65 | 'text' => esc_html__( 'Stars', 'site-reviews' ), |
66 | 66 | 'tooltip' => esc_attr__( 'Hide the stars?', 'site-reviews' ), |
67 | - ],[ |
|
67 | + ], [ |
|
68 | 68 | 'type' => 'checkbox', |
69 | 69 | 'name' => 'hide_summary', |
70 | 70 | 'text' => esc_html__( 'Summary', 'site-reviews' ), |
@@ -13,15 +13,15 @@ discard block |
||
13 | 13 | public function fields() |
14 | 14 | { |
15 | 15 | return [[ |
16 | - 'html' => sprintf( '<p class="strong">%s</p>', esc_html__( 'All settings are optional.', 'site-reviews' )), |
|
16 | + 'html' => sprintf( '<p class="strong">%s</p>', esc_html__( 'All settings are optional.', 'site-reviews' ) ), |
|
17 | 17 | 'minWidth' => 320, |
18 | 18 | 'type' => 'container', |
19 | - ],[ |
|
19 | + ], [ |
|
20 | 20 | 'label' => esc_html__( 'Title', 'site-reviews' ), |
21 | 21 | 'name' => 'title', |
22 | 22 | 'tooltip' => esc_attr__( 'Enter a custom shortcode heading.', 'site-reviews' ), |
23 | 23 | 'type' => 'textbox', |
24 | - ],[ |
|
24 | + ], [ |
|
25 | 25 | 'label' => esc_html__( 'Count', 'site-reviews' ), |
26 | 26 | 'maxLength' => 5, |
27 | 27 | 'name' => 'count', |
@@ -29,19 +29,19 @@ discard block |
||
29 | 29 | 'text' => '10', |
30 | 30 | 'tooltip' => esc_attr__( 'How many reviews would you like to display (default: 10)?', 'site-reviews' ), |
31 | 31 | 'type' => 'textbox', |
32 | - ],[ |
|
32 | + ], [ |
|
33 | 33 | 'label' => esc_html__( 'Rating', 'site-reviews' ), |
34 | 34 | 'name' => 'rating', |
35 | 35 | 'options' => [ |
36 | - '5' => esc_html( sprintf( _n( '%s star', '%s stars', 5, 'site-reviews' ), 5 )), |
|
37 | - '4' => esc_html( sprintf( _n( '%s star', '%s stars', 4, 'site-reviews' ), 4 )), |
|
38 | - '3' => esc_html( sprintf( _n( '%s star', '%s stars', 3, 'site-reviews' ), 3 )), |
|
39 | - '2' => esc_html( sprintf( _n( '%s star', '%s stars', 2, 'site-reviews' ), 2 )), |
|
40 | - '1' => esc_html( sprintf( _n( '%s star', '%s stars', 1, 'site-reviews' ), 1 )), |
|
36 | + '5' => esc_html( sprintf( _n( '%s star', '%s stars', 5, 'site-reviews' ), 5 ) ), |
|
37 | + '4' => esc_html( sprintf( _n( '%s star', '%s stars', 4, 'site-reviews' ), 4 ) ), |
|
38 | + '3' => esc_html( sprintf( _n( '%s star', '%s stars', 3, 'site-reviews' ), 3 ) ), |
|
39 | + '2' => esc_html( sprintf( _n( '%s star', '%s stars', 2, 'site-reviews' ), 2 ) ), |
|
40 | + '1' => esc_html( sprintf( _n( '%s star', '%s stars', 1, 'site-reviews' ), 1 ) ), |
|
41 | 41 | ], |
42 | 42 | 'tooltip' => esc_attr__( 'What is the minimum rating to display (default: 1 star)?', 'site-reviews' ), |
43 | 43 | 'type' => 'listbox', |
44 | - ],[ |
|
44 | + ], [ |
|
45 | 45 | 'label' => esc_html__( 'Pagination', 'site-reviews' ), |
46 | 46 | 'name' => 'pagination', |
47 | 47 | 'options' => [ |
@@ -59,7 +59,7 @@ discard block |
||
59 | 59 | 'name' => 'assigned_to', |
60 | 60 | 'tooltip' => esc_attr__( 'Limit reviews to those assigned to this post ID (separate multiple IDs with a comma). You can also enter "post_id" to use the ID of the current page.', 'site-reviews' ), |
61 | 61 | 'type' => 'textbox', |
62 | - ],[ |
|
62 | + ], [ |
|
63 | 63 | 'label' => esc_html__( 'Schema', 'site-reviews' ), |
64 | 64 | 'name' => 'schema', |
65 | 65 | 'options' => [ |
@@ -68,49 +68,49 @@ discard block |
||
68 | 68 | ], |
69 | 69 | 'tooltip' => esc_attr__( 'Rich snippets are disabled by default.', 'site-reviews' ), |
70 | 70 | 'type' => 'listbox', |
71 | - ],[ |
|
71 | + ], [ |
|
72 | 72 | 'label' => esc_html__( 'Classes', 'site-reviews' ), |
73 | 73 | 'name' => 'class', |
74 | 74 | 'tooltip' => esc_attr__( 'Add custom CSS classes to the shortcode.', 'site-reviews' ), |
75 | 75 | 'type' => 'textbox', |
76 | - ],[ |
|
76 | + ], [ |
|
77 | 77 | 'columns' => 2, |
78 | 78 | 'items' => [[ |
79 | 79 | 'name' => 'hide_assigned_to', |
80 | 80 | 'text' => esc_html__( 'Assigned To', 'site-reviews' ), |
81 | 81 | 'tooltip' => esc_attr__( 'Hide the assigned to link?', 'site-reviews' ), |
82 | 82 | 'type' => 'checkbox', |
83 | - ],[ |
|
83 | + ], [ |
|
84 | 84 | 'name' => 'hide_author', |
85 | 85 | 'text' => esc_html__( 'Author', 'site-reviews' ), |
86 | 86 | 'tooltip' => esc_attr__( 'Hide the review author?', 'site-reviews' ), |
87 | 87 | 'type' => 'checkbox', |
88 | - ],[ |
|
88 | + ], [ |
|
89 | 89 | 'name' => 'hide_avatar', |
90 | 90 | 'text' => esc_html__( 'Avatar', 'site-reviews' ), |
91 | 91 | 'tooltip' => esc_attr__( 'Hide the reviewer avatar if shown?', 'site-reviews' ), |
92 | 92 | 'type' => 'checkbox', |
93 | - ],[ |
|
93 | + ], [ |
|
94 | 94 | 'name' => 'hide_content', |
95 | 95 | 'text' => esc_html__( 'Content', 'site-reviews' ), |
96 | 96 | 'tooltip' => esc_attr__( 'Hide the review content?', 'site-reviews' ), |
97 | 97 | 'type' => 'checkbox', |
98 | - ],[ |
|
98 | + ], [ |
|
99 | 99 | 'name' => 'hide_date', |
100 | 100 | 'text' => esc_html__( 'Date', 'site-reviews' ), |
101 | 101 | 'tooltip' => esc_attr__( 'Hide the review date?', 'site-reviews' ), |
102 | 102 | 'type' => 'checkbox', |
103 | - ],[ |
|
103 | + ], [ |
|
104 | 104 | 'name' => 'hide_rating', |
105 | 105 | 'text' => esc_html__( 'Rating', 'site-reviews' ), |
106 | 106 | 'tooltip' => esc_attr__( 'Hide the review rating?', 'site-reviews' ), |
107 | 107 | 'type' => 'checkbox', |
108 | - ],[ |
|
108 | + ], [ |
|
109 | 109 | 'name' => 'hide_response', |
110 | 110 | 'text' => esc_html__( 'Response', 'site-reviews' ), |
111 | 111 | 'tooltip' => esc_attr__( 'Hide the review response?', 'site-reviews' ), |
112 | 112 | 'type' => 'checkbox', |
113 | - ],[ |
|
113 | + ], [ |
|
114 | 114 | 'name' => 'hide_title', |
115 | 115 | 'text' => esc_html__( 'Title', 'site-reviews' ), |
116 | 116 | 'tooltip' => esc_attr__( 'Hide the review title?', 'site-reviews' ), |
@@ -120,7 +120,7 @@ discard block |
||
120 | 120 | 'label' => esc_html__( 'Hide', 'site-reviews' ), |
121 | 121 | 'spacing' => 5, |
122 | 122 | 'type' => 'container', |
123 | - ],[ |
|
123 | + ], [ |
|
124 | 124 | 'hidden' => true, |
125 | 125 | 'name' => 'id', |
126 | 126 | 'type' => 'textbox', |
@@ -133,7 +133,7 @@ discard block |
||
133 | 133 | public function getTerms() |
134 | 134 | { |
135 | 135 | $terms = glsr( Database::class )->getTerms(); |
136 | - if( empty( $terms )) { |
|
136 | + if( empty($terms) ) { |
|
137 | 137 | return []; |
138 | 138 | } |
139 | 139 | return [ |
@@ -30,7 +30,7 @@ discard block |
||
30 | 30 | { |
31 | 31 | $translations = $this->getTranslations(); |
32 | 32 | $entries = $this->filter( $translations, $this->entries() )->results(); |
33 | - array_walk( $translations, function( &$entry ) use( $entries ) { |
|
33 | + array_walk( $translations, function( &$entry ) use($entries) { |
|
34 | 34 | $entry['desc'] = array_key_exists( $entry['id'], $entries ) |
35 | 35 | ? $this->getEntryString( $entries[$entry['id']], 'msgctxt' ) |
36 | 36 | : ''; |
@@ -43,7 +43,7 @@ discard block |
||
43 | 43 | */ |
44 | 44 | public function entries() |
45 | 45 | { |
46 | - if( !isset( $this->entries )) { |
|
46 | + if( !isset($this->entries) ) { |
|
47 | 47 | try { |
48 | 48 | $potFile = glsr()->path( glsr()->languages.'/'.Application::ID.'.pot' ); |
49 | 49 | $entries = $this->normalize( Parser::parseFile( $potFile )->getEntries() ); |
@@ -76,13 +76,13 @@ discard block |
||
76 | 76 | */ |
77 | 77 | public function filter( $filterWith = null, $entries = null, $intersect = true ) |
78 | 78 | { |
79 | - if( !is_array( $entries )) { |
|
79 | + if( !is_array( $entries ) ) { |
|
80 | 80 | $entries = $this->results; |
81 | 81 | } |
82 | - if( !is_array( $filterWith )) { |
|
82 | + if( !is_array( $filterWith ) ) { |
|
83 | 83 | $filterWith = $this->getTranslations(); |
84 | 84 | } |
85 | - $keys = array_flip( array_column( $filterWith, 'id' )); |
|
85 | + $keys = array_flip( array_column( $filterWith, 'id' ) ); |
|
86 | 86 | $this->results = $intersect |
87 | 87 | ? array_intersect_key( $entries, $keys ) |
88 | 88 | : array_diff_key( $entries, $keys ); |
@@ -99,7 +99,7 @@ discard block |
||
99 | 99 | { |
100 | 100 | return $this->translate( $translation, $domain, [ |
101 | 101 | 'single' => $text, |
102 | - ]); |
|
102 | + ] ); |
|
103 | 103 | } |
104 | 104 | |
105 | 105 | /** |
@@ -114,7 +114,7 @@ discard block |
||
114 | 114 | return $this->translate( $translation, $domain, [ |
115 | 115 | 'context' => $context, |
116 | 116 | 'single' => $text, |
117 | - ]); |
|
117 | + ] ); |
|
118 | 118 | } |
119 | 119 | |
120 | 120 | /** |
@@ -131,7 +131,7 @@ discard block |
||
131 | 131 | 'number' => $number, |
132 | 132 | 'plural' => $plural, |
133 | 133 | 'single' => $single, |
134 | - ]); |
|
134 | + ] ); |
|
135 | 135 | } |
136 | 136 | |
137 | 137 | /** |
@@ -150,7 +150,7 @@ discard block |
||
150 | 150 | 'number' => $number, |
151 | 151 | 'plural' => $plural, |
152 | 152 | 'single' => $single, |
153 | - ]); |
|
153 | + ] ); |
|
154 | 154 | } |
155 | 155 | |
156 | 156 | /** |
@@ -160,13 +160,13 @@ discard block |
||
160 | 160 | public function render( $template, array $entry ) |
161 | 161 | { |
162 | 162 | $data = array_combine( |
163 | - array_map( function( $key ) { return 'data.'.$key; }, array_keys( $entry )), |
|
163 | + array_map( function( $key ) { return 'data.'.$key; }, array_keys( $entry ) ), |
|
164 | 164 | $entry |
165 | 165 | ); |
166 | 166 | ob_start(); |
167 | 167 | glsr( Html::class )->renderTemplate( 'partials/translations/'.$template, [ |
168 | 168 | 'context' => $data, |
169 | - ]); |
|
169 | + ] ); |
|
170 | 170 | return ob_get_clean(); |
171 | 171 | } |
172 | 172 | |
@@ -199,13 +199,13 @@ discard block |
||
199 | 199 | 'p1' => $this->getEntryString( $entry, 'msgid_plural' ), |
200 | 200 | 's1' => $this->getEntryString( $entry, 'msgid' ), |
201 | 201 | ]; |
202 | - $text = !empty( $data['p1'] ) |
|
202 | + $text = !empty($data['p1']) |
|
203 | 203 | ? sprintf( '%s | %s', $data['s1'], $data['p1'] ) |
204 | 204 | : $data['s1']; |
205 | 205 | $rendered .= $this->render( 'result', [ |
206 | 206 | 'entry' => wp_json_encode( $data ), |
207 | 207 | 'text' => wp_strip_all_tags( $text ), |
208 | - ]); |
|
208 | + ] ); |
|
209 | 209 | } |
210 | 210 | if( $resetAfterRender ) { |
211 | 211 | $this->reset(); |
@@ -238,12 +238,12 @@ discard block |
||
238 | 238 | public function search( $needle = '' ) |
239 | 239 | { |
240 | 240 | $this->reset(); |
241 | - $needle = trim( strtolower( $needle )); |
|
241 | + $needle = trim( strtolower( $needle ) ); |
|
242 | 242 | foreach( $this->entries() as $key => $entry ) { |
243 | - $single = strtolower( $this->getEntryString( $entry, 'msgid' )); |
|
244 | - $plural = strtolower( $this->getEntryString( $entry, 'msgid_plural' )); |
|
243 | + $single = strtolower( $this->getEntryString( $entry, 'msgid' ) ); |
|
244 | + $plural = strtolower( $this->getEntryString( $entry, 'msgid_plural' ) ); |
|
245 | 245 | if( strlen( $needle ) < static::SEARCH_THRESHOLD ) { |
246 | - if( in_array( $needle, [$single, $plural] )) { |
|
246 | + if( in_array( $needle, [$single, $plural] ) ) { |
|
247 | 247 | $this->results[$key] = $entry; |
248 | 248 | } |
249 | 249 | } |
@@ -266,7 +266,7 @@ discard block |
||
266 | 266 | } |
267 | 267 | $args = $this->normalizeTranslationArgs( $args ); |
268 | 268 | $strings = $this->getTranslationStrings( $args['single'], $args['plural'] ); |
269 | - if( empty( $strings )) { |
|
269 | + if( empty($strings) ) { |
|
270 | 270 | return $original; |
271 | 271 | } |
272 | 272 | $string = current( $strings ); |
@@ -281,8 +281,8 @@ discard block |
||
281 | 281 | */ |
282 | 282 | protected function getEntryString( array $entry, $key ) |
283 | 283 | { |
284 | - return isset( $entry[$key] ) |
|
285 | - ? implode( '', (array) $entry[$key] ) |
|
284 | + return isset($entry[$key]) |
|
285 | + ? implode( '', (array)$entry[$key] ) |
|
286 | 286 | : ''; |
287 | 287 | } |
288 | 288 | |
@@ -293,10 +293,10 @@ discard block |
||
293 | 293 | protected function getTranslations() |
294 | 294 | { |
295 | 295 | static $translations; |
296 | - if( empty( $translations )) { |
|
296 | + if( empty($translations) ) { |
|
297 | 297 | $settings = glsr( OptionManager::class )->get( 'settings' ); |
298 | - $translations = isset( $settings['strings'] ) |
|
299 | - ? $this->normalizeSettings( (array) $settings['strings'] ) |
|
298 | + $translations = isset($settings['strings']) |
|
299 | + ? $this->normalizeSettings( (array)$settings['strings'] ) |
|
300 | 300 | : []; |
301 | 301 | } |
302 | 302 | return $translations; |
@@ -309,7 +309,7 @@ discard block |
||
309 | 309 | */ |
310 | 310 | protected function getTranslationStrings( $single, $plural ) |
311 | 311 | { |
312 | - return array_filter( $this->getTranslations(), function( $string ) use( $single, $plural ) { |
|
312 | + return array_filter( $this->getTranslations(), function( $string ) use($single, $plural) { |
|
313 | 313 | return $string['s1'] == html_entity_decode( $single, ENT_COMPAT, 'UTF-8' ) |
314 | 314 | && $string['p1'] == html_entity_decode( $plural, ENT_COMPAT, 'UTF-8' ); |
315 | 315 | }); |
@@ -323,7 +323,7 @@ discard block |
||
323 | 323 | $keys = [ |
324 | 324 | 'msgctxt', 'msgid', 'msgid_plural', 'msgstr', 'msgstr[0]', 'msgstr[1]', |
325 | 325 | ]; |
326 | - array_walk( $entries, function( &$entry ) use( $keys ) { |
|
326 | + array_walk( $entries, function( &$entry ) use($keys) { |
|
327 | 327 | foreach( $keys as $key ) { |
328 | 328 | $entry = $this->normalizeEntryString( $entry, $key ); |
329 | 329 | } |
@@ -337,7 +337,7 @@ discard block |
||
337 | 337 | */ |
338 | 338 | protected function normalizeEntryString( array $entry, $key ) |
339 | 339 | { |
340 | - if( isset( $entry[$key] )) { |
|
340 | + if( isset($entry[$key]) ) { |
|
341 | 341 | $entry[$key] = $this->getEntryString( $entry, $key ); |
342 | 342 | } |
343 | 343 | return $entry; |
@@ -351,11 +351,11 @@ discard block |
||
351 | 351 | $defaultString = array_fill_keys( ['id', 's1', 's2', 'p1', 'p2'], '' ); |
352 | 352 | $strings = array_filter( $strings, 'is_array' ); |
353 | 353 | foreach( $strings as &$string ) { |
354 | - $string['type'] = isset( $string['p1'] ) ? 'plural' : 'single'; |
|
354 | + $string['type'] = isset($string['p1']) ? 'plural' : 'single'; |
|
355 | 355 | $string = wp_parse_args( $string, $defaultString ); |
356 | 356 | } |
357 | 357 | return array_filter( $strings, function( $string ) { |
358 | - return !empty( $string['id'] ); |
|
358 | + return !empty($string['id']); |
|
359 | 359 | }); |
360 | 360 | } |
361 | 361 | |
@@ -379,10 +379,10 @@ discard block |
||
379 | 379 | */ |
380 | 380 | protected function translatePlural( $domain, array $string, array $args ) |
381 | 381 | { |
382 | - if( !empty( $string['s2'] )) { |
|
382 | + if( !empty($string['s2']) ) { |
|
383 | 383 | $args['single'] = $string['s2']; |
384 | 384 | } |
385 | - if( !empty( $string['p2'] )) { |
|
385 | + if( !empty($string['p2']) ) { |
|
386 | 386 | $args['plural'] = $string['p2']; |
387 | 387 | } |
388 | 388 | return get_translations_for_domain( $domain )->translate_plural( |
@@ -399,7 +399,7 @@ discard block |
||
399 | 399 | */ |
400 | 400 | protected function translateSingle( $domain, array $string, array $args ) |
401 | 401 | { |
402 | - if( !empty( $string['s2'] )) { |
|
402 | + if( !empty($string['s2']) ) { |
|
403 | 403 | $args['single'] = $string['s2']; |
404 | 404 | } |
405 | 405 | return get_translations_for_domain( $domain )->translate( |
@@ -34,7 +34,7 @@ discard block |
||
34 | 34 | { |
35 | 35 | $this->args = $args; |
36 | 36 | $this->reviews = glsr( Database::class )->getReviews( $args )->results; |
37 | - if( empty( $this->reviews ) && $this->isHidden( 'if_empty' ))return; |
|
37 | + if( empty($this->reviews) && $this->isHidden( 'if_empty' ) )return; |
|
38 | 38 | $this->rating = glsr( Rating::class )->getAverage( $this->reviews ); |
39 | 39 | $this->generateSchema(); |
40 | 40 | return glsr( Template::class )->build( 'templates/reviews-summary', [ |
@@ -46,7 +46,7 @@ discard block |
||
46 | 46 | 'stars' => $this->buildStars(), |
47 | 47 | 'text' => $this->buildText(), |
48 | 48 | ], |
49 | - ]); |
|
49 | + ] ); |
|
50 | 50 | } |
51 | 51 | |
52 | 52 | /** |
@@ -54,16 +54,16 @@ discard block |
||
54 | 54 | */ |
55 | 55 | protected function buildPercentage() |
56 | 56 | { |
57 | - if( $this->isHidden( 'bars' ))return; |
|
57 | + if( $this->isHidden( 'bars' ) )return; |
|
58 | 58 | $range = range( Rating::MAX_RATING, 1 ); |
59 | - $percentages = preg_filter( '/$/', '%', glsr( Rating::class )->getPercentages( $this->reviews )); |
|
60 | - $bars = array_reduce( $range, function( $carry, $level ) use( $percentages ) { |
|
59 | + $percentages = preg_filter( '/$/', '%', glsr( Rating::class )->getPercentages( $this->reviews ) ); |
|
60 | + $bars = array_reduce( $range, function( $carry, $level ) use($percentages) { |
|
61 | 61 | $label = $this->buildPercentageLabel( $this->args['labels'][$level] ); |
62 | 62 | $background = $this->buildPercentageBackground( $percentages[$level] ); |
63 | 63 | $percent = $this->buildPercentagePercent( $percentages[$level] ); |
64 | 64 | return $carry.glsr( Builder::class )->div( $label.$background.$percent, [ |
65 | 65 | 'class' => 'glsr-bar', |
66 | - ]); |
|
66 | + ] ); |
|
67 | 67 | }); |
68 | 68 | return $this->wrap( 'percentage', $bars ); |
69 | 69 | } |
@@ -74,10 +74,10 @@ discard block |
||
74 | 74 | */ |
75 | 75 | protected function buildPercentageBackground( $percent ) |
76 | 76 | { |
77 | - $backgroundPercent = glsr( Builder::class )->span([ |
|
77 | + $backgroundPercent = glsr( Builder::class )->span( [ |
|
78 | 78 | 'class' => 'glsr-bar-background-percent', |
79 | 79 | 'style' => 'width:'.$percent, |
80 | - ]); |
|
80 | + ] ); |
|
81 | 81 | return '<span class="glsr-bar-background">'.$backgroundPercent.'</span>'; |
82 | 82 | } |
83 | 83 | |
@@ -104,7 +104,7 @@ discard block |
||
104 | 104 | */ |
105 | 105 | protected function buildRating() |
106 | 106 | { |
107 | - if( $this->isHidden( 'rating' ))return; |
|
107 | + if( $this->isHidden( 'rating' ) )return; |
|
108 | 108 | return $this->wrap( 'rating', '<span>'.$this->rating.'</span>' ); |
109 | 109 | } |
110 | 110 | |
@@ -113,10 +113,10 @@ discard block |
||
113 | 113 | */ |
114 | 114 | protected function buildStars() |
115 | 115 | { |
116 | - if( $this->isHidden( 'stars' ))return; |
|
116 | + if( $this->isHidden( 'stars' ) )return; |
|
117 | 117 | $stars = glsr( Partial::class )->build( 'star-rating', [ |
118 | 118 | 'rating' => $this->rating, |
119 | - ]); |
|
119 | + ] ); |
|
120 | 120 | return $this->wrap( 'stars', $stars ); |
121 | 121 | } |
122 | 122 | |
@@ -125,9 +125,9 @@ discard block |
||
125 | 125 | */ |
126 | 126 | protected function buildText() |
127 | 127 | { |
128 | - if( $this->isHidden( 'summary' ))return; |
|
128 | + if( $this->isHidden( 'summary' ) )return; |
|
129 | 129 | $count = count( $this->reviews ); |
130 | - if( empty( $this->args['text'] )) { |
|
130 | + if( empty($this->args['text']) ) { |
|
131 | 131 | // @todo document this change |
132 | 132 | $this->args['text'] = _nx( |
133 | 133 | '{rating} out of {max} stars (based on {num} review)', |
@@ -138,7 +138,7 @@ discard block |
||
138 | 138 | ); |
139 | 139 | } |
140 | 140 | $summary = str_replace( |
141 | - ['{rating}','{max}', '{num}'], |
|
141 | + ['{rating}', '{max}', '{num}'], |
|
142 | 142 | [$this->rating, Rating::MAX_RATING, $count], |
143 | 143 | $this->args['text'] |
144 | 144 | ); |
@@ -150,7 +150,7 @@ discard block |
||
150 | 150 | */ |
151 | 151 | protected function generateSchema() |
152 | 152 | { |
153 | - if( !wp_validate_boolean( $this->args['schema'] ))return; |
|
153 | + if( !wp_validate_boolean( $this->args['schema'] ) )return; |
|
154 | 154 | glsr( Schema::class )->store( |
155 | 155 | glsr( Schema::class )->buildSummary( $this->args ) |
156 | 156 | ); |
@@ -183,6 +183,6 @@ discard block |
||
183 | 183 | { |
184 | 184 | return glsr( Builder::class )->div( $value, [ |
185 | 185 | 'class' => 'glsr-summary-'.$key, |
186 | - ]); |
|
186 | + ] ); |
|
187 | 187 | } |
188 | 188 | } |
@@ -34,7 +34,9 @@ discard block |
||
34 | 34 | { |
35 | 35 | $this->args = $args; |
36 | 36 | $this->reviews = glsr( Database::class )->getReviews( $args )->results; |
37 | - if( empty( $this->reviews ) && $this->isHidden( 'if_empty' ))return; |
|
37 | + if( empty( $this->reviews ) && $this->isHidden( 'if_empty' )) { |
|
38 | + return; |
|
39 | + } |
|
38 | 40 | $this->rating = glsr( Rating::class )->getAverage( $this->reviews ); |
39 | 41 | $this->generateSchema(); |
40 | 42 | return glsr( Template::class )->build( 'templates/reviews-summary', [ |
@@ -54,7 +56,9 @@ discard block |
||
54 | 56 | */ |
55 | 57 | protected function buildPercentage() |
56 | 58 | { |
57 | - if( $this->isHidden( 'bars' ))return; |
|
59 | + if( $this->isHidden( 'bars' )) { |
|
60 | + return; |
|
61 | + } |
|
58 | 62 | $range = range( Rating::MAX_RATING, 1 ); |
59 | 63 | $percentages = preg_filter( '/$/', '%', glsr( Rating::class )->getPercentages( $this->reviews )); |
60 | 64 | $bars = array_reduce( $range, function( $carry, $level ) use( $percentages ) { |
@@ -104,7 +108,9 @@ discard block |
||
104 | 108 | */ |
105 | 109 | protected function buildRating() |
106 | 110 | { |
107 | - if( $this->isHidden( 'rating' ))return; |
|
111 | + if( $this->isHidden( 'rating' )) { |
|
112 | + return; |
|
113 | + } |
|
108 | 114 | return $this->wrap( 'rating', '<span>'.$this->rating.'</span>' ); |
109 | 115 | } |
110 | 116 | |
@@ -113,7 +119,9 @@ discard block |
||
113 | 119 | */ |
114 | 120 | protected function buildStars() |
115 | 121 | { |
116 | - if( $this->isHidden( 'stars' ))return; |
|
122 | + if( $this->isHidden( 'stars' )) { |
|
123 | + return; |
|
124 | + } |
|
117 | 125 | $stars = glsr( Partial::class )->build( 'star-rating', [ |
118 | 126 | 'rating' => $this->rating, |
119 | 127 | ]); |
@@ -125,7 +133,9 @@ discard block |
||
125 | 133 | */ |
126 | 134 | protected function buildText() |
127 | 135 | { |
128 | - if( $this->isHidden( 'summary' ))return; |
|
136 | + if( $this->isHidden( 'summary' )) { |
|
137 | + return; |
|
138 | + } |
|
129 | 139 | $count = count( $this->reviews ); |
130 | 140 | if( empty( $this->args['text'] )) { |
131 | 141 | // @todo document this change |
@@ -150,7 +160,9 @@ discard block |
||
150 | 160 | */ |
151 | 161 | protected function generateSchema() |
152 | 162 | { |
153 | - if( !wp_validate_boolean( $this->args['schema'] ))return; |
|
163 | + if( !wp_validate_boolean( $this->args['schema'] )) { |
|
164 | + return; |
|
165 | + } |
|
154 | 166 | glsr( Schema::class )->store( |
155 | 167 | glsr( Schema::class )->buildSummary( $this->args ) |
156 | 168 | ); |
@@ -6,7 +6,7 @@ discard block |
||
6 | 6 | */ |
7 | 7 | function glsr( $alias = null ) { |
8 | 8 | $app = \GeminiLabs\SiteReviews\Application::load(); |
9 | - return !empty( $alias ) |
|
9 | + return !empty($alias) |
|
10 | 10 | ? $app->make( $alias ) |
11 | 11 | : $app; |
12 | 12 | } |
@@ -15,10 +15,10 @@ discard block |
||
15 | 15 | * @return \WP_Screen|object |
16 | 16 | */ |
17 | 17 | function glsr_current_screen() { |
18 | - if( function_exists( 'get_current_screen' )) { |
|
18 | + if( function_exists( 'get_current_screen' ) ) { |
|
19 | 19 | $screen = get_current_screen(); |
20 | 20 | } |
21 | - return empty( $screen ) |
|
21 | + return empty($screen) |
|
22 | 22 | ? (object)array_fill_keys( ['base', 'id', 'post_type'], null ) |
23 | 23 | : $screen; |
24 | 24 | } |
@@ -53,11 +53,11 @@ discard block |
||
53 | 53 | */ |
54 | 54 | function glsr_log() { |
55 | 55 | $args = func_get_args(); |
56 | - $context = isset( $args[1] ) |
|
56 | + $context = isset($args[1]) |
|
57 | 57 | ? $args[1] |
58 | 58 | : []; |
59 | 59 | $console = glsr( 'Modules\Console' ); |
60 | - return !empty( $args ) |
|
60 | + return !empty($args) |
|
61 | 61 | ? $console->log( 'debug', $args[0], $context ) |
62 | 62 | : $console; |
63 | 63 | } |
@@ -83,7 +83,7 @@ discard block |
||
83 | 83 | * @return void|object |
84 | 84 | */ |
85 | 85 | function glsr_get_review( $post_id ) { |
86 | - return glsr( 'Database' )->getReview( get_post( $post_id )); |
|
86 | + return glsr( 'Database' )->getReview( get_post( $post_id ) ); |
|
87 | 87 | } |
88 | 88 | |
89 | 89 | /** |
@@ -4,7 +4,8 @@ discard block |
||
4 | 4 | /** |
5 | 5 | * @return mixed |
6 | 6 | */ |
7 | -function glsr( $alias = null ) { |
|
7 | +function glsr( $alias = null ) |
|
8 | +{ |
|
8 | 9 | $app = \GeminiLabs\SiteReviews\Application::load(); |
9 | 10 | return !empty( $alias ) |
10 | 11 | ? $app->make( $alias ) |
@@ -14,7 +15,8 @@ discard block |
||
14 | 15 | /** |
15 | 16 | * @return \WP_Screen|object |
16 | 17 | */ |
17 | -function glsr_current_screen() { |
|
18 | +function glsr_current_screen() |
|
19 | +{ |
|
18 | 20 | if( function_exists( 'get_current_screen' )) { |
19 | 21 | $screen = get_current_screen(); |
20 | 22 | } |
@@ -26,7 +28,8 @@ discard block |
||
26 | 28 | /** |
27 | 29 | * @return \GeminiLabs\SiteReviews\Database |
28 | 30 | */ |
29 | -function glsr_db() { |
|
31 | +function glsr_db() |
|
32 | +{ |
|
30 | 33 | return glsr( 'Database' ); |
31 | 34 | } |
32 | 35 | |
@@ -34,7 +37,8 @@ discard block |
||
34 | 37 | * @param mixed ...$vars |
35 | 38 | * @return void |
36 | 39 | */ |
37 | -function glsr_debug( ...$vars ) { |
|
40 | +function glsr_debug( ...$vars ) |
|
41 | +{ |
|
38 | 42 | if( count( $vars ) == 1 ) { |
39 | 43 | $value = htmlspecialchars( print_r( $vars[0], true ), ENT_QUOTES, 'UTF-8' ); |
40 | 44 | printf( '<div class="glsr-debug"><pre>%s</pre></div>', $value ); |
@@ -51,7 +55,8 @@ discard block |
||
51 | 55 | /** |
52 | 56 | * @return \GeminiLabs\SiteReviews\Modules\Console |
53 | 57 | */ |
54 | -function glsr_log() { |
|
58 | +function glsr_log() |
|
59 | +{ |
|
55 | 60 | $args = func_get_args(); |
56 | 61 | $context = isset( $args[1] ) |
57 | 62 | ? $args[1] |
@@ -67,14 +72,16 @@ discard block |
||
67 | 72 | * @param mixed $fallback |
68 | 73 | * @return string|array |
69 | 74 | */ |
70 | -function glsr_get_option( $path = '', $fallback = '' ) { |
|
75 | +function glsr_get_option( $path = '', $fallback = '' ) |
|
76 | +{ |
|
71 | 77 | return glsr( 'Database\OptionManager' )->get( 'settings.'.$path, $fallback ); |
72 | 78 | } |
73 | 79 | |
74 | 80 | /** |
75 | 81 | * @return array |
76 | 82 | */ |
77 | -function glsr_get_options() { |
|
83 | +function glsr_get_options() |
|
84 | +{ |
|
78 | 85 | return glsr( 'Database\OptionManager' )->get( 'settings' ); |
79 | 86 | } |
80 | 87 | |
@@ -82,7 +89,8 @@ discard block |
||
82 | 89 | * @param int $post_id |
83 | 90 | * @return void|object |
84 | 91 | */ |
85 | -function glsr_get_review( $post_id ) { |
|
92 | +function glsr_get_review( $post_id ) |
|
93 | +{ |
|
86 | 94 | return glsr( 'Database' )->getReview( get_post( $post_id )); |
87 | 95 | } |
88 | 96 | |
@@ -90,6 +98,7 @@ discard block |
||
90 | 98 | * @return array |
91 | 99 | * @todo document change of $reviews->reviews to $reviews->results |
92 | 100 | */ |
93 | -function glsr_get_reviews( array $args = array() ) { |
|
101 | +function glsr_get_reviews( array $args = array() ) |
|
102 | +{ |
|
94 | 103 | return glsr( 'Database' )->getReviews( $args ); |
95 | 104 | } |
@@ -37,7 +37,7 @@ discard block |
||
37 | 37 | 'inactive-plugin' => 'Inactive Plugins', |
38 | 38 | 'setting' => 'Plugin Settings', |
39 | 39 | ]; |
40 | - $systemInfo = array_reduce( array_keys( $details ), function( $carry, $key ) use( $details ) { |
|
40 | + $systemInfo = array_reduce( array_keys( $details ), function( $carry, $key ) use($details) { |
|
41 | 41 | $methodName = glsr( Helper::class )->buildMethodName( 'get-'.$key.'-details' ); |
42 | 42 | if( method_exists( $this, $methodName ) && $systemDetails = $this->$methodName() ) { |
43 | 43 | return $carry.$this->implode( $details[$key], $systemDetails ); |
@@ -54,8 +54,8 @@ discard block |
||
54 | 54 | { |
55 | 55 | $plugins = get_plugins(); |
56 | 56 | $activePlugins = (array)get_option( 'active_plugins', [] ); |
57 | - $inactive = array_diff_key( $plugins, array_flip( $activePlugins )); |
|
58 | - return $this->normalizePluginList( array_diff_key( $plugins, $inactive )); |
|
57 | + $inactive = array_diff_key( $plugins, array_flip( $activePlugins ) ); |
|
58 | + return $this->normalizePluginList( array_diff_key( $plugins, $inactive ) ); |
|
59 | 59 | } |
60 | 60 | |
61 | 61 | /** |
@@ -79,7 +79,7 @@ discard block |
||
79 | 79 | public function getInactivePluginDetails() |
80 | 80 | { |
81 | 81 | $activePlugins = (array)get_option( 'active_plugins', [] ); |
82 | - return $this->normalizePluginList( array_diff_key( get_plugins(), array_flip( $activePlugins ))); |
|
82 | + return $this->normalizePluginList( array_diff_key( get_plugins(), array_flip( $activePlugins ) ) ); |
|
83 | 83 | } |
84 | 84 | |
85 | 85 | /** |
@@ -89,9 +89,9 @@ discard block |
||
89 | 89 | { |
90 | 90 | $plugins = array_merge( |
91 | 91 | get_mu_plugins(), |
92 | - get_plugins( '/../'.basename( WPMU_PLUGIN_DIR )) |
|
92 | + get_plugins( '/../'.basename( WPMU_PLUGIN_DIR ) ) |
|
93 | 93 | ); |
94 | - if( empty( $plugins ))return; |
|
94 | + if( empty($plugins) )return; |
|
95 | 95 | return $this->normalizePluginList( $plugins ); |
96 | 96 | } |
97 | 97 | |
@@ -100,7 +100,7 @@ discard block |
||
100 | 100 | */ |
101 | 101 | public function getMultisitePluginDetails() |
102 | 102 | { |
103 | - if( !is_multisite() || empty( get_site_option( 'active_sitewide_plugins', [] )))return; |
|
103 | + if( !is_multisite() || empty(get_site_option( 'active_sitewide_plugins', [] )) )return; |
|
104 | 104 | return $this->normalizePluginList( wp_get_active_network_plugins() ); |
105 | 105 | } |
106 | 106 | |
@@ -122,11 +122,11 @@ discard block |
||
122 | 122 | 'Max Input Vars' => ini_get( 'max_input_vars' ), |
123 | 123 | 'Memory Limit' => ini_get( 'memory_limit' ), |
124 | 124 | 'Post Max Size' => ini_get( 'post_max_size' ), |
125 | - 'Session Cookie Path' => esc_html( ini_get( 'session.cookie_path' )), |
|
126 | - 'Session Name' => esc_html( ini_get( 'session.name' )), |
|
127 | - 'Session Save Path' => esc_html( ini_get( 'session.save_path' )), |
|
128 | - 'Session Use Cookies' => var_export( wp_validate_boolean( ini_get( 'session.use_cookies' )), true ), |
|
129 | - 'Session Use Only Cookies' => var_export( wp_validate_boolean( ini_get( 'session.use_only_cookies' )), true ), |
|
125 | + 'Session Cookie Path' => esc_html( ini_get( 'session.cookie_path' ) ), |
|
126 | + 'Session Name' => esc_html( ini_get( 'session.name' ) ), |
|
127 | + 'Session Save Path' => esc_html( ini_get( 'session.save_path' ) ), |
|
128 | + 'Session Use Cookies' => var_export( wp_validate_boolean( ini_get( 'session.use_cookies' ) ), true ), |
|
129 | + 'Session Use Only Cookies' => var_export( wp_validate_boolean( ini_get( 'session.use_only_cookies' ) ), true ), |
|
130 | 130 | 'Upload Max Filesize' => ini_get( 'upload_max_filesize' ), |
131 | 131 | ]; |
132 | 132 | } |
@@ -157,8 +157,8 @@ discard block |
||
157 | 157 | ksort( $settings ); |
158 | 158 | $details = []; |
159 | 159 | foreach( $settings as $key => $value ) { |
160 | - if( $helper->startsWith( 'strings', $key ) && $helper->endsWith( 'id', $key ))continue; |
|
161 | - $value = htmlspecialchars( trim( preg_replace('/\s\s+/', '\\n', $value )), ENT_QUOTES, 'UTF-8' ); |
|
160 | + if( $helper->startsWith( 'strings', $key ) && $helper->endsWith( 'id', $key ) )continue; |
|
161 | + $value = htmlspecialchars( trim( preg_replace( '/\s\s+/', '\\n', $value ) ), ENT_QUOTES, 'UTF-8' ); |
|
162 | 162 | $details[$key] = $value; |
163 | 163 | } |
164 | 164 | return $details; |
@@ -230,10 +230,10 @@ discard block |
||
230 | 230 | 'WPE_APIKEY' => 'WP Engine', |
231 | 231 | ]; |
232 | 232 | foreach( $checks as $key => $value ) { |
233 | - if( !$this->isWebhostCheckValid( $key ))continue; |
|
233 | + if( !$this->isWebhostCheckValid( $key ) )continue; |
|
234 | 234 | return $value; |
235 | 235 | } |
236 | - return implode( ',', array_filter( [DB_HOST, filter_input( INPUT_SERVER, 'SERVER_NAME' )] )); |
|
236 | + return implode( ',', array_filter( [DB_HOST, filter_input( INPUT_SERVER, 'SERVER_NAME' )] ) ); |
|
237 | 237 | } |
238 | 238 | |
239 | 239 | /** |
@@ -254,8 +254,8 @@ discard block |
||
254 | 254 | { |
255 | 255 | $plugins = get_plugins(); |
256 | 256 | $activePlugins = (array)get_option( 'active_plugins', [] ); |
257 | - $inactive = $this->normalizePluginList( array_diff_key( $plugins, array_flip( $activePlugins ))); |
|
258 | - $active = $this->normalizePluginList( array_diff_key( $plugins, $inactive )); |
|
257 | + $inactive = $this->normalizePluginList( array_diff_key( $plugins, array_flip( $activePlugins ) ) ); |
|
258 | + $active = $this->normalizePluginList( array_diff_key( $plugins, $inactive ) ); |
|
259 | 259 | return $active + $inactive; |
260 | 260 | } |
261 | 261 | |
@@ -266,7 +266,7 @@ discard block |
||
266 | 266 | protected function implode( $title, array $details ) |
267 | 267 | { |
268 | 268 | $strings = ['['.$title.']']; |
269 | - $padding = max( array_map( 'strlen', array_keys( $details )) ); |
|
269 | + $padding = max( array_map( 'strlen', array_keys( $details ) ) ); |
|
270 | 270 | $padding = max( [$padding, static::PAD] ); |
271 | 271 | foreach( $details as $key => $value ) { |
272 | 272 | $strings[] = is_string( $key ) |
@@ -309,9 +309,9 @@ discard block |
||
309 | 309 | $keys = [ |
310 | 310 | 'licenses.', 'submissions.recaptcha.key', 'submissions.recaptcha.secret', |
311 | 311 | ]; |
312 | - array_walk( $settings, function( &$value, $setting ) use( $keys ) { |
|
312 | + array_walk( $settings, function( &$value, $setting ) use($keys) { |
|
313 | 313 | foreach( $keys as $key ) { |
314 | - if( !glsr( Helper::class )->startsWith( $key, $setting ) || empty( $value ))continue; |
|
314 | + if( !glsr( Helper::class )->startsWith( $key, $setting ) || empty($value) )continue; |
|
315 | 315 | $value = str_repeat( '•', 13 ); |
316 | 316 | return; |
317 | 317 | } |
@@ -91,7 +91,9 @@ discard block |
||
91 | 91 | get_mu_plugins(), |
92 | 92 | get_plugins( '/../'.basename( WPMU_PLUGIN_DIR )) |
93 | 93 | ); |
94 | - if( empty( $plugins ))return; |
|
94 | + if( empty( $plugins )) { |
|
95 | + return; |
|
96 | + } |
|
95 | 97 | return $this->normalizePluginList( $plugins ); |
96 | 98 | } |
97 | 99 | |
@@ -100,7 +102,9 @@ discard block |
||
100 | 102 | */ |
101 | 103 | public function getMultisitePluginDetails() |
102 | 104 | { |
103 | - if( !is_multisite() || empty( get_site_option( 'active_sitewide_plugins', [] )))return; |
|
105 | + if( !is_multisite() || empty( get_site_option( 'active_sitewide_plugins', [] ))) { |
|
106 | + return; |
|
107 | + } |
|
104 | 108 | return $this->normalizePluginList( wp_get_active_network_plugins() ); |
105 | 109 | } |
106 | 110 | |
@@ -157,7 +161,9 @@ discard block |
||
157 | 161 | ksort( $settings ); |
158 | 162 | $details = []; |
159 | 163 | foreach( $settings as $key => $value ) { |
160 | - if( $helper->startsWith( 'strings', $key ) && $helper->endsWith( 'id', $key ))continue; |
|
164 | + if( $helper->startsWith( 'strings', $key ) && $helper->endsWith( 'id', $key )) { |
|
165 | + continue; |
|
166 | + } |
|
161 | 167 | $value = htmlspecialchars( trim( preg_replace('/\s\s+/', '\\n', $value )), ENT_QUOTES, 'UTF-8' ); |
162 | 168 | $details[$key] = $value; |
163 | 169 | } |
@@ -230,7 +236,9 @@ discard block |
||
230 | 236 | 'WPE_APIKEY' => 'WP Engine', |
231 | 237 | ]; |
232 | 238 | foreach( $checks as $key => $value ) { |
233 | - if( !$this->isWebhostCheckValid( $key ))continue; |
|
239 | + if( !$this->isWebhostCheckValid( $key )) { |
|
240 | + continue; |
|
241 | + } |
|
234 | 242 | return $value; |
235 | 243 | } |
236 | 244 | return implode( ',', array_filter( [DB_HOST, filter_input( INPUT_SERVER, 'SERVER_NAME' )] )); |
@@ -311,7 +319,9 @@ discard block |
||
311 | 319 | ]; |
312 | 320 | array_walk( $settings, function( &$value, $setting ) use( $keys ) { |
313 | 321 | foreach( $keys as $key ) { |
314 | - if( !glsr( Helper::class )->startsWith( $key, $setting ) || empty( $value ))continue; |
|
322 | + if( !glsr( Helper::class )->startsWith( $key, $setting ) || empty( $value )) { |
|
323 | + continue; |
|
324 | + } |
|
315 | 325 | $value = str_repeat( '•', 13 ); |
316 | 326 | return; |
317 | 327 | } |