@@ -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,14 +133,14 @@ 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 | - $result = !empty( $args['recipient'] ) |
|
| 136 | + $result = !empty($args['recipient']) |
|
| 137 | 137 | ? $this->createEmailNotification( $args )->send() |
| 138 | 138 | : false; |
| 139 | - if( !is_bool( $result )) { |
|
| 140 | - glsr_log()->error( __( 'Email notification was not sent: missing email, subject, or message.', 'site-reviews' )); |
|
| 139 | + if( !is_bool( $result ) ) { |
|
| 140 | + glsr_log()->error( __( 'Email notification was not sent: missing email, subject, or message.', 'site-reviews' ) ); |
|
| 141 | 141 | } |
| 142 | 142 | if( $result === false ) { |
| 143 | - glsr_log()->error( __( 'Email notification was not sent: wp_mail() failed.', 'site-reviews' )); |
|
| 143 | + glsr_log()->error( __( 'Email notification was not sent: wp_mail() failed.', 'site-reviews' ) ); |
|
| 144 | 144 | } |
| 145 | 145 | } |
| 146 | 146 | |
@@ -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 | } |
@@ -16,7 +16,7 @@ discard block |
||
| 16 | 16 | public function routeAdminPostRequest() |
| 17 | 17 | { |
| 18 | 18 | $request = $this->getRequest(); |
| 19 | - if( !$this->isValidPostRequest( $request ))return; |
|
| 19 | + if( !$this->isValidPostRequest( $request ) )return; |
|
| 20 | 20 | $this->checkAdminNonce( $request['action'] ); |
| 21 | 21 | $this->routeRequest( 'admin', $request['action'], $request ); |
| 22 | 22 | } |
@@ -29,15 +29,15 @@ discard block |
||
| 29 | 29 | public function routeAjaxRequest() |
| 30 | 30 | { |
| 31 | 31 | $request = $this->getRequest(); |
| 32 | - if( !isset( $request['action'] )) { |
|
| 32 | + if( !isset($request['action']) ) { |
|
| 33 | 33 | glsr_log()->error( 'The AJAX request must include an action' )->info( $request ); |
| 34 | 34 | wp_die(); |
| 35 | 35 | } |
| 36 | - if( !isset( $request['nonce'] )) { |
|
| 36 | + if( !isset($request['nonce']) ) { |
|
| 37 | 37 | glsr_log()->error( 'The AJAX request must include a nonce' )->info( $request ); |
| 38 | 38 | wp_die(); |
| 39 | 39 | } |
| 40 | - if( !wp_verify_nonce( $request['nonce'], $request['action'] )) { |
|
| 40 | + if( !wp_verify_nonce( $request['nonce'], $request['action'] ) ) { |
|
| 41 | 41 | glsr_log()->error( 'Nonce check failed for ajax request' )->info( $request ); |
| 42 | 42 | wp_die( -1, 403 ); |
| 43 | 43 | } |
@@ -53,8 +53,8 @@ discard block |
||
| 53 | 53 | { |
| 54 | 54 | if( is_admin() )return; |
| 55 | 55 | $request = $this->getRequest(); |
| 56 | - if( !$this->isValidPostRequest( $request ))return; |
|
| 57 | - if( !wp_verify_nonce( $request['_wpnonce'], $request['action'] )) { |
|
| 56 | + if( !$this->isValidPostRequest( $request ) )return; |
|
| 57 | + if( !wp_verify_nonce( $request['_wpnonce'], $request['action'] ) ) { |
|
| 58 | 58 | glsr_log()->error( 'Nonce check failed for public request' )->info( $request ); |
| 59 | 59 | return; |
| 60 | 60 | } |
@@ -92,9 +92,9 @@ discard block |
||
| 92 | 92 | { |
| 93 | 93 | foreach( ['request', Application::ID] as $key ) { |
| 94 | 94 | $request = filter_input( INPUT_POST, $key, FILTER_DEFAULT, FILTER_REQUIRE_ARRAY ); |
| 95 | - if( !empty( $request ))break; |
|
| 95 | + if( !empty($request) )break; |
|
| 96 | 96 | } |
| 97 | - if( isset( $request[Application::ID]['action'] )) { |
|
| 97 | + if( isset($request[Application::ID]['action']) ) { |
|
| 98 | 98 | $request = $request[Application::ID]; |
| 99 | 99 | } |
| 100 | 100 | return (array)$request; |
@@ -105,7 +105,7 @@ discard block |
||
| 105 | 105 | */ |
| 106 | 106 | protected function isValidPostRequest( array $request = [] ) |
| 107 | 107 | { |
| 108 | - return !empty( $request['action'] ) && empty( filter_input( INPUT_POST, 'ajax_request' )); |
|
| 108 | + return !empty($request['action']) && empty(filter_input( INPUT_POST, 'ajax_request' )); |
|
| 109 | 109 | } |
| 110 | 110 | |
| 111 | 111 | /** |
@@ -115,10 +115,10 @@ discard block |
||
| 115 | 115 | */ |
| 116 | 116 | protected function routeRequest( $type, $action, array $request = [] ) |
| 117 | 117 | { |
| 118 | - $controller = glsr( glsr( Helper::class )->buildClassName( $type.'-controller', 'Controllers' )); |
|
| 118 | + $controller = glsr( glsr( Helper::class )->buildClassName( $type.'-controller', 'Controllers' ) ); |
|
| 119 | 119 | $method = glsr( Helper::class )->buildMethodName( $action, 'router' ); |
| 120 | 120 | $request = apply_filters( 'site-reviews/route/request', $request, $action, $type ); |
| 121 | - if( is_callable( [$controller, $method] )) { |
|
| 121 | + if( is_callable( [$controller, $method] ) ) { |
|
| 122 | 122 | call_user_func( [$controller, $method], $request ); |
| 123 | 123 | return; |
| 124 | 124 | } |
@@ -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 | } |
@@ -59,7 +59,7 @@ discard block |
||
| 59 | 59 | $this->validateBlacklist(); |
| 60 | 60 | $this->validateAkismet(); |
| 61 | 61 | $this->validateRecaptcha(); |
| 62 | - if( !empty( $this->error )) { |
|
| 62 | + if( !empty($this->error) ) { |
|
| 63 | 63 | $this->setSessionValues( 'message', $this->error ); |
| 64 | 64 | } |
| 65 | 65 | return $this; |
@@ -70,11 +70,11 @@ discard block |
||
| 70 | 70 | */ |
| 71 | 71 | public function validateRequest( array $request ) |
| 72 | 72 | { |
| 73 | - if( !$this->isRequestValid( $request )) { |
|
| 73 | + if( !$this->isRequestValid( $request ) ) { |
|
| 74 | 74 | $this->error = __( 'Please fix the submission errors.', 'site-reviews' ); |
| 75 | 75 | return $request; |
| 76 | 76 | } |
| 77 | - if( empty( $request['title'] )) { |
|
| 77 | + if( empty($request['title']) ) { |
|
| 78 | 78 | $request['title'] = __( 'No Title', 'site-reviews' ); |
| 79 | 79 | } |
| 80 | 80 | return array_merge( glsr( ValidateReviewDefaults::class )->defaults(), $request ); |
@@ -99,10 +99,10 @@ discard block |
||
| 99 | 99 | apply_filters( 'site-reviews/validation/rules', static::VALIDATION_RULES ), |
| 100 | 100 | $this->getOption( 'settings.submissions.required', [] ) |
| 101 | 101 | ); |
| 102 | - $excluded = isset( $request['excluded'] ) |
|
| 102 | + $excluded = isset($request['excluded']) |
|
| 103 | 103 | ? (array)json_decode( $request['excluded'] ) |
| 104 | 104 | : []; |
| 105 | - return array_diff_key( $rules, array_flip( $excluded )); |
|
| 105 | + return array_diff_key( $rules, array_flip( $excluded ) ); |
|
| 106 | 106 | } |
| 107 | 107 | |
| 108 | 108 | /** |
@@ -115,14 +115,14 @@ discard block |
||
| 115 | 115 | return true; |
| 116 | 116 | } |
| 117 | 117 | $recaptchaResponse = filter_input( INPUT_POST, 'g-recaptcha-response' ); // @todo site-reviews[g-recaptcha-response] |
| 118 | - if( empty( $recaptchaResponse )) { |
|
| 118 | + if( empty($recaptchaResponse) ) { |
|
| 119 | 119 | return null; //if response is empty we need to return null |
| 120 | 120 | } |
| 121 | 121 | if( $integration == 'custom' ) { |
| 122 | 122 | return $this->isRecaptchaValid( $recaptchaResponse ); |
| 123 | 123 | } |
| 124 | 124 | if( $integration == 'invisible-recaptcha' ) { |
| 125 | - return boolval( apply_filters( 'google_invre_is_valid_request_filter', true )); |
|
| 125 | + return boolval( apply_filters( 'google_invre_is_valid_request_filter', true ) ); |
|
| 126 | 126 | } |
| 127 | 127 | return false; |
| 128 | 128 | } |
@@ -132,17 +132,17 @@ discard block |
||
| 132 | 132 | */ |
| 133 | 133 | protected function isRecaptchaValid( $recaptchaResponse ) |
| 134 | 134 | { |
| 135 | - $endpoint = add_query_arg([ |
|
| 135 | + $endpoint = add_query_arg( [ |
|
| 136 | 136 | 'remoteip' => glsr( Helper::class )->getIpAddress(), |
| 137 | 137 | 'response' => $recaptchaResponse, |
| 138 | 138 | 'secret' => $this->getOption( 'settings.submissions.recaptcha.secret' ), |
| 139 | 139 | ], 'https://www.google.com/recaptcha/api/siteverify' ); |
| 140 | - if( is_wp_error( $response = wp_remote_get( $endpoint ))) { |
|
| 140 | + if( is_wp_error( $response = wp_remote_get( $endpoint ) ) ) { |
|
| 141 | 141 | glsr_log()->error( $response->get_error_message() ); |
| 142 | 142 | return false; |
| 143 | 143 | } |
| 144 | - $response = json_decode( wp_remote_retrieve_body( $response )); |
|
| 145 | - if( !empty( $response->success )) { |
|
| 144 | + $response = json_decode( wp_remote_retrieve_body( $response ) ); |
|
| 145 | + if( !empty($response->success) ) { |
|
| 146 | 146 | return boolval( $response->success ); |
| 147 | 147 | } |
| 148 | 148 | $errorCodes = [ |
@@ -165,7 +165,7 @@ discard block |
||
| 165 | 165 | { |
| 166 | 166 | $rules = $this->getValidationRules( $request ); |
| 167 | 167 | $errors = glsr( Validator::class )->validate( $request, $rules ); |
| 168 | - if( empty( $errors )) { |
|
| 168 | + if( empty($errors) ) { |
|
| 169 | 169 | return true; |
| 170 | 170 | } |
| 171 | 171 | $this->setSessionValues( 'errors', $errors ); |
@@ -182,7 +182,7 @@ discard block |
||
| 182 | 182 | protected function setSessionValues( $type, $value, $loggedMessage = '' ) |
| 183 | 183 | { |
| 184 | 184 | glsr( Session::class )->set( $this->form_id.$type, $value ); |
| 185 | - if( !empty( $loggedMessage )) { |
|
| 185 | + if( !empty($loggedMessage) ) { |
|
| 186 | 186 | glsr_log()->warning( $loggedMessage ); |
| 187 | 187 | glsr_log()->warning( $this->request ); |
| 188 | 188 | } |
@@ -193,8 +193,8 @@ 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) )return; |
|
| 197 | + if( !glsr( Akismet::class )->isSpam( $this->request ) )return; |
|
| 198 | 198 | $this->setSessionValues( 'errors', [], 'Akismet caught a spam submission:' ); |
| 199 | 199 | $this->error = __( 'Your review cannot be submitted at this time. Please try again later.', 'site-reviews' ); |
| 200 | 200 | } |
@@ -204,8 +204,8 @@ discard block |
||
| 204 | 204 | */ |
| 205 | 205 | protected function validateBlacklist() |
| 206 | 206 | { |
| 207 | - if( !empty( $this->error ))return; |
|
| 208 | - if( !glsr( Blacklist::class )->isBlacklisted( $this->request ))return; |
|
| 207 | + if( !empty($this->error) )return; |
|
| 208 | + if( !glsr( Blacklist::class )->isBlacklisted( $this->request ) )return; |
|
| 209 | 209 | $blacklistAction = $this->getOption( 'settings.submissions.blacklist.action' ); |
| 210 | 210 | if( $blacklistAction == 'reject' ) { |
| 211 | 211 | $this->setSessionValues( 'errors', [], 'Blacklisted submission detected:' ); |
@@ -220,7 +220,7 @@ discard block |
||
| 220 | 220 | */ |
| 221 | 221 | protected function validateCustom() |
| 222 | 222 | { |
| 223 | - if( !empty( $this->error ))return; |
|
| 223 | + if( !empty($this->error) )return; |
|
| 224 | 224 | $validated = apply_filters( 'site-reviews/validate/review/submission', true, $this->request ); |
| 225 | 225 | if( $validated === true )return; |
| 226 | 226 | $this->setSessionValues( 'errors', [] ); |
@@ -235,8 +235,8 @@ discard block |
||
| 235 | 235 | */ |
| 236 | 236 | protected function validateHoneyPot() |
| 237 | 237 | { |
| 238 | - if( !empty( $this->error ))return; |
|
| 239 | - if( empty( $this->request['gotcha'] ))return; |
|
| 238 | + if( !empty($this->error) )return; |
|
| 239 | + if( empty($this->request['gotcha']) )return; |
|
| 240 | 240 | $this->setSessionValues( 'errors', [], 'The Honeypot caught a bad submission:' ); |
| 241 | 241 | $this->error = __( 'The review submission failed. Please notify the site administrator.', 'site-reviews' ); |
| 242 | 242 | } |
@@ -246,9 +246,9 @@ discard block |
||
| 246 | 246 | */ |
| 247 | 247 | protected function validateRecaptcha() |
| 248 | 248 | { |
| 249 | - if( !empty( $this->error ))return; |
|
| 249 | + if( !empty($this->error) )return; |
|
| 250 | 250 | $isValid = $this->isRecaptchaResponseValid(); |
| 251 | - if( is_null( $isValid )) { |
|
| 251 | + if( is_null( $isValid ) ) { |
|
| 252 | 252 | $this->setSessionValues( 'recaptcha', true ); |
| 253 | 253 | $this->recaptchaIsUnset = true; |
| 254 | 254 | } |
@@ -55,7 +55,7 @@ discard block |
||
| 55 | 55 | { |
| 56 | 56 | $instance = new static; |
| 57 | 57 | $instance->setTagFromMethod( $method ); |
| 58 | - call_user_func_array( [$instance, 'normalize'], $args += ['',''] ); |
|
| 58 | + call_user_func_array( [$instance, 'normalize'], $args += ['', ''] ); |
|
| 59 | 59 | $tags = array_merge( static::TAGS_FORM, static::TAGS_SINGLE, static::TAGS_STRUCTURE, static::TAGS_TEXT ); |
| 60 | 60 | $generatedTag = in_array( $instance->tag, $tags ) |
| 61 | 61 | ? $instance->buildTag() |
@@ -78,8 +78,8 @@ discard block |
||
| 78 | 78 | 'render' => 'is_bool', |
| 79 | 79 | 'tag' => 'is_string', |
| 80 | 80 | ]; |
| 81 | - if( !isset( $properties[$property] ) |
|
| 82 | - || empty( array_filter( [$value], $properties[$property] )) |
|
| 81 | + if( !isset($properties[$property]) |
|
| 82 | + || empty(array_filter( [$value], $properties[$property] )) |
|
| 83 | 83 | )return; |
| 84 | 84 | $this->$property = $value; |
| 85 | 85 | } |
@@ -97,7 +97,7 @@ discard block |
||
| 97 | 97 | */ |
| 98 | 98 | public function getOpeningTag() |
| 99 | 99 | { |
| 100 | - $attributes = glsr( Attributes::class )->{$this->tag}( $this->args )->toString(); |
|
| 100 | + $attributes = glsr( Attributes::class )->{$this->tag}($this->args)->toString(); |
|
| 101 | 101 | return '<'.trim( $this->tag.' '.$attributes ).'>'; |
| 102 | 102 | } |
| 103 | 103 | |
@@ -107,7 +107,7 @@ discard block |
||
| 107 | 107 | protected function buildCustomField() |
| 108 | 108 | { |
| 109 | 109 | $className = $this->getCustomFieldClassName(); |
| 110 | - if( class_exists( $className )) { |
|
| 110 | + if( class_exists( $className ) ) { |
|
| 111 | 111 | return (new $className( $this ))->build(); |
| 112 | 112 | } |
| 113 | 113 | glsr_log()->error( 'Field missing: '.$className ); |
@@ -118,7 +118,7 @@ discard block |
||
| 118 | 118 | */ |
| 119 | 119 | protected function buildDefaultTag( $text = '' ) |
| 120 | 120 | { |
| 121 | - if( empty( $text )) { |
|
| 121 | + if( empty($text) ) { |
|
| 122 | 122 | $text = $this->args['text']; |
| 123 | 123 | } |
| 124 | 124 | return $this->getOpeningTag().$text.$this->getClosingTag(); |
@@ -129,7 +129,7 @@ discard block |
||
| 129 | 129 | */ |
| 130 | 130 | protected function buildFieldDescription() |
| 131 | 131 | { |
| 132 | - if( empty( $this->args['description'] ))return; |
|
| 132 | + if( empty($this->args['description']) )return; |
|
| 133 | 133 | if( $this->args['is_widget'] ) { |
| 134 | 134 | return $this->small( $this->args['description'] ); |
| 135 | 135 | } |
@@ -141,13 +141,13 @@ discard block |
||
| 141 | 141 | */ |
| 142 | 142 | protected function buildFormInput() |
| 143 | 143 | { |
| 144 | - if( !in_array( $this->args['type'], ['checkbox', 'radio'] )) { |
|
| 145 | - if( isset( $this->args['multiple'] )) { |
|
| 146 | - $this->args['name'].= '[]'; |
|
| 144 | + if( !in_array( $this->args['type'], ['checkbox', 'radio'] ) ) { |
|
| 145 | + if( isset($this->args['multiple']) ) { |
|
| 146 | + $this->args['name'] .= '[]'; |
|
| 147 | 147 | } |
| 148 | 148 | return $this->buildFormLabel().$this->getOpeningTag(); |
| 149 | 149 | } |
| 150 | - return empty( $this->args['options'] ) |
|
| 150 | + return empty($this->args['options']) |
|
| 151 | 151 | ? $this->buildFormInputChoice() |
| 152 | 152 | : $this->buildFormInputMultiChoice(); |
| 153 | 153 | } |
@@ -157,13 +157,13 @@ discard block |
||
| 157 | 157 | */ |
| 158 | 158 | protected function buildFormInputChoice() |
| 159 | 159 | { |
| 160 | - $labelText = !empty( $this->args['text'] ) |
|
| 160 | + $labelText = !empty($this->args['text']) |
|
| 161 | 161 | ? $this->args['text'] |
| 162 | 162 | : $this->args['label']; |
| 163 | 163 | return $this->label( $this->getOpeningTag().' '.$labelText, [ |
| 164 | 164 | 'class' => 'glsr-'.$this->args['type'].'-label', |
| 165 | 165 | 'for' => $this->args['id'], |
| 166 | - ]); |
|
| 166 | + ] ); |
|
| 167 | 167 | } |
| 168 | 168 | |
| 169 | 169 | /** |
@@ -172,7 +172,7 @@ discard block |
||
| 172 | 172 | protected function buildFormInputMultiChoice() |
| 173 | 173 | { |
| 174 | 174 | if( $this->args['type'] == 'checkbox' ) { |
| 175 | - $this->args['name'].= '[]'; |
|
| 175 | + $this->args['name'] .= '[]'; |
|
| 176 | 176 | } |
| 177 | 177 | $options = array_reduce( array_keys( $this->args['options'] ), function( $carry, $key ) { |
| 178 | 178 | return $carry.$this->li( $this->{$this->args['type']}([ |
@@ -180,12 +180,12 @@ discard block |
||
| 180 | 180 | 'name' => $this->args['name'], |
| 181 | 181 | 'text' => $this->args['options'][$key], |
| 182 | 182 | 'value' => $key, |
| 183 | - ])); |
|
| 183 | + ]) ); |
|
| 184 | 184 | }); |
| 185 | 185 | return $this->ul( $options, [ |
| 186 | 186 | 'class' => $this->args['class'], |
| 187 | 187 | 'id' => $this->args['id'], |
| 188 | - ]); |
|
| 188 | + ] ); |
|
| 189 | 189 | } |
| 190 | 190 | |
| 191 | 191 | /** |
@@ -193,11 +193,11 @@ discard block |
||
| 193 | 193 | */ |
| 194 | 194 | protected function buildFormLabel() |
| 195 | 195 | { |
| 196 | - if( empty( $this->args['label'] ) || $this->args['type'] == 'hidden' )return; |
|
| 197 | - return $this->label([ |
|
| 196 | + if( empty($this->args['label']) || $this->args['type'] == 'hidden' )return; |
|
| 197 | + return $this->label( [ |
|
| 198 | 198 | 'for' => $this->args['id'], |
| 199 | 199 | 'text' => $this->args['label'], |
| 200 | - ]); |
|
| 200 | + ] ); |
|
| 201 | 201 | } |
| 202 | 202 | |
| 203 | 203 | /** |
@@ -214,11 +214,11 @@ discard block |
||
| 214 | 214 | protected function buildFormSelectOptions() |
| 215 | 215 | { |
| 216 | 216 | return array_reduce( array_keys( $this->args['options'] ), function( $carry, $key ) { |
| 217 | - return $carry.$this->option([ |
|
| 217 | + return $carry.$this->option( [ |
|
| 218 | 218 | 'selected' => $this->args['value'] == $key, |
| 219 | 219 | 'text' => $this->args['options'][$key], |
| 220 | 220 | 'value' => $key, |
| 221 | - ]); |
|
| 221 | + ] ); |
|
| 222 | 222 | }); |
| 223 | 223 | } |
| 224 | 224 | |
@@ -236,10 +236,10 @@ discard block |
||
| 236 | 236 | protected function buildTag() |
| 237 | 237 | { |
| 238 | 238 | $this->mergeArgsWithRequiredDefaults(); |
| 239 | - if( in_array( $this->tag, static::TAGS_SINGLE )) { |
|
| 239 | + if( in_array( $this->tag, static::TAGS_SINGLE ) ) { |
|
| 240 | 240 | return $this->getOpeningTag(); |
| 241 | 241 | } |
| 242 | - if( !in_array( $this->tag, static::TAGS_FORM )) { |
|
| 242 | + if( !in_array( $this->tag, static::TAGS_FORM ) ) { |
|
| 243 | 243 | return $this->buildDefaultTag(); |
| 244 | 244 | } |
| 245 | 245 | return call_user_func( [$this, 'buildForm'.ucfirst( $this->tag )] ).$this->buildFieldDescription(); |
@@ -259,7 +259,7 @@ discard block |
||
| 259 | 259 | protected function mergeArgsWithRequiredDefaults() |
| 260 | 260 | { |
| 261 | 261 | $className = $this->getCustomFieldClassName(); |
| 262 | - if( class_exists( $className )) { |
|
| 262 | + if( class_exists( $className ) ) { |
|
| 263 | 263 | $this->args = array_merge( |
| 264 | 264 | wp_parse_args( $this->args, $className::defaults() ), |
| 265 | 265 | $className::required() |
@@ -274,13 +274,13 @@ discard block |
||
| 274 | 274 | */ |
| 275 | 275 | protected function normalize( ...$params ) |
| 276 | 276 | { |
| 277 | - if( is_string( $params[0] ) || is_numeric( $params[0] )) { |
|
| 277 | + if( is_string( $params[0] ) || is_numeric( $params[0] ) ) { |
|
| 278 | 278 | $this->setNameOrTextAttributeForTag( $params[0] ); |
| 279 | 279 | } |
| 280 | - if( is_array( $params[0] )) { |
|
| 280 | + if( is_array( $params[0] ) ) { |
|
| 281 | 281 | $this->args += $params[0]; |
| 282 | 282 | } |
| 283 | - else if( is_array( $params[1] )) { |
|
| 283 | + else if( is_array( $params[1] ) ) { |
|
| 284 | 284 | $this->args += $params[1]; |
| 285 | 285 | } |
| 286 | 286 | } |
@@ -304,7 +304,7 @@ discard block |
||
| 304 | 304 | protected function setTagFromMethod( $method ) |
| 305 | 305 | { |
| 306 | 306 | $this->tag = strtolower( $method ); |
| 307 | - if( in_array( $this->tag, static::INPUT_TYPES )) { |
|
| 307 | + if( in_array( $this->tag, static::INPUT_TYPES ) ) { |
|
| 308 | 308 | $this->args['type'] = $this->tag; |
| 309 | 309 | $this->tag = 'input'; |
| 310 | 310 | } |
@@ -57,7 +57,7 @@ discard block |
||
| 57 | 57 | 'submit_button' => $this->buildSubmitButton(), |
| 58 | 58 | ], |
| 59 | 59 | 'fields' => $this->getFields(), |
| 60 | - ]); |
|
| 60 | + ] ); |
|
| 61 | 61 | } |
| 62 | 62 | |
| 63 | 63 | /** |
@@ -68,7 +68,7 @@ discard block |
||
| 68 | 68 | return glsr( Partial::class )->build( 'form-results', [ |
| 69 | 69 | 'errors' => $this->errors, |
| 70 | 70 | 'message' => $this->message, |
| 71 | - ]); |
|
| 71 | + ] ); |
|
| 72 | 72 | } |
| 73 | 73 | |
| 74 | 74 | /** |
@@ -78,7 +78,7 @@ discard block |
||
| 78 | 78 | { |
| 79 | 79 | return glsr( Builder::class )->button( '<span></span>'.__( 'Submit your review', 'site-reviews' ), [ |
| 80 | 80 | 'type' => 'submit', |
| 81 | - ]); |
|
| 81 | + ] ); |
|
| 82 | 82 | } |
| 83 | 83 | |
| 84 | 84 | /** |
@@ -98,7 +98,7 @@ discard block |
||
| 98 | 98 | $fields = array_merge( |
| 99 | 99 | $this->getHiddenFields(), |
| 100 | 100 | [$this->getHoneypotField()], |
| 101 | - $this->normalizeFields( glsr( Form::class )->getFields( 'submission-form' )) |
|
| 101 | + $this->normalizeFields( glsr( Form::class )->getFields( 'submission-form' ) ) |
|
| 102 | 102 | ); |
| 103 | 103 | // glsr_debug( $fields ); |
| 104 | 104 | return $fields; |
@@ -112,30 +112,30 @@ discard block |
||
| 112 | 112 | $fields = [[ |
| 113 | 113 | 'name' => 'action', |
| 114 | 114 | 'value' => 'submit-review', |
| 115 | - ],[ |
|
| 115 | + ], [ |
|
| 116 | 116 | 'name' => 'assign_to', |
| 117 | 117 | 'value' => $this->args['assign_to'], |
| 118 | - ],[ |
|
| 118 | + ], [ |
|
| 119 | 119 | 'name' => 'category', |
| 120 | 120 | 'value' => $this->args['category'], |
| 121 | - ],[ |
|
| 121 | + ], [ |
|
| 122 | 122 | 'name' => 'excluded', |
| 123 | 123 | 'value' => $this->args['excluded'], // @todo should default to "[]" |
| 124 | - ],[ |
|
| 124 | + ], [ |
|
| 125 | 125 | 'name' => 'form_id', |
| 126 | 126 | 'value' => $this->args['id'], |
| 127 | - ],[ |
|
| 127 | + ], [ |
|
| 128 | 128 | 'name' => 'nonce', |
| 129 | 129 | 'value' => wp_create_nonce( 'submit-review' ), |
| 130 | - ],[ |
|
| 130 | + ], [ |
|
| 131 | 131 | 'id' => 'recaptcha-token', |
| 132 | 132 | 'name' => 'recaptcha-token', |
| 133 | - ],[ |
|
| 133 | + ], [ |
|
| 134 | 134 | 'name' => 'referer', |
| 135 | - 'value' => wp_unslash( filter_input( INPUT_SERVER, 'REQUEST_URI' )), |
|
| 135 | + 'value' => wp_unslash( filter_input( INPUT_SERVER, 'REQUEST_URI' ) ), |
|
| 136 | 136 | ]]; |
| 137 | 137 | return array_map( function( $field ) { |
| 138 | - return new Field( wp_parse_args( $field, ['type' => 'hidden'] )); |
|
| 138 | + return new Field( wp_parse_args( $field, ['type' => 'hidden'] ) ); |
|
| 139 | 139 | }, $fields ); |
| 140 | 140 | } |
| 141 | 141 | |
@@ -144,10 +144,10 @@ discard block |
||
| 144 | 144 | */ |
| 145 | 145 | protected function getHoneypotField() |
| 146 | 146 | { |
| 147 | - return new Field([ |
|
| 147 | + return new Field( [ |
|
| 148 | 148 | 'name' => 'gotcha', |
| 149 | 149 | 'type' => 'honeypot', |
| 150 | - ]); |
|
| 150 | + ] ); |
|
| 151 | 151 | } |
| 152 | 152 | |
| 153 | 153 | /** |
@@ -155,7 +155,7 @@ discard block |
||
| 155 | 155 | */ |
| 156 | 156 | protected function normalizeFieldErrors( Field &$field ) |
| 157 | 157 | { |
| 158 | - if( !array_key_exists( $field->field['path'], $this->errors ))return; |
|
| 158 | + if( !array_key_exists( $field->field['path'], $this->errors ) )return; |
|
| 159 | 159 | $field->field['errors'] = $this->errors[$field->field['path']]; |
| 160 | 160 | } |
| 161 | 161 | |
@@ -164,7 +164,7 @@ discard block |
||
| 164 | 164 | */ |
| 165 | 165 | protected function normalizeFieldRequired( Field &$field ) |
| 166 | 166 | { |
| 167 | - if( !in_array( $field->field['path'], $this->required ))return; |
|
| 167 | + if( !in_array( $field->field['path'], $this->required ) )return; |
|
| 168 | 168 | $field->field['required'] = true; |
| 169 | 169 | } |
| 170 | 170 | |
@@ -186,8 +186,8 @@ discard block |
||
| 186 | 186 | */ |
| 187 | 187 | protected function normalizeFieldValue( Field &$field ) |
| 188 | 188 | { |
| 189 | - if( !array_key_exists( $field->field['path'], $this->values ))return; |
|
| 190 | - if( in_array( $field->field['type'], ['radio', 'checkbox'] )) { |
|
| 189 | + if( !array_key_exists( $field->field['path'], $this->values ) )return; |
|
| 190 | + if( in_array( $field->field['type'], ['radio', 'checkbox'] ) ) { |
|
| 191 | 191 | $field->field['checked'] = $field->field['value'] == $this->values[$field->field['path']]; |
| 192 | 192 | } |
| 193 | 193 | else { |
@@ -22,11 +22,11 @@ discard block |
||
| 22 | 22 | $this->args = $this->normalize( $args ); |
| 23 | 23 | if( $this->args['total'] < 2 )return; |
| 24 | 24 | $links = $this->buildLinksForDeprecatedThemes(); |
| 25 | - if( empty( $links )) { |
|
| 25 | + if( empty($links) ) { |
|
| 26 | 26 | $links = $this->buildLinks(); |
| 27 | 27 | } |
| 28 | 28 | $links = apply_filters( 'site-reviews/reviews/navigation_links', $links, $this->args ); |
| 29 | - if( empty( $links ))return; |
|
| 29 | + if( empty($links) )return; |
|
| 30 | 30 | return $this->buildTemplate( $links ); |
| 31 | 31 | } |
| 32 | 32 | |
@@ -45,7 +45,7 @@ discard block |
||
| 45 | 45 | 'total' => $this->args['total'], |
| 46 | 46 | ]; |
| 47 | 47 | if( is_front_page() ) { |
| 48 | - unset( $paginateArgs['format'] ); |
|
| 48 | + unset($paginateArgs['format']); |
|
| 49 | 49 | } |
| 50 | 50 | return paginate_links( $paginateArgs ); |
| 51 | 51 | } |
@@ -56,17 +56,17 @@ discard block |
||
| 56 | 56 | protected function buildLinksForDeprecatedThemes() |
| 57 | 57 | { |
| 58 | 58 | $theme = wp_get_theme()->get( 'TextDomain' ); |
| 59 | - if( !in_array( $theme, ['twentyten','twentyeleven','twentytwelve','twentythirteen'] ))return; |
|
| 59 | + if( !in_array( $theme, ['twentyten', 'twentyeleven', 'twentytwelve', 'twentythirteen'] ) )return; |
|
| 60 | 60 | $links = ''; |
| 61 | 61 | if( $this->args['paged'] > 1 ) { |
| 62 | - $links.= sprintf( '<div class="nav-previous"><a href="%s"><span class="meta-nav">←</span> %s</a></div>', |
|
| 62 | + $links .= sprintf( '<div class="nav-previous"><a href="%s"><span class="meta-nav">←</span> %s</a></div>', |
|
| 63 | 63 | $this->buildUrlForDeprecatedThemes(-1), |
| 64 | 64 | __( 'Previous', 'site-reviews' ) |
| 65 | 65 | ); |
| 66 | 66 | } |
| 67 | 67 | if( $this->args['paged'] < $this->args['total'] ) { |
| 68 | - $links.= sprintf( '<div class="nav-next"><a href="%s">%s <span class="meta-nav">→</span></a></div>', |
|
| 69 | - $this->buildUrlForDeprecatedThemes(1), |
|
| 68 | + $links .= sprintf( '<div class="nav-next"><a href="%s">%s <span class="meta-nav">→</span></a></div>', |
|
| 69 | + $this->buildUrlForDeprecatedThemes( 1 ), |
|
| 70 | 70 | __( 'Next', 'site-reviews' ) |
| 71 | 71 | ); |
| 72 | 72 | } |
@@ -84,7 +84,7 @@ discard block |
||
| 84 | 84 | $screenReaderTemplate = '<h2 class="screen-reader-text">%2$s</h2>'; |
| 85 | 85 | $screenReaderText = __( 'Site Reviews navigation', 'site-reviews' ); |
| 86 | 86 | $innerTemplate = $screenReaderTemplate.'<div class="nav-links">%3$s</div>'; |
| 87 | - if( in_array( $theme, ['twentyten', 'twentyeleven', 'twentytwelve'] )) { |
|
| 87 | + if( in_array( $theme, ['twentyten', 'twentyeleven', 'twentytwelve'] ) ) { |
|
| 88 | 88 | $innerTemplate = '%3$s'; |
| 89 | 89 | } |
| 90 | 90 | else if( $theme == 'twentyfourteen' ) { |
@@ -96,7 +96,7 @@ discard block |
||
| 96 | 96 | $template = sprintf( $template, $class, $screenReaderText, $links ); |
| 97 | 97 | return glsr( Builder::class )->div( $template.'<div class="glsr-loader"></div>', [ |
| 98 | 98 | 'class' => 'glsr-navigation', |
| 99 | - ]); |
|
| 99 | + ] ); |
|
| 100 | 100 | } |
| 101 | 101 | |
| 102 | 102 | /** |
@@ -119,6 +119,6 @@ discard block |
||
| 119 | 119 | return wp_parse_args( $args, [ |
| 120 | 120 | 'paged' => glsr( QueryBuilder::class )->getPaged(), |
| 121 | 121 | 'total' => 1, |
| 122 | - ]); |
|
| 122 | + ] ); |
|
| 123 | 123 | } |
| 124 | 124 | } |
@@ -24,7 +24,7 @@ discard block |
||
| 24 | 24 | { |
| 25 | 25 | wp_send_json( glsr( Html::class )->renderPartial( 'link', [ |
| 26 | 26 | 'post_id' => $request['ID'], |
| 27 | - ])); |
|
| 27 | + ] ) ); |
|
| 28 | 28 | } |
| 29 | 29 | |
| 30 | 30 | /** |
@@ -32,7 +32,7 @@ discard block |
||
| 32 | 32 | */ |
| 33 | 33 | public function routerChangeReviewStatus( array $request ) |
| 34 | 34 | { |
| 35 | - wp_send_json( $this->execute( new ChangeStatus( $request ))); |
|
| 35 | + wp_send_json( $this->execute( new ChangeStatus( $request ) ) ); |
|
| 36 | 36 | } |
| 37 | 37 | |
| 38 | 38 | /** |
@@ -41,10 +41,10 @@ discard block |
||
| 41 | 41 | public function routerClearLog() |
| 42 | 42 | { |
| 43 | 43 | glsr( AdminController::class )->routerClearLog(); |
| 44 | - wp_send_json([ |
|
| 44 | + wp_send_json( [ |
|
| 45 | 45 | 'logger' => glsr( Logger::class )->get(), |
| 46 | 46 | 'notices' => glsr( Notice::class )->get(), |
| 47 | - ]); |
|
| 47 | + ] ); |
|
| 48 | 48 | } |
| 49 | 49 | |
| 50 | 50 | /** |
@@ -54,9 +54,9 @@ discard block |
||
| 54 | 54 | { |
| 55 | 55 | $shortcode = $request['shortcode']; |
| 56 | 56 | $response = false; |
| 57 | - if( array_key_exists( $shortcode, glsr()->mceShortcodes )) { |
|
| 57 | + if( array_key_exists( $shortcode, glsr()->mceShortcodes ) ) { |
|
| 58 | 58 | $data = glsr()->mceShortcodes[$shortcode]; |
| 59 | - if( !empty( $data['errors'] )) { |
|
| 59 | + if( !empty($data['errors']) ) { |
|
| 60 | 60 | $data['btn_okay'] = [esc_html__( 'Okay', 'site-reviews' )]; |
| 61 | 61 | } |
| 62 | 62 | $response = [ |
@@ -76,10 +76,10 @@ discard block |
||
| 76 | 76 | public function routerSearchPosts( array $request ) |
| 77 | 77 | { |
| 78 | 78 | $results = glsr( Database::class )->searchPosts( $request['search'] ); |
| 79 | - wp_send_json_success([ |
|
| 79 | + wp_send_json_success( [ |
|
| 80 | 80 | 'empty' => '<div>'.__( 'Nothing found.', 'site-reviews' ).'</div>', |
| 81 | 81 | 'items' => $results, |
| 82 | - ]); |
|
| 82 | + ] ); |
|
| 83 | 83 | } |
| 84 | 84 | |
| 85 | 85 | /** |
@@ -87,7 +87,7 @@ discard block |
||
| 87 | 87 | */ |
| 88 | 88 | public function routerSearchTranslations( array $request ) |
| 89 | 89 | { |
| 90 | - if( empty( $request['exclude'] )) { |
|
| 90 | + if( empty($request['exclude']) ) { |
|
| 91 | 91 | $request['exclude'] = []; |
| 92 | 92 | } |
| 93 | 93 | $results = glsr( Translator::class ) |
@@ -95,10 +95,10 @@ discard block |
||
| 95 | 95 | ->exclude() |
| 96 | 96 | ->exclude( $request['exclude'] ) |
| 97 | 97 | ->renderResults(); |
| 98 | - wp_send_json_success([ |
|
| 98 | + wp_send_json_success( [ |
|
| 99 | 99 | 'empty' => '<div>'.__( 'Nothing found.', 'site-reviews' ).'</div>', |
| 100 | 100 | 'items' => $results, |
| 101 | - ]); |
|
| 101 | + ] ); |
|
| 102 | 102 | } |
| 103 | 103 | |
| 104 | 104 | /** |
@@ -107,11 +107,11 @@ discard block |
||
| 107 | 107 | public function routerSubmitReview( array $request ) |
| 108 | 108 | { |
| 109 | 109 | glsr( PublicController::class )->routerSubmitReview( $request ); |
| 110 | - wp_send_json([ |
|
| 110 | + wp_send_json( [ |
|
| 111 | 111 | 'errors' => glsr( Session::class )->get( $request['form_id'].'errors', false, true ), |
| 112 | - 'message' => wpautop( glsr( Session::class )->get( $request['form_id'].'message', '', true )), |
|
| 112 | + 'message' => wpautop( glsr( Session::class )->get( $request['form_id'].'message', '', true ) ), |
|
| 113 | 113 | 'recaptcha' => glsr( Session::class )->get( $request['form_id'].'recaptcha', false, true ), |
| 114 | - ]); |
|
| 114 | + ] ); |
|
| 115 | 115 | } |
| 116 | 116 | |
| 117 | 117 | /** |
@@ -119,10 +119,10 @@ discard block |
||
| 119 | 119 | */ |
| 120 | 120 | public function routerTogglePinned( array $request ) |
| 121 | 121 | { |
| 122 | - $isPinned = $this->execute( new TogglePinned( $request )); |
|
| 123 | - wp_send_json([ |
|
| 122 | + $isPinned = $this->execute( new TogglePinned( $request ) ); |
|
| 123 | + wp_send_json( [ |
|
| 124 | 124 | 'notices' => glsr( Notice::class )->get(), |
| 125 | 125 | 'pinned' => $isPinned, |
| 126 | - ]); |
|
| 126 | + ] ); |
|
| 127 | 127 | } |
| 128 | 128 | } |