Skip to:
Content

bbPress.org

Ticket #2089: 2089.1.diff

File 2089.1.diff, 15.6 KB (added by netweb, 9 years ago)
  • bbPress/admin/converters/BuddyPress.php

    diff --git a/bbPress/admin/converters/BuddyPress.php b/bbPress/admin/converters/BuddyPress.php
    index d54481c..580a2b4 100644
    a b  
    11<?php
    22
    33/**
    4  * bbPress 1.1 Converter
     4 * BuddyPress Group Forums (bbPress 1.1) Converter
     5 * - Default WordPress Install with shared database tables
     6 * -  BuddyPress 1.6x   _bp_*
     7 * -  bbPress 1.x               _bb_*
     8 *
    59 *
    6  * @since bbPress (rxxxx)
     10 * @since bbPress (r4564)
    711 */
    8 class bbPress1 extends BBP_Converter_Base {
     12class BuddyPress extends BBP_Converter_Base {
    913
    1014        /**
    1115         * Main constructor
    class bbPress1 extends BBP_Converter_Base { 
    2630
    2731                // Forum id (Stored in postmeta)
    2832                $this->field_map[] = array(
    29                         'from_tablename' => 'forums',
     33                        'from_tablename' => 'bb_forums',
    3034                        'from_fieldname' => 'forum_id',
    3135                        'to_type'        => 'forum',
    3236                        'to_fieldname'   => '_bbp_forum_id'
    class bbPress1 extends BBP_Converter_Base { 
    3438
    3539                // Forum parent id (If no parent, 0. Stored in postmeta)
    3640                $this->field_map[] = array(
    37                         'from_tablename' => 'forums',
     41                        'from_tablename' => 'bb_forums',
    3842                        'from_fieldname' => 'forum_parent',
    3943                        'to_type'        => 'forum',
    4044                        'to_fieldname'   => '_bbp_forum_parent_id'
    class bbPress1 extends BBP_Converter_Base { 
    4246
    4347                // Forum topic count (Stored in postmeta)
    4448                $this->field_map[] = array(
    45                         'from_tablename' => 'forums',
     49                        'from_tablename' => 'bb_forums',
    4650                        'from_fieldname' => 'topics',
    4751                        'to_type'        => 'forum',
    4852                        'to_fieldname'   => '_bbp_topic_count'
    class bbPress1 extends BBP_Converter_Base { 
    5054
    5155                // Forum reply count (Stored in postmeta)
    5256                $this->field_map[] = array(
    53                         'from_tablename' => 'forums',
     57                        'from_tablename' => 'bb_forums',
    5458                        'from_fieldname' => 'posts',
    5559                        'to_type'        => 'forum',
    5660                        'to_fieldname'   => '_bbp_reply_count'
    class bbPress1 extends BBP_Converter_Base { 
    5862
    5963                // Forum topic count (Stored in postmeta)
    6064                $this->field_map[] = array(
    61                         'from_tablename' => 'forums',
     65                        'from_tablename' => 'bb_forums',
    6266                        'from_fieldname' => 'topics',
    6367                        'to_type'        => 'forum',
    6468                        'to_fieldname'   => '_bbp_total_topic_count'
    class bbPress1 extends BBP_Converter_Base { 
    6670
    6771                // Forum reply count (Stored in postmeta)
    6872                $this->field_map[] = array(
    69                         'from_tablename' => 'forums',
     73                        'from_tablename' => 'bb_forums',
    7074                        'from_fieldname' => 'posts',
    7175                        'to_type'        => 'forum',
    7276                        'to_fieldname'   => '_bbp_total_reply_count'
    class bbPress1 extends BBP_Converter_Base { 
    7478
    7579                // Forum title.
    7680                $this->field_map[] = array(
    77                         'from_tablename' => 'forums',
     81                        'from_tablename' => 'bb_forums',
    7882                        'from_fieldname' => 'forum_name',
    7983                        'to_type'        => 'forum',
    8084                        'to_fieldname'   => 'post_title'
    class bbPress1 extends BBP_Converter_Base { 
    8286
    8387                // Forum slug (Clean name to avoid confilcts)
    8488                $this->field_map[] = array(
    85                         'from_tablename'   => 'forums',
     89                        'from_tablename'   => 'bb_forums',
    8690                        'from_fieldname'   => 'forum_slug',
    8791                        'to_type'          => 'forum',
    8892                        'to_fieldname'     => 'post_name',
    class bbPress1 extends BBP_Converter_Base { 
    9195
    9296                // Forum description.
    9397                $this->field_map[] = array(
    94                         'from_tablename'   => 'forums',
     98                        'from_tablename'   => 'bb_forums',
    9599                        'from_fieldname'   => 'forum_desc',
    96100                        'to_type'          => 'forum',
    97101                        'to_fieldname'     => 'post_content',
    class bbPress1 extends BBP_Converter_Base { 
    100104
    101105                // Forum display order (Starts from 1)
    102106                $this->field_map[] = array(
    103                         'from_tablename' => 'forums',
     107                        'from_tablename' => 'bb_forums',
    104108                        'from_fieldname' => 'forum_order',
    105109                        'to_type'        => 'forum',
    106110                        'to_fieldname'   => 'menu_order'
    107111                );
    108112
     113                // Forum visibily
     114                // Note: Join BuddyPress Group Status (*_bp_groups.id) with bbPress (*_bb_forums.forum_id) to determine visibilty.
     115                $this->field_map[] = array(
     116                        'from_tablename'  => 'bp_groups',
     117                        'from_fieldname'  => 'status',
     118                        'join_tablename'  => 'bp_groups_groupmeta',
     119                        'join_type'       => 'INNER',
     120                        'join_expression' => 'USING (something) WHERE this = that',
     121                        'to_type'         => 'forum',
     122                        'to_fieldname'    => 'post_status',
     123                        'callback_method' => 'callback_null'
     124                );
     125
    109126                // Forum dates.
    110127                $this->field_map[] = array(
    111128                        'to_type'      => 'forum',
    class bbPress1 extends BBP_Converter_Base { 
    132149
    133150                // Topic id (Stored in postmeta)
    134151                $this->field_map[] = array(
    135                         'from_tablename' => 'topics',
     152                        'from_tablename' => 'bb_topics',
    136153                        'from_fieldname' => 'topic_id',
    137154                        'to_type'        => 'topic',
    138155                        'to_fieldname'   => '_bbp_topic_id'
    class bbPress1 extends BBP_Converter_Base { 
    140157
    141158                // Reply count (Stored in postmeta)
    142159                $this->field_map[] = array(
    143                         'from_tablename'  => 'topics',
     160                        'from_tablename'  => 'bb_topics',
    144161                        'from_fieldname'  => 'topic_posts',
    145162                        'to_type'         => 'topic',
    146163                        'to_fieldname'    => '_bbp_reply_count',
    class bbPress1 extends BBP_Converter_Base { 
    149166
    150167                // Forum id (Stored in postmeta)
    151168                $this->field_map[] = array(
    152                         'from_tablename'  => 'topics',
     169                        'from_tablename'  => 'bb_topics',
    153170                        'from_fieldname'  => 'forum_id',
    154171                        'to_type'         => 'topic',
    155172                        'to_fieldname'    => '_bbp_forum_id',
    class bbPress1 extends BBP_Converter_Base { 
    158175
    159176                // Topic author.
    160177                $this->field_map[] = array(
    161                         'from_tablename'  => 'topics',
     178                        'from_tablename'  => 'bb_topics',
    162179                        'from_fieldname'  => 'topic_poster',
    163180                        'to_type'         => 'topic',
    164181                        'to_fieldname'    => 'post_author',
    class bbPress1 extends BBP_Converter_Base { 
    167184
    168185                // Topic title.
    169186                $this->field_map[] = array(
    170                         'from_tablename' => 'topics',
     187                        'from_tablename' => 'bb_topics',
    171188                        'from_fieldname' => 'topic_title',
    172189                        'to_type'        => 'topic',
    173190                        'to_fieldname'   => 'post_title'
    class bbPress1 extends BBP_Converter_Base { 
    175192
    176193                // Topic slug (Clean name to avoid conflicts)
    177194                $this->field_map[] = array(
    178                         'from_tablename'  => 'topics',
     195                        'from_tablename'  => 'bb_topics',
    179196                        'from_fieldname'  => 'topic_title',
    180197                        'to_type'         => 'topic',
    181198                        'to_fieldname'    => 'post_name',
    class bbPress1 extends BBP_Converter_Base { 
    185202                // Topic content.
    186203                // Note: We join the posts table because topics do not have content.
    187204                $this->field_map[] = array(
    188                         'from_tablename'  => 'posts',
     205                        'from_tablename'  => 'bb_posts',
    189206                        'from_fieldname'  => 'post_text',
    190                         'join_tablename'  => 'topics',
     207                        'join_tablename'  => 'bb_topics',
    191208                        'join_type'       => 'INNER',
    192                         'join_expression' => 'USING (topic_id) WHERE posts.post_position IN (0,1)',
     209                        'join_expression' => 'USING (topic_id) WHERE bb_posts.post_position IN (0,1)',
    193210                        'to_type'         => 'topic',
    194211                        'to_fieldname'    => 'post_content',
    195212                        'callback_method' => 'callback_html'
    class bbPress1 extends BBP_Converter_Base { 
    198215                // Topic status.
    199216                // Note: post_status is more accurate than topic_status
    200217                $this->field_map[] = array(
    201                         'from_tablename'  => 'posts',
     218                        'from_tablename'  => 'bb_posts',
    202219                        'from_fieldname'  => 'post_status',
    203                         'join_tablename'  => 'topics',
     220                        'join_tablename'  => 'bb_topics',
    204221                        'join_type'       => 'INNER',
    205                         'join_expression' => 'USING (topic_id) WHERE posts.post_position IN (0,1)',
     222                        'join_expression' => 'USING (topic_id) WHERE bb_posts.post_position IN (0,1)',
    206223                        'to_type'         => 'topic',
    207224                        'to_fieldname'    => 'post_status',
    208225                        'callback_method' => 'callback_status'
    class bbPress1 extends BBP_Converter_Base { 
    210227
    211228                // Author ip.
    212229                $this->field_map[] = array(
    213                         'from_tablename'  => 'posts',
     230                        'from_tablename'  => 'bb_posts',
    214231                        'from_fieldname'  => 'poster_ip',
    215                         'join_tablename'  => 'topics',
     232                        'join_tablename'  => 'bb_topics',
    216233                        'join_type'       => 'INNER',
    217                         'join_expression' => 'USING (topic_id) WHERE posts.post_position IN (0,1)',
     234                        'join_expression' => 'USING (topic_id) WHERE bb_posts.post_position IN (0,1)',
    218235                        'to_type'         => 'topic',
    219236                        'to_fieldname'    => '_bbp_author_ip'
    220237                );
    221238
    222239                // Forum id (If no parent, 0)
    223240                $this->field_map[] = array(
    224                         'from_tablename'  => 'topics',
     241                        'from_tablename'  => 'bb_topics',
    225242                        'from_fieldname'  => 'forum_id',
    226243                        'to_type'         => 'topic',
    227244                        'to_fieldname'    => 'post_parent',
    class bbPress1 extends BBP_Converter_Base { 
    230247
    231248                // Topic dates.
    232249                $this->field_map[] = array(
    233                         'from_tablename' => 'topics',
     250                        'from_tablename' => 'bb_topics',
    234251                        'from_fieldname' => 'topic_start_time',
    235252                        'to_type'        => 'topic',
    236253                        'to_fieldname'   => 'post_date'
    237254                );
    238255                $this->field_map[] = array(
    239                         'from_tablename' => 'topics',
     256                        'from_tablename' => 'bb_topics',
    240257                        'from_fieldname' => 'topic_start_time',
    241258                        'to_type'        => 'topic',
    242259                        'to_fieldname'   => 'post_date_gmt'
    243260                );
    244261                $this->field_map[] = array(
    245                         'from_tablename' => 'topics',
     262                        'from_tablename' => 'bb_topics',
    246263                        'from_fieldname' => 'topic_time',
    247264                        'to_type'        => 'topic',
    248265                        'to_fieldname'   => 'post_modified'
    249266                );
    250267                $this->field_map[] = array(
    251                         'from_tablename' => 'topics',
     268                        'from_tablename' => 'bb_topics',
    252269                        'from_fieldname' => 'topic_time',
    253270                        'to_type'        => 'topic',
    254271                        'to_fieldname'   => 'post_modified_gmt'
    255272                );
    256273                $this->field_map[] = array(
    257                         'from_tablename' => 'topics',
     274                        'from_tablename' => 'bb_topics',
    258275                        'from_fieldname' => 'topic_time',
    259276                        'to_type'        => 'topic',
    260277                        'to_fieldname'   => '_bbp_last_active_time'
    class bbPress1 extends BBP_Converter_Base { 
    264281
    265282                // Topic id.
    266283                $this->field_map[] = array(
    267                         'from_tablename'  => 'term_relationships',
     284                        'from_tablename'  => 'bb_term_relationships',
    268285                        'from_fieldname'  => 'object_id',
    269286                        'to_type'         => 'tags',
    270287                        'to_fieldname'    => 'objectid',
    class bbPress1 extends BBP_Converter_Base { 
    273290
    274291                // Taxonomy ID.
    275292                $this->field_map[] = array(
    276                         'from_tablename'  => 'term_taxonomy',
     293                        'from_tablename'  => 'bb_term_taxonomy',
    277294                        'from_fieldname'  => 'term_taxonomy_id',
    278                         'join_tablename'  => 'term_relationships',
     295                        'join_tablename'  => 'bb_term_relationships',
    279296                        'join_type'       => 'INNER',
    280297                        'join_expression' => 'USING (term_taxonomy_id)',
    281298                        'to_type'         => 'tags',
    class bbPress1 extends BBP_Converter_Base { 
    284301
    285302                // Term text.
    286303                $this->field_map[] = array(
    287                         'from_tablename'  => 'terms',
     304                        'from_tablename'  => 'bb_terms',
    288305                        'from_fieldname'  => 'name',
    289                         'join_tablename'  => 'term_taxonomy',
     306                        'join_tablename'  => 'bb_term_taxonomy',
    290307                        'join_type'       => 'INNER',
    291308                        'join_expression' => 'USING (term_id)',
    292309                        'to_type'         => 'tags',
    class bbPress1 extends BBP_Converter_Base { 
    297314
    298315                // Post id. Stores in postmeta.
    299316                $this->field_map[] = array(
    300                         'from_tablename'  => 'posts',
     317                        'from_tablename'  => 'bb_posts',
    301318                        'from_fieldname'  => 'post_id',
    302319                        'to_type'         => 'reply',
    303320                        'to_fieldname'    => '_bbp_post_id'
    class bbPress1 extends BBP_Converter_Base { 
    305322
    306323                // Topic id (Stores in postmeta)
    307324                $this->field_map[] = array(
    308                         'from_tablename'  => 'posts',
     325                        'from_tablename'  => 'bb_posts',
    309326                        'from_fieldname'  => 'topic_id',
    310327                        'to_type'         => 'reply',
    311328                        'to_fieldname'    => '_bbp_topic_id',
    class bbPress1 extends BBP_Converter_Base { 
    314331
    315332                // Forum id (Stored in postmeta)
    316333                $this->field_map[] = array(
    317                         'from_tablename'  => 'posts',
     334                        'from_tablename'  => 'bb_posts',
    318335                        'from_fieldname'  => 'forum_id',
    319336                        'to_type'         => 'reply',
    320337                        'to_fieldname'    => '_bbp_forum_id',
    class bbPress1 extends BBP_Converter_Base { 
    323340
    324341                // Topic title (for reply title).
    325342                $this->field_map[] = array(
    326                         'from_tablename'  => 'topics',
     343                        'from_tablename'  => 'bb_topics',
    327344                        'from_fieldname'  => 'topic_title',
    328                         'join_tablename'  => 'posts',
     345                        'join_tablename'  => 'bb_posts',
    329346                        'join_type'       => 'INNER',
    330                         'join_expression' => 'USING (topic_id) WHERE posts.post_position NOT IN (0,1)',
     347                        'join_expression' => 'USING (topic_id) WHERE bb_posts.post_position NOT IN (0,1)',
    331348                        'to_type'         => 'reply',
    332349                        'to_fieldname'    => 'post_title',
    333350                        'callback_method' => 'callback_reply_title'
    class bbPress1 extends BBP_Converter_Base { 
    335352
    336353                // Author ip.
    337354                $this->field_map[] = array(
    338                         'from_tablename' => 'posts',
     355                        'from_tablename' => 'bb_posts',
    339356                        'from_fieldname' => 'poster_ip',
    340357                        'to_type'        => 'reply',
    341358                        'to_fieldname'   => '_bbp_author_ip'
    class bbPress1 extends BBP_Converter_Base { 
    343360
    344361                // Reply author.
    345362                $this->field_map[] = array(
    346                         'from_tablename'  => 'posts',
     363                        'from_tablename'  => 'bb_posts',
    347364                        'from_fieldname'  => 'poster_id',
    348365                        'to_type'         => 'reply',
    349366                        'to_fieldname'    => 'post_author',
    class bbPress1 extends BBP_Converter_Base { 
    352369
    353370                // Reply status
    354371                $this->field_map[] = array(
    355                         'from_tablename'  => 'posts',
     372                        'from_tablename'  => 'bb_posts',
    356373                        'from_fieldname'  => 'post_status',
    357374                        'to_type'         => 'reply',
    358375                        'to_fieldname'    => 'post_status',
    class bbPress1 extends BBP_Converter_Base { 
    361378
    362379                // Reply content.
    363380                $this->field_map[] = array(
    364                         'from_tablename'  => 'posts',
     381                        'from_tablename'  => 'bb_posts',
    365382                        'from_fieldname'  => 'post_text',
    366383                        'to_type'         => 'reply',
    367384                        'to_fieldname'    => 'post_content',
    class bbPress1 extends BBP_Converter_Base { 
    370387
    371388                // Reply order.
    372389                $this->field_map[] = array(
    373                         'from_tablename'  => 'posts',
     390                        'from_tablename'  => 'bb_posts',
    374391                        'from_fieldname'  => 'post_position',
    375392                        'to_type'         => 'reply',
    376393                        'to_fieldname'    => 'menu_order'
    class bbPress1 extends BBP_Converter_Base { 
    378395
    379396                // Topic id.  If no parent, than 0.
    380397                $this->field_map[] = array(
    381                         'from_tablename'  => 'posts',
     398                        'from_tablename'  => 'bb_posts',
    382399                        'from_fieldname'  => 'topic_id',
    383400                        'to_type'         => 'reply',
    384401                        'to_fieldname'    => 'post_parent',
    class bbPress1 extends BBP_Converter_Base { 
    387404
    388405                // Reply dates.
    389406                $this->field_map[] = array(
    390                         'from_tablename' => 'posts',
     407                        'from_tablename' => 'bb_posts',
    391408                        'from_fieldname' => 'post_time',
    392409                        'to_type'        => 'reply',
    393410                        'to_fieldname'   => 'post_date'
    394411                );
    395412                $this->field_map[] = array(
    396                         'from_tablename' => 'posts',
     413                        'from_tablename' => 'bb_posts',
    397414                        'from_fieldname' => 'post_time',
    398415                        'to_type'        => 'reply',
    399416                        'to_fieldname'   => 'post_date_gmt'
    400417                );
    401418                $this->field_map[] = array(
    402                         'from_tablename' => 'posts',
     419                        'from_tablename' => 'bb_posts',
    403420                        'from_fieldname' => 'post_time',
    404421                        'to_type'        => 'reply',
    405422                        'to_fieldname'   => 'post_modified'
    406423                );
    407424                $this->field_map[] = array(
    408                         'from_tablename' => 'posts',
     425                        'from_tablename' => 'bb_posts',
    409426                        'from_fieldname' => 'post_time',
    410427                        'to_type'        => 'reply',
    411428                        'to_fieldname'   => 'post_modified_gmt'
    class bbPress1 extends BBP_Converter_Base { 
    477494                        'to_fieldname'   => 'user_status'
    478495                );
    479496
    480                 // User status.
     497                // User display name.
    481498                $this->field_map[] = array(
    482499                        'from_tablename' => 'users',
    483500                        'from_fieldname' => 'display_name',