Skip to:
Content

bbPress.org

Ticket #1884: 1884.diff

File 1884.diff, 5.7 KB (added by netweb, 10 years ago)

[URL] URL Re-writes now complete

  • bbPress/admin/converters/phpBB.php

    diff --git a/bbPress/admin/converters/phpBB.php b/bbPress/admin/converters/phpBB.php
    index d82278b..e757fd8 100644
    a b class phpBB extends BBP_Converter_Base { 
    242242                        'callback_method' => 'callback_topicid'
    243243                );
    244244               
    245                 // Author ip.
     245                // Author ip. Stores in postmeta.
    246246                $this->field_map[] = array(
    247247                        'from_tablename' => 'posts',
    248248                        'from_fieldname' => 'poster_ip',
    class phpBB extends BBP_Converter_Base { 
    535535                return $output;
    536536        }
    537537
    538 }
     538        /**
     539         * This callback processes any custom parser.php attributes and custom code with preg_replace
     540         */
     541        protected function callback_html( $field ) {
     542
     543                // Parse out bbCodes
     544                require_once( bbpress()->admin->admin_dir . 'parser.php' );
     545                $bbcode = BBCode::getInstance();
     546                $bbcode->enable_smileys = false;
     547                $bbcode->smiley_regex   = false;
     548                $field = html_entity_decode( $bbcode->Parse( $field ) );
     549
     550                // Replace phpBB 'magic_url' and 'bbcode_uid' with SimplePress smilies with the equivelant WordPress
     551
     552                // Replace '[b:XXXXXXX]' with '<strong>'
     553                $phpbb_uid = preg_replace ( '/\[b:(.*?)\]/'   , '<strong>'  , $phpbb_uid );
     554                // Replace '[/b:XXXXXXX]' with '</strong>'
     555                $phpbb_uid = preg_replace ( '/\[\/b:(.*?)\]/' , '</strong>' , $phpbb_uid );
     556
     557                // Replace '[i:XXXXXXX]' with '<em>'
     558                $phpbb_uid = preg_replace ( '/\[i:(.*?)\]/'   , '<em>'      , $phpbb_uid );
     559                // Replace '[/i:XXXXXXX]' with '</em>'
     560                $phpbb_uid = preg_replace ( '/\[\/i:(.*?)\]/' , '</em>'     , $phpbb_uid );
     561
     562                // Replace '[u:XXXXXXX]' with '<u>'
     563                $phpbb_uid = preg_replace ( '/\[u:(.*?)\]/'   , '<u>'       , $phpbb_uid );
     564                // Replace '[/u:XXXXXXX]' with '</u>'
     565                $phpbb_uid = preg_replace ( '/\[\/u:(.*?)\]/' , '</u>'      , $phpbb_uid );
     566
     567                // Replace '[quote:XXXXXXX]' with '<blockquote>'
     568                $phpbb_uid = preg_replace ( '/\[quote:(.*?)\]/'         , '<blockquote>'                   , $phpbb_uid );
     569                // Replace '[quote="$1"]' with '<em>$1 wrote:</em><blockquote>"
     570                $phpbb_uid = preg_replace ( '/\[quote="(.*?)":(.*?)\]/' , '<em>$1 wrote:</em><blockquote>' , $phpbb_uid );
     571                // Replace '[/quote:XXXXXXX]' with '</blockquote>'
     572                $phpbb_uid = preg_replace ( '/\[\/quote:(.*?)\]/'       , '</blockquote>'                  , $phpbb_uid );
     573
     574                // Replace '[img:XXXXXXX]' with '<img src="'
     575                $phpbb_uid = preg_replace ( '/\[img:(.*?)\]/'   , '<img src="' , $phpbb_uid );
     576                // Replace '[/img:XXXXXXX]' with ' alt="">'
     577                $phpbb_uid = preg_replace ( '/\[\/img:(.*?)\]/' , '" alt="">'  , $phpbb_uid );
     578
     579                // Replace '<!-- s$1 --><img src=\"{SMILIES_PATH}$2 -->' with '$1'
     580                $phpbb_uid = preg_replace ( '/<!-- s(.*?) --><img src=\"{SMILIES_PATH}(.*?)-->/' , '$1' , $phpbb_uid );
     581
     582                // Replace '<!-- m --><a class="postlink" href="$1">$1</a><!-- m -->' with '$1'
     583                $phpbb_uid = preg_replace ( '/\<!-- m --\>\<a class="postlink" href="([^\[]+?)"\>([^\[]+?)\<\/a\>\<!-- m --\>/' , '$1' , $phpbb_uid );
     584
     585                // Replace '[url:XXXXXXX]$1[/url:XXXXXXX]' with '<a href="http://$1">$1</a>'
     586                $phpbb_uid = preg_replace ( '/\[url:(?:[^\]]+)\]([^\[]+?)\[\/url:(?:[^\]]+)\]/'       , '<a href="http://$1">$1</a>'  , $phpbb_uid );
     587                // Replace '[url=http://$1:XXXXXXX]$3[/url:XXXXXXX]' with '<a href="http://$1">$3</a>'
     588                $phpbb_uid = preg_replace ( '/\[url\=http\:\/\/(.*?)\:(.*?)\](.*?)\[\/url:(.*?)\]/i'  , '<a href="http://$1">$3</a>'  , $phpbb_uid );
     589                // Replace '[url=https://$1:XXXXXXX]$3[/url:XXXXXXX]' with '<a href="http://$1">$3</a>'
     590                $phpbb_uid = preg_replace ( '/\[url\=https\:\/\/(.*?)\:(.*?)\](.*?)\[\/url:(.*?)\]/i' , '<a href="https://$1">$3</a>' , $phpbb_uid );
     591
     592                // Replace '[email:XXXXXXX]' with '<a href="mailto:$2">$2</a>'
     593                $phpbb_uid = preg_replace ( '/\[email:(.*?)\](.*?)\[\/email:(.*?)\]/' , '<a href="mailto:$2">$2</a>' , $phpbb_uid );
     594
     595                // Replace '[code:XXXXXXX]' with '<pre><code>'
     596                $phpbb_uid = preg_replace ( '/\[code:(.*?)\]/'   , '<pre><code>'   , $phpbb_uid );
     597                // Replace '[/code:XXXXXXX]' with '</code></pre>'
     598                $phpbb_uid = preg_replace ( '/\[\/code:(.*?)\]/' , '</code></pre>' , $phpbb_uid );
     599
     600                // Replace '[color=$1:XXXXXXXX]' with '<span style="color:$1">'
     601                $phpbb_uid = preg_replace ( '/\[color=(.*?):(.*?)\]/' , '<span style="color:$1">' , $phpbb_uid );
     602                // Replace '[/color:XXXXXXX]' with '</span>'
     603                $phpbb_uid = preg_replace ( '/\[\/color:(.*?)\]/'     , '</span>'                 , $phpbb_uid );
     604
     605                // Replace '[size=$1:XXXXXXXX]' with '<span style="font-size:$1%;">$3</span>'
     606                $phpbb_uid = preg_replace ( '/\[size=(.*?):(.*?)\]/' , '<span style="font-size:$1%;">' , $phpbb_uid );
     607                // Replace '[/size:XXXXXXX]' with ''
     608                $phpbb_uid = preg_replace ( '/\[\/size:(.*?)\]/'     , '</span>'                       , $phpbb_uid );
     609
     610                // Replace '[list:XXXXXXX]' with '<ul>'
     611                $phpbb_uid = preg_replace ( '/\[list:(.*?)\]/'     , '<ul>'          , $phpbb_uid );
     612                // Replace '[list=a:XXXXXXX]' with '<ol type="a">'
     613                $phpbb_uid = preg_replace ( '/\[list=a:(.*?)\]/'   , '<ol type="a">' , $phpbb_uid );
     614                // Replace '[list=1:XXXXXXX]' with '<ol>'
     615                $phpbb_uid = preg_replace ( '/\[list=1:(.*?)\]/'   , '<ol>'          , $phpbb_uid );
     616                // Replace '[*:XXXXXXX]' with '<li>'
     617                $phpbb_uid = preg_replace ( '/\[\*:(.*?)\]/'       , '<li>'          , $phpbb_uid );
     618                // Replace '[/*:m:XXXXXXX]' with '</li>'
     619                $phpbb_uid = preg_replace ( '/\[\/\*:m:(.*?)\]/'   , '</li>'         , $phpbb_uid );   
     620                // Replace '[/list:u:XXXXXXX]' with '</ul>'
     621                $phpbb_uid = preg_replace ( '/\[\/list:u:(.*?)\]/' , '</ul>'         , $phpbb_uid );           
     622                // Replace '[/list:o:XXXXXXX]' with '</ol>'
     623                $phpbb_uid = preg_replace ( '/\[\/list:o:(.*?)\]/' , '</ol>'         , $phpbb_uid );           
     624
     625                return $field;
     626        }
     627}
     628 No newline at end of file