Skip to content

Commit

Permalink
Merge pull request #98 from dparker1005/php-warnings-getmembershiplev…
Browse files Browse the repository at this point in the history
…elsforuser

Avoiding PHP warnings when user logged out
  • Loading branch information
dparker1005 committed Aug 30, 2023
2 parents d61496e + d04b4fc commit 2fccd9a
Showing 1 changed file with 17 additions and 6 deletions.
23 changes: 17 additions & 6 deletions pmpro-pay-by-check.php
Original file line number Diff line number Diff line change
Expand Up @@ -505,9 +505,11 @@ function pmpropbc_isMemberPending($user_id, $level_id = 0)
if ( empty( $level_id ) ) {
$is_pending = false;
$levels = pmpro_getMembershipLevelsForUser( $user_id );
foreach ( $levels as $level ) {
if ( pmpropbc_isMemberPending( $user_id, $level->id ) ) {
$is_pending = true;
if ( ! empty( $levels) ) {
foreach ( $levels as $level ) {
if ( pmpropbc_isMemberPending( $user_id, $level->id ) ) {
$is_pending = true;
}
}
}
$pmpropbc_pending_member_cache[$user_id][$level_id] = $is_pending;
Expand Down Expand Up @@ -566,15 +568,20 @@ function pmpropbc_isMemberPending($user_id, $level_id = 0)
* @return bool If user has access to content or not.
*/
function pmprobpc_memberHasAccessWithAnyLevel( $user_id, $content_levels = null ) {
$user_levels = wp_list_pluck( pmpro_getMembershipLevelsForUser( $user_id ), 'id' );
$user_levels = pmpro_getMembershipLevelsForUser( $user_id );
if ( empty( $user_levels ) ) {
return false;
}

$user_level_ids = wp_list_pluck( $user_levels, 'id' );
if ( empty( $content_levels ) ) {
// Check all user levels.
$content_levels = $user_levels;
$content_levels = $user_level_ids;
}

// Loop through all content levels.
foreach ( $content_levels as $content_level ) {
if ( in_array( $content_level, $user_levels ) && ! pmpropbc_isMemberPending( $user_id, $content_level ) ) {
if ( in_array( $content_level, $user_level_ids ) && ! pmpropbc_isMemberPending( $user_id, $content_level ) ) {
return true;
}
}
Expand Down Expand Up @@ -644,6 +651,10 @@ function pmpropbc_pmpro_member_shortcode_access( $hasaccess, $content, $levels,
*/
function pmpropbc_pmpro_account_bullets_bottom() {
$user_levels = pmpro_getMembershipLevelsForUser( get_current_user_id() );
if ( empty( $user_levels ) ) {
return;
}

foreach ( $user_levels as $level ) {
// Get the last order for this level.
$order = new MemberOrder();
Expand Down

0 comments on commit 2fccd9a

Please sign in to comment.