Skip to:
Content

bbPress.org

Ticket #1818: bbpress-multisite-favorites-and-subscriptions.diff

File bbpress-multisite-favorites-and-subscriptions.diff, 5.2 KB (added by isaacchapman, 9 years ago)

bbPress Multisite favorites and subscriptions

  • bbp-includes/bbp-user-functions.php

     
    232232        global $wpdb;
    233233
    234234        // Get the users who have favorited the topic
    235         $users = $wpdb->get_col( "SELECT user_id FROM {$wpdb->usermeta} WHERE meta_key = '_bbp_favorites' and FIND_IN_SET('{$topic_id}', meta_value) > 0" );
     235        $users = $wpdb->get_col( "SELECT user_id FROM {$wpdb->usermeta} WHERE meta_key = '_bbp_" . $wpdb->prefix . "favorites' and FIND_IN_SET('{$topic_id}', meta_value) > 0" );
    236236        $users = apply_filters( 'bbp_get_topic_favoriters', $users, $topic_id );
    237237
    238238        if ( !empty( $users ) )
     
    288288                if ( empty( $user_id ) )
    289289                        return false;
    290290
    291                 $favorites = (string) get_user_meta( $user_id, '_bbp_favorites', true );
     291                global $wpdb;
     292
     293                $favorites = (string) get_user_meta( $user_id, '_bbp_' . $wpdb->prefix . 'favorites', true );
    292294                $favorites = (array) explode( ',', $favorites );
    293295                $favorites = array_filter( $favorites );
    294296
     
    369371                $favorites[] = $topic_id;
    370372                $favorites   = array_filter( $favorites );
    371373                $favorites   = (string) implode( ',', $favorites );
    372                 update_user_meta( $user_id, '_bbp_favorites', $favorites );
     374               
     375                global $wpdb;
     376               
     377                update_user_meta( $user_id, '_bbp_' . $wpdb->prefix . 'favorites', $favorites );
    373378        }
    374379
    375380        do_action( 'bbp_add_user_favorite', $user_id, $topic_id );
     
    404409                array_splice( $favorites, $pos, 1 );
    405410                $favorites = array_filter( $favorites );
    406411
     412                global $wpdb;
     413
    407414                if ( !empty( $favorites ) ) {
    408415                        $favorites = implode( ',', $favorites );
    409                         update_user_meta( $user_id, '_bbp_favorites', $favorites );
     416                        update_user_meta( $user_id, '_bbp_' . $wpdb->prefix . 'favorites', $favorites );
    410417                } else {
    411                         delete_user_meta( $user_id, '_bbp_favorites' );
     418                        delete_user_meta( $user_id, '_bbp_' . $wpdb->prefix . 'favorites' );
    412419                }
    413420        }
    414421
     
    535542
    536543        $users = wp_cache_get( 'bbp_get_topic_subscribers_' . $topic_id, 'bbpress' );
    537544        if ( empty( $users ) ) {
    538                 $users = $wpdb->get_col( "SELECT user_id FROM {$wpdb->usermeta} WHERE meta_key = '_bbp_subscriptions' and FIND_IN_SET('{$topic_id}', meta_value) > 0" );
     545                $users = $wpdb->get_col( "SELECT user_id FROM {$wpdb->usermeta} WHERE meta_key = '_bbp_" . $wpdb->prefix . "subscriptions' and FIND_IN_SET('{$topic_id}', meta_value) > 0" );
    539546                wp_cache_set( 'bbp_get_topic_subscribers_' . $topic_id, $users, 'bbpress' );
    540547        }
    541548
     
    593600        if ( empty( $user_id ) )
    594601                return false;
    595602
    596         $subscriptions = (string) get_user_meta( $user_id, '_bbp_subscriptions', true );
     603        global $wpdb;
     604
     605        $subscriptions = (string) get_user_meta( $user_id, '_bbp_' . $wpdb->prefix . 'subscriptions', true );
    597606        $subscriptions = (array) explode( ',', $subscriptions );
    598607        $subscriptions = array_filter( $subscriptions );
    599608
     
    677686                $subscriptions[] = $topic_id;
    678687                $subscriptions   = array_filter( $subscriptions );
    679688                $subscriptions   = (string) implode( ',', $subscriptions );
    680                 update_user_meta( $user_id, '_bbp_subscriptions', $subscriptions );
     689               
     690                global $wpdb;
     691               
     692                update_user_meta( $user_id, '_bbp_' . $wpdb->prefix . 'subscriptions', $subscriptions );
    681693
    682694                wp_cache_delete( 'bbp_get_topic_subscribers_' . $topic_id, 'bbpress' );
    683695        }
     
    716728                array_splice( $subscriptions, $pos, 1 );
    717729                $subscriptions = array_filter( $subscriptions );
    718730
     731                global $wpdb;
     732
    719733                if ( !empty( $subscriptions ) ) {
    720734                        $subscriptions = implode( ',', $subscriptions );
    721                         update_user_meta( $user_id, '_bbp_subscriptions', $subscriptions );
     735                        update_user_meta( $user_id, '_bbp_' . $wpdb->prefix . 'subscriptions', $subscriptions );
    722736                } else {
    723                         delete_user_meta( $user_id, '_bbp_subscriptions' );
     737                        delete_user_meta( $user_id, '_bbp_' . $wpdb->prefix . 'subscriptions' );
    724738                }
    725739
    726740                wp_cache_delete( 'bbp_get_topic_subscribers_' . $topic_id, 'bbpress' );
  • bbp-admin/bbp-tools.php

     
    723723        $statement = __( 'Removing trashed topics from user favorites… %s', 'bbpress' );
    724724        $result    = __( 'Failed!', 'bbpress' );
    725725
    726         $users = $wpdb->get_results( "SELECT `user_id`, `meta_value` AS `favorites` FROM `$wpdb->usermeta` WHERE `meta_key` = '_bbp_favorites';" );
     726        $users = $wpdb->get_results( "SELECT `user_id`, `meta_value` AS `favorites` FROM `$wpdb->usermeta` WHERE `meta_key` = '_bbp_" . $wpdb->prefix . "favorites';" );
    727727        if ( is_wp_error( $users ) )
    728728                return array( 1, sprintf( $statement, $result ) );
    729729
     
    742742                        continue;
    743743
    744744                $favorites = join( ',', $favorites );
    745                 $values[] = "('$user->user_id', '_bbp_favorites', '$favorites')";
     745                $values[] = "('$user->user_id', '_bbp_" . $wpdb->prefix . "favorites', '$favorites')";
    746746        }
    747747
    748748        if ( !count( $values ) ) {
     
    750750                return array( 0, sprintf( $statement, $result ) );
    751751        }
    752752
    753         $sql_delete = "DELETE FROM `$wpdb->usermeta` WHERE `meta_key` = '_bbp_favorites';";
     753        $sql_delete = "DELETE FROM `$wpdb->usermeta` WHERE `meta_key` = '_bbp_" . $wpdb->prefix . "favorites';";
    754754        if ( is_wp_error( $wpdb->query( $sql_delete ) ) )
    755755                return array( 4, sprintf( $statement, $result ) );
    756756