@@ -22,7 +22,7 @@ discard block |
||
| 22 | 22 | |
| 23 | 23 | namespace Subway; |
| 24 | 24 | |
| 25 | -if ( ! defined( 'ABSPATH' ) ) { |
|
| 25 | +if ( ! defined('ABSPATH')) { |
|
| 26 | 26 | return; |
| 27 | 27 | } |
| 28 | 28 | |
@@ -55,9 +55,9 @@ discard block |
||
| 55 | 55 | */ |
| 56 | 56 | public function __construct() { |
| 57 | 57 | |
| 58 | - add_action( 'add_meta_boxes', array( $this, 'addMetabox' ) ); |
|
| 59 | - add_action( 'save_post', array( $this, 'saveMetaboxValues' ) ); |
|
| 60 | - add_filter( 'the_content', array( $this, 'showContentToAllowedRoles' ) ); |
|
| 58 | + add_action('add_meta_boxes', array($this, 'addMetabox')); |
|
| 59 | + add_action('save_post', array($this, 'saveMetaboxValues')); |
|
| 60 | + add_filter('the_content', array($this, 'showContentToAllowedRoles')); |
|
| 61 | 61 | |
| 62 | 62 | return $this; |
| 63 | 63 | } |
@@ -85,11 +85,11 @@ discard block |
||
| 85 | 85 | |
| 86 | 86 | $post_types = $this->getPostTypes(); |
| 87 | 87 | |
| 88 | - foreach ( $post_types as $post_type => $value ) { |
|
| 88 | + foreach ($post_types as $post_type => $value) { |
|
| 89 | 89 | add_meta_box( |
| 90 | 90 | 'subway_visibility_metabox', |
| 91 | - esc_html__( 'Subway: Visibility Option', 'subway' ), |
|
| 92 | - array( $this, 'visibilityMetabox' ), |
|
| 91 | + esc_html__('Subway: Visibility Option', 'subway'), |
|
| 92 | + array($this, 'visibilityMetabox'), |
|
| 93 | 93 | $post_type, |
| 94 | 94 | 'side', |
| 95 | 95 | 'high' |
@@ -106,65 +106,65 @@ discard block |
||
| 106 | 106 | * @access public |
| 107 | 107 | * @return void |
| 108 | 108 | */ |
| 109 | - public function visibilityMetabox( $post ) { |
|
| 109 | + public function visibilityMetabox($post) { |
|
| 110 | 110 | |
| 111 | 111 | $howto = __( |
| 112 | 112 | 'Choose the accessibility of this page from the options above.', |
| 113 | 113 | 'subway' |
| 114 | 114 | ); |
| 115 | 115 | |
| 116 | - $private_setting_label = __( 'Members Only', 'subway' ); |
|
| 116 | + $private_setting_label = __('Members Only', 'subway'); |
|
| 117 | 117 | |
| 118 | - $is_post_private = self::isPostPrivate( $post->ID ); |
|
| 118 | + $is_post_private = self::isPostPrivate($post->ID); |
|
| 119 | 119 | |
| 120 | 120 | // Make sure the form request comes from WordPress |
| 121 | - wp_nonce_field( basename( __FILE__ ), 'subway_post_visibility_nonce' ); |
|
| 121 | + wp_nonce_field(basename(__FILE__), 'subway_post_visibility_nonce'); |
|
| 122 | 122 | |
| 123 | 123 | // Disable the options (radio) when site is selected as public |
| 124 | 124 | ?> |
| 125 | 125 | <input type="hidden" name="subway-visibility-form-submitted" value="1" /> |
| 126 | 126 | |
| 127 | - <?php if ( ! Options::isPublicSite() ) : ?> |
|
| 127 | + <?php if ( ! Options::isPublicSite()) : ?> |
|
| 128 | 128 | <?php // Site is private. Give them some Beer! ?> |
| 129 | 129 | <p> |
| 130 | 130 | <label class="subway-visibility-settings-checkbox-label" for="subway-visibility-public"> |
| 131 | - <input type="radio" class="subway-visibility-settings-radio" id="subway-visibility-public" name="subway-visibility-settings" value="public" <?php echo checked( false, $is_post_private, false ); ?>> |
|
| 132 | - <?php esc_html_e( 'Public', 'subway' ) ?> |
|
| 131 | + <input type="radio" class="subway-visibility-settings-radio" id="subway-visibility-public" name="subway-visibility-settings" value="public" <?php echo checked(false, $is_post_private, false); ?>> |
|
| 132 | + <?php esc_html_e('Public', 'subway') ?> |
|
| 133 | 133 | </label> |
| 134 | 134 | </p> |
| 135 | 135 | <p> |
| 136 | 136 | <label class="subway-visibility-settings-checkbox-label" for="subway-visibility-private"> |
| 137 | 137 | <input type="radio" class="subway-visibility-settings-radio" id="subway-visibility-private" name="subway-visibility-settings" |
| 138 | - value="private" <?php echo checked( true, $is_post_private, false ); ?>> |
|
| 139 | - <?php esc_html_e( 'Members Only', 'subway' ) ?> |
|
| 138 | + value="private" <?php echo checked(true, $is_post_private, false); ?>> |
|
| 139 | + <?php esc_html_e('Members Only', 'subway') ?> |
|
| 140 | 140 | </label> |
| 141 | 141 | </p> |
| 142 | 142 | <div id="subway-roles-access-visibility-fields" class="hidden"> |
| 143 | 143 | <dl> |
| 144 | - <?php $post_allowed_user_roles = self::getAllowedUserRoles( $post->ID ); ?> |
|
| 144 | + <?php $post_allowed_user_roles = self::getAllowedUserRoles($post->ID); ?> |
|
| 145 | 145 | <?php $editable_roles = get_editable_roles(); ?> |
| 146 | 146 | <?php // Remove administrator for editable roles. ?> |
| 147 | - <?php unset( $editable_roles['administrator'] ); ?> |
|
| 148 | - <?php foreach ( $editable_roles as $role_name => $role_info ) { ?> |
|
| 147 | + <?php unset($editable_roles['administrator']); ?> |
|
| 148 | + <?php foreach ($editable_roles as $role_name => $role_info) { ?> |
|
| 149 | 149 | <dt> |
| 150 | - <?php $id = 'subway-visibility-settings-user-role-' . esc_html( $role_name ); ?> |
|
| 151 | - <label for="<?php echo esc_attr( $id ); ?>"> |
|
| 152 | - <?php if ( is_array( $post_allowed_user_roles ) && in_array( $role_name, $post_allowed_user_roles ) ) { ?> |
|
| 150 | + <?php $id = 'subway-visibility-settings-user-role-' . esc_html($role_name); ?> |
|
| 151 | + <label for="<?php echo esc_attr($id); ?>"> |
|
| 152 | + <?php if (is_array($post_allowed_user_roles) && in_array($role_name, $post_allowed_user_roles)) { ?> |
|
| 153 | 153 | <?php $checked = 'checked'; ?> |
| 154 | 154 | <?php } else { ?> |
| 155 | - <?php if ( false === $post_allowed_user_roles ) { ?> |
|
| 155 | + <?php if (false === $post_allowed_user_roles) { ?> |
|
| 156 | 156 | <?php $checked = 'checked'; ?> |
| 157 | 157 | <?php } else { ?> |
| 158 | 158 | <?php $checked = ''; ?> |
| 159 | 159 | <?php } ?> |
| 160 | 160 | <?php } ?> |
| 161 | - <input <?php echo esc_attr( $checked ); ?> id="<?php echo esc_attr( $id ); ?>" type="checkbox" |
|
| 162 | - name="subway-visibility-settings-user-role[]" class="subway-visibility-settings-role-access" value="<?php echo esc_attr( $role_name ); ?>" /> |
|
| 163 | - <?php echo esc_html( $role_info['name'] ); ?> |
|
| 161 | + <input <?php echo esc_attr($checked); ?> id="<?php echo esc_attr($id); ?>" type="checkbox" |
|
| 162 | + name="subway-visibility-settings-user-role[]" class="subway-visibility-settings-role-access" value="<?php echo esc_attr($role_name); ?>" /> |
|
| 163 | + <?php echo esc_html($role_info['name']); ?> |
|
| 164 | 164 | </label> |
| 165 | 165 | </dt> |
| 166 | 166 | <?php } ?> |
| 167 | - <p class="howto"><?php echo esc_html_e( 'Uncheck the user roles that you do not want to have access to this content','subway' ); ?></p> |
|
| 167 | + <p class="howto"><?php echo esc_html_e('Uncheck the user roles that you do not want to have access to this content', 'subway'); ?></p> |
|
| 168 | 168 | </dl> |
| 169 | 169 | </div> |
| 170 | 170 | <script> |
@@ -181,11 +181,11 @@ discard block |
||
| 181 | 181 | }); |
| 182 | 182 | }); |
| 183 | 183 | </script> |
| 184 | - <p class="howto"><?php echo esc_html( $howto ); ?></p> |
|
| 184 | + <p class="howto"><?php echo esc_html($howto); ?></p> |
|
| 185 | 185 | <?php else : ?> |
| 186 | 186 | <?php // Site is public! Explain to them ?> |
| 187 | 187 | <p><em> |
| 188 | - <?php esc_html_e( 'You have chosen to make your site public inside Settings > Subway. Subway visibility options will be turned off.', 'subway' ); ?> |
|
| 188 | + <?php esc_html_e('You have chosen to make your site public inside Settings > Subway. Subway visibility options will be turned off.', 'subway'); ?> |
|
| 189 | 189 | </em> |
| 190 | 190 | </p> |
| 191 | 191 | <?php endif; ?> |
@@ -201,15 +201,15 @@ discard block |
||
| 201 | 201 | * @access public |
| 202 | 202 | * @return boolean false Returns false if nonce is not valid. |
| 203 | 203 | */ |
| 204 | - public function saveVisibilityMetabox( $post_id = '' ) { |
|
| 204 | + public function saveVisibilityMetabox($post_id = '') { |
|
| 205 | 205 | |
| 206 | - if ( wp_is_post_autosave( $post_id ) ) { |
|
| 206 | + if (wp_is_post_autosave($post_id)) { |
|
| 207 | 207 | return; |
| 208 | 208 | } |
| 209 | 209 | |
| 210 | - $is_form_submitted = filter_input( INPUT_POST, 'subway-visibility-form-submitted', FILTER_DEFAULT ); |
|
| 210 | + $is_form_submitted = filter_input(INPUT_POST, 'subway-visibility-form-submitted', FILTER_DEFAULT); |
|
| 211 | 211 | |
| 212 | - if ( ! $is_form_submitted ) { |
|
| 212 | + if ( ! $is_form_submitted) { |
|
| 213 | 213 | return; |
| 214 | 214 | } |
| 215 | 215 | |
@@ -224,45 +224,45 @@ discard block |
||
| 224 | 224 | FILTER_SANITIZE_STRING |
| 225 | 225 | ); |
| 226 | 226 | |
| 227 | - $post_visibility = filter_input( INPUT_POST, $visibility_field, FILTER_SANITIZE_STRING ); |
|
| 227 | + $post_visibility = filter_input(INPUT_POST, $visibility_field, FILTER_SANITIZE_STRING); |
|
| 228 | 228 | |
| 229 | - $is_valid_visibility_nonce = self::isNonceValid( $visibility_nonce ); |
|
| 229 | + $is_valid_visibility_nonce = self::isNonceValid($visibility_nonce); |
|
| 230 | 230 | |
| 231 | - $allowed_roles = filter_input( INPUT_POST, 'subway-visibility-settings-user-role', FILTER_DEFAULT, FILTER_REQUIRE_ARRAY ); |
|
| 231 | + $allowed_roles = filter_input(INPUT_POST, 'subway-visibility-settings-user-role', FILTER_DEFAULT, FILTER_REQUIRE_ARRAY); |
|
| 232 | 232 | |
| 233 | 233 | // verify taxonomies meta box nonce |
| 234 | - if ( false === $is_valid_visibility_nonce ) { |
|
| 234 | + if (false === $is_valid_visibility_nonce) { |
|
| 235 | 235 | return; |
| 236 | 236 | } |
| 237 | - if ( empty( $allowed_roles ) ) { |
|
| 237 | + if (empty($allowed_roles)) { |
|
| 238 | 238 | $allowed_roles = array(); |
| 239 | 239 | } |
| 240 | 240 | |
| 241 | 241 | // Update user roles. |
| 242 | - update_post_meta( $post_id, 'subway-visibility-settings-allowed-user-roles', $allowed_roles ); |
|
| 242 | + update_post_meta($post_id, 'subway-visibility-settings-allowed-user-roles', $allowed_roles); |
|
| 243 | 243 | |
| 244 | - if ( ! empty( $post_visibility ) ) { |
|
| 245 | - if ( ! empty( $post_id ) ) { |
|
| 246 | - if ( 'public' === $post_visibility ) { |
|
| 247 | - if ( ! in_array( $post_id, $public_posts ) ) { |
|
| 248 | - array_push( $public_posts, $post_id ); |
|
| 244 | + if ( ! empty($post_visibility)) { |
|
| 245 | + if ( ! empty($post_id)) { |
|
| 246 | + if ('public' === $post_visibility) { |
|
| 247 | + if ( ! in_array($post_id, $public_posts)) { |
|
| 248 | + array_push($public_posts, $post_id); |
|
| 249 | 249 | } |
| 250 | 250 | } |
| 251 | - if ( 'private' === $post_visibility ) { |
|
| 252 | - if ( in_array( $post_id, $public_posts ) ) { |
|
| 253 | - unset( $public_posts[ array_search( $post_id, $public_posts ) ] ); |
|
| 251 | + if ('private' === $post_visibility) { |
|
| 252 | + if (in_array($post_id, $public_posts)) { |
|
| 253 | + unset($public_posts[array_search($post_id, $public_posts)]); |
|
| 254 | 254 | } |
| 255 | 255 | } |
| 256 | 256 | } |
| 257 | 257 | } |
| 258 | 258 | |
| 259 | - if ( ! empty( $post_id ) ) { |
|
| 260 | - $posts_implode = implode( ', ', $public_posts ); |
|
| 259 | + if ( ! empty($post_id)) { |
|
| 260 | + $posts_implode = implode(', ', $public_posts); |
|
| 261 | 261 | |
| 262 | - if ( 'inherit' !== get_post_status( $post_id ) ) { |
|
| 262 | + if ('inherit' !== get_post_status($post_id)) { |
|
| 263 | 263 | |
| 264 | - if ( true === $is_valid_visibility_nonce ) { |
|
| 265 | - update_option( 'subway_public_post', $posts_implode ); |
|
| 264 | + if (true === $is_valid_visibility_nonce) { |
|
| 265 | + update_option('subway_public_post', $posts_implode); |
|
| 266 | 266 | update_post_meta( |
| 267 | 267 | $post_id, |
| 268 | 268 | self::VISIBILITY_METAKEY, |
@@ -282,9 +282,9 @@ discard block |
||
| 282 | 282 | * @access public |
| 283 | 283 | * @return boolean false Returns false if nonce is not valid. |
| 284 | 284 | */ |
| 285 | - public function saveMetaboxValues( $post_id ) { |
|
| 285 | + public function saveMetaboxValues($post_id) { |
|
| 286 | 286 | |
| 287 | - $this->saveVisibilityMetabox( $post_id ); |
|
| 287 | + $this->saveVisibilityMetabox($post_id); |
|
| 288 | 288 | return; |
| 289 | 289 | } |
| 290 | 290 | |
@@ -298,16 +298,16 @@ discard block |
||
| 298 | 298 | * @access public |
| 299 | 299 | * @return void |
| 300 | 300 | */ |
| 301 | - public static function getPostTypes( $args = '', $output = '' ) { |
|
| 301 | + public static function getPostTypes($args = '', $output = '') { |
|
| 302 | 302 | |
| 303 | - if ( empty( $args ) ) { |
|
| 303 | + if (empty($args)) { |
|
| 304 | 304 | $args = array( |
| 305 | 305 | 'public' => true, |
| 306 | 306 | ); |
| 307 | 307 | $output = 'names'; |
| 308 | 308 | } |
| 309 | 309 | |
| 310 | - $post_types = get_post_types( $args, $output ); |
|
| 310 | + $post_types = get_post_types($args, $output); |
|
| 311 | 311 | |
| 312 | 312 | return $post_types; |
| 313 | 313 | } |
@@ -321,9 +321,9 @@ discard block |
||
| 321 | 321 | * @access public |
| 322 | 322 | * @return boolean true Returns true if nonce is valid. |
| 323 | 323 | */ |
| 324 | - public function isNonceValid( $nonce ) { |
|
| 324 | + public function isNonceValid($nonce) { |
|
| 325 | 325 | |
| 326 | - if ( ! isset( $nonce ) || ! wp_verify_nonce( $nonce, basename( __FILE__ ) ) ) { |
|
| 326 | + if ( ! isset($nonce) || ! wp_verify_nonce($nonce, basename(__FILE__))) { |
|
| 327 | 327 | return; |
| 328 | 328 | } |
| 329 | 329 | |
@@ -339,23 +339,23 @@ discard block |
||
| 339 | 339 | * @access public |
| 340 | 340 | * @return boolean true Returns true if post is private. Otherwise false. |
| 341 | 341 | */ |
| 342 | - public static function isPostPrivate( $post_id ) { |
|
| 342 | + public static function isPostPrivate($post_id) { |
|
| 343 | 343 | |
| 344 | 344 | $meta_value = ''; |
| 345 | 345 | |
| 346 | - if ( ! empty( $post_id ) ) { |
|
| 347 | - $meta_value = get_post_meta( $post_id, self::VISIBILITY_METAKEY, true ); |
|
| 346 | + if ( ! empty($post_id)) { |
|
| 347 | + $meta_value = get_post_meta($post_id, self::VISIBILITY_METAKEY, true); |
|
| 348 | 348 | |
| 349 | 349 | // New page or old pages that don't have Subway'\ Visibility Options |
| 350 | - if ( empty( $meta_value ) ) { |
|
| 350 | + if (empty($meta_value)) { |
|
| 351 | 351 | // Get the value from the general settings (Settings > Subway) |
| 352 | 352 | $is_site_public = Options::isPublicSite(); |
| 353 | - if ( ! $is_site_public ) { |
|
| 353 | + if ( ! $is_site_public) { |
|
| 354 | 354 | // It's private. |
| 355 | 355 | return true; |
| 356 | 356 | } |
| 357 | 357 | } |
| 358 | - if ( 'private' === $meta_value ) { |
|
| 358 | + if ('private' === $meta_value) { |
|
| 359 | 359 | return true; |
| 360 | 360 | } |
| 361 | 361 | } |
@@ -372,12 +372,12 @@ discard block |
||
| 372 | 372 | * @access public |
| 373 | 373 | * @return boolean true Returns true if post is public. Otherwise false. |
| 374 | 374 | */ |
| 375 | - public static function isPostPublic( $post_id ) { |
|
| 375 | + public static function isPostPublic($post_id) { |
|
| 376 | 376 | |
| 377 | 377 | $public_post = Options::getPublicPostsIdentifiers(); |
| 378 | 378 | |
| 379 | - if ( ! empty( $post_id ) ) { |
|
| 380 | - if ( ! in_array( $post_id, $public_post, true ) ) { |
|
| 379 | + if ( ! empty($post_id)) { |
|
| 380 | + if ( ! in_array($post_id, $public_post, true)) { |
|
| 381 | 381 | return true; |
| 382 | 382 | } |
| 383 | 383 | } |
@@ -391,17 +391,17 @@ discard block |
||
| 391 | 391 | * @param integer $post_id The post ID. |
| 392 | 392 | * @return mixed Boolean false if metadata does not exists. Otherwise, return the array value of meta. |
| 393 | 393 | */ |
| 394 | - public static function getAllowedUserRoles( $post_id = 0 ) { |
|
| 394 | + public static function getAllowedUserRoles($post_id = 0) { |
|
| 395 | 395 | |
| 396 | 396 | $allowed_roles = array(); |
| 397 | 397 | |
| 398 | - if ( ! empty( $post_id ) ) { |
|
| 398 | + if ( ! empty($post_id)) { |
|
| 399 | 399 | |
| 400 | 400 | // Check if metadata exists for the following post. |
| 401 | - if ( metadata_exists( 'post', $post_id, 'subway-visibility-settings-allowed-user-roles' ) ) { |
|
| 401 | + if (metadata_exists('post', $post_id, 'subway-visibility-settings-allowed-user-roles')) { |
|
| 402 | 402 | |
| 403 | - $allowed_roles = get_post_meta( $post_id, 'subway-visibility-settings-allowed-user-roles', true ); |
|
| 404 | - if ( ! is_null( $allowed_roles ) ) { |
|
| 403 | + $allowed_roles = get_post_meta($post_id, 'subway-visibility-settings-allowed-user-roles', true); |
|
| 404 | + if ( ! is_null($allowed_roles)) { |
|
| 405 | 405 | return $allowed_roles; |
| 406 | 406 | } |
| 407 | 407 | return false; |
@@ -423,28 +423,28 @@ discard block |
||
| 423 | 423 | * @param string $content The content of the post. |
| 424 | 424 | * @return string The content of the post. |
| 425 | 425 | */ |
| 426 | - public function showContentToAllowedRoles( $content ) { |
|
| 426 | + public function showContentToAllowedRoles($content) { |
|
| 427 | 427 | |
| 428 | 428 | $post_id = get_the_ID(); |
| 429 | - $allowed_user_roles = self::getAllowedUserRoles( $post_id ); |
|
| 429 | + $allowed_user_roles = self::getAllowedUserRoles($post_id); |
|
| 430 | 430 | |
| 431 | - if ( ! is_singular() && is_main_query() ) { |
|
| 431 | + if ( ! is_singular() && is_main_query()) { |
|
| 432 | 432 | return $content; |
| 433 | 433 | } |
| 434 | 434 | |
| 435 | - if ( is_user_logged_in() ) { |
|
| 435 | + if (is_user_logged_in()) { |
|
| 436 | 436 | |
| 437 | - $no_privilege = '<div class="subway-role-not-allowed"><p>' . apply_filters( 'subway-content-restricted-to-role', esc_html__( 'You do not have the right privilege or role to view this page.', 'subway' ) ) . '</p></div>'; |
|
| 437 | + $no_privilege = '<div class="subway-role-not-allowed"><p>' . apply_filters('subway-content-restricted-to-role', esc_html__('You do not have the right privilege or role to view this page.', 'subway')) . '</p></div>'; |
|
| 438 | 438 | |
| 439 | 439 | // Restrict access to non admins only. |
| 440 | - if ( ! current_user_can( 'manage_options' ) ) { |
|
| 441 | - if ( ! self::currentUserCanViewPage( $post_id ) ) { |
|
| 440 | + if ( ! current_user_can('manage_options')) { |
|
| 441 | + if ( ! self::currentUserCanViewPage($post_id)) { |
|
| 442 | 442 | return $no_privilege; |
| 443 | 443 | } |
| 444 | 444 | } |
| 445 | 445 | |
| 446 | 446 | // Return the content if the post is not yet saved. |
| 447 | - if ( false === $allowed_user_roles ) { |
|
| 447 | + if (false === $allowed_user_roles) { |
|
| 448 | 448 | return $content; |
| 449 | 449 | } |
| 450 | 450 | } |
@@ -458,30 +458,30 @@ discard block |
||
| 458 | 458 | * |
| 459 | 459 | * @return boolean True on success. Otherwise, false. |
| 460 | 460 | */ |
| 461 | - public function currentUserCanViewPage( $post_id = 0 ) { |
|
| 461 | + public function currentUserCanViewPage($post_id = 0) { |
|
| 462 | 462 | |
| 463 | - $allowed_roles = self::getAllowedUserRoles( $post_id ); |
|
| 463 | + $allowed_roles = self::getAllowedUserRoles($post_id); |
|
| 464 | 464 | |
| 465 | 465 | // if $allowed_roles is not set, it means meta data is not yet available. |
| 466 | 466 | // Post roles are checked but are not yet save. So allow viewing. |
| 467 | - if ( ! $allowed_roles ) { |
|
| 467 | + if ( ! $allowed_roles) { |
|
| 468 | 468 | return true; |
| 469 | 469 | } |
| 470 | 470 | |
| 471 | 471 | // Only check for logged-in users. |
| 472 | - if ( is_user_logged_in() ) { |
|
| 472 | + if (is_user_logged_in()) { |
|
| 473 | 473 | |
| 474 | 474 | $can_view = false; |
| 475 | 475 | |
| 476 | 476 | $user = wp_get_current_user(); |
| 477 | 477 | |
| 478 | - if ( ! is_array( $user->roles ) ) { |
|
| 478 | + if ( ! is_array($user->roles)) { |
|
| 479 | 479 | $user->roles = (array) $user->roles; |
| 480 | 480 | } |
| 481 | 481 | |
| 482 | - if ( ! empty( $user->roles ) && is_array( $user->roles ) ) { |
|
| 483 | - foreach( $user->roles as $current_user_role ) { |
|
| 484 | - if ( in_array( $current_user_role, $allowed_roles ) ) { |
|
| 482 | + if ( ! empty($user->roles) && is_array($user->roles)) { |
|
| 483 | + foreach ($user->roles as $current_user_role) { |
|
| 484 | + if (in_array($current_user_role, $allowed_roles)) { |
|
| 485 | 485 | $can_view = true; |
| 486 | 486 | } |
| 487 | 487 | } |