[MediaWiki-commits] [Gerrit] mediawiki...MediaWikiChat[master]: Tidy up parsing mechanism a bit

2016-12-30 Thread jenkins-bot (Code Review)
jenkins-bot has submitted this change and it was merged. ( 
https://gerrit.wikimedia.org/r/329681 )

Change subject: Tidy up parsing mechanism a bit
..


Tidy up parsing mechanism a bit

Key point was to replace the 'MWCHAT $text' thing with something
 more elegent
Also a few other things

Change-Id: I616f3a74d52772df7f34e5e9ea0db00c3de53091
---
M MediaWikiChat.hooks.php
M MediaWikiChatClass.php
M extension.json
3 files changed, 8 insertions(+), 16 deletions(-)

Approvals:
  UltrasonicNXT: Looks good to me, approved
  jenkins-bot: Verified



diff --git a/MediaWikiChat.hooks.php b/MediaWikiChat.hooks.php
index c8f5dc0..243a9b7 100644
--- a/MediaWikiChat.hooks.php
+++ b/MediaWikiChat.hooks.php
@@ -12,9 +12,7 @@
 * @return bool
 */
public static function onParserBeforeInternalParse( &$parser, &$text, 
&$strip_state ) {
-   if ( strpos( $text, 'MWCHAT' ) === false ) {
-   return true;
-   } else {
+   if ( $parser->getTitle()->equals( SpecialPage::getTitleFor( 
'Chat', 'message' ) ) ) { // only do our version of parsing when this is 
Special:Chat and we're parsing a message
$text = $parser->replaceVariables( $text );
 
$text = Sanitizer::removeHTMLtags(
@@ -24,17 +22,14 @@
array_keys( $parser->mTransparentTagHooks )
);
 
-   $text = preg_replace( '/(^|\n)-*/', '\\1', 
$text );
-
$text = $parser->replaceInternalLinks( $text );
$text = $parser->doAllQuotes( $text );
$text = $parser->replaceExternalLinks( $text );
-
-   $text = str_replace( $parser->mUniqPrefix . 'NOPARSE', 
'', $text );
-
$text = $parser->doMagicLinks( $text );
 
-   return false;
+   return false; // stop parser doing anything as we've 
done the parsing ourselves
+   } else {
+   return true;
}
}
 
diff --git a/MediaWikiChatClass.php b/MediaWikiChatClass.php
index 658d1cc..0deedb6 100644
--- a/MediaWikiChatClass.php
+++ b/MediaWikiChatClass.php
@@ -224,8 +224,6 @@
$message
);
 
-   $message = "MWCHAT $message"; // flag to show the 
parser this is a chat message (for our hook)
-
$opts = new ParserOptions();
$opts->setEditSection( false );
$opts->setExternalLinkTarget( '_blank' );
@@ -237,19 +235,18 @@

$message = $parser->preSaveTransform(
$message,
-   SpecialPage::getTitleFor( 'Chat' ),
+   SpecialPage::getTitleFor( 'Chat', 'message' ),
$user,
$opts
);

$parseOut = $parser->parse(
$message,
-   SpecialPage::getTitleFor( 'Chat' ),
+   SpecialPage::getTitleFor( 'Chat', 'message' ), 
// the message subpage tells our hook this is message
$opts
);
 
$message = $parseOut->getText();
-   $message = str_replace( 'MWCHAT', '', $message ); // 
remove flag for parser
 
$message = str_replace( '', '', $message ); // 
remove MW's automatical p,
$message = str_replace( '', '', $message ); // it's 
pointless
@@ -258,7 +255,7 @@
} else {
$message = htmlentities( $message );
 
-   $message = preg_replace( '#(http[s]?\:\/\/[^ \n]+)#', 
'$1', $message );
+   $message = preg_replace( '#(http[s]?\:\/\/[^ \n]+)#', 
'$1', $message ); // turn URLs into links
}
 
$message = str_replace( array( '', '' ), ' ', 
$message ); // replace nonbreaking space with regular space
diff --git a/extension.json b/extension.json
index 18643ad..67da23e 100644
--- a/extension.json
+++ b/extension.json
@@ -1,6 +1,6 @@
 {
"name": "MediaWikiChat",
-   "version": "2.19.0",
+   "version": "2.19.1",
"author": [
"Adam Carter/UltrasonicNXT"
],

-- 
To view, visit https://gerrit.wikimedia.org/r/329681
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: merged
Gerrit-Change-Id: I616f3a74d52772df7f34e5e9ea0db00c3de53091
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/MediaWikiChat
Gerrit-Branch: master
Gerrit-Owner: UltrasonicNXT 
Gerrit-Reviewer: 

[MediaWiki-commits] [Gerrit] mediawiki...MediaWikiChat[master]: Tidy up parsing mechanism a bit

2016-12-30 Thread UltrasonicNXT (Code Review)
UltrasonicNXT has uploaded a new change for review. ( 
https://gerrit.wikimedia.org/r/329681 )

Change subject: Tidy up parsing mechanism a bit
..

Tidy up parsing mechanism a bit

Key point was to replace the 'MWCHAT $text' thing with something
 more elegent
Also a few other things

Change-Id: I616f3a74d52772df7f34e5e9ea0db00c3de53091
---
M MediaWikiChat.hooks.php
M MediaWikiChatClass.php
M extension.json
3 files changed, 8 insertions(+), 16 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/MediaWikiChat 
refs/changes/81/329681/1

diff --git a/MediaWikiChat.hooks.php b/MediaWikiChat.hooks.php
index c8f5dc0..243a9b7 100644
--- a/MediaWikiChat.hooks.php
+++ b/MediaWikiChat.hooks.php
@@ -12,9 +12,7 @@
 * @return bool
 */
public static function onParserBeforeInternalParse( &$parser, &$text, 
&$strip_state ) {
-   if ( strpos( $text, 'MWCHAT' ) === false ) {
-   return true;
-   } else {
+   if ( $parser->getTitle()->equals( SpecialPage::getTitleFor( 
'Chat', 'message' ) ) ) { // only do our version of parsing when this is 
Special:Chat and we're parsing a message
$text = $parser->replaceVariables( $text );
 
$text = Sanitizer::removeHTMLtags(
@@ -24,17 +22,14 @@
array_keys( $parser->mTransparentTagHooks )
);
 
-   $text = preg_replace( '/(^|\n)-*/', '\\1', 
$text );
-
$text = $parser->replaceInternalLinks( $text );
$text = $parser->doAllQuotes( $text );
$text = $parser->replaceExternalLinks( $text );
-
-   $text = str_replace( $parser->mUniqPrefix . 'NOPARSE', 
'', $text );
-
$text = $parser->doMagicLinks( $text );
 
-   return false;
+   return false; // stop parser doing anything as we've 
done the parsing ourselves
+   } else {
+   return true;
}
}
 
diff --git a/MediaWikiChatClass.php b/MediaWikiChatClass.php
index 658d1cc..0deedb6 100644
--- a/MediaWikiChatClass.php
+++ b/MediaWikiChatClass.php
@@ -224,8 +224,6 @@
$message
);
 
-   $message = "MWCHAT $message"; // flag to show the 
parser this is a chat message (for our hook)
-
$opts = new ParserOptions();
$opts->setEditSection( false );
$opts->setExternalLinkTarget( '_blank' );
@@ -237,19 +235,18 @@

$message = $parser->preSaveTransform(
$message,
-   SpecialPage::getTitleFor( 'Chat' ),
+   SpecialPage::getTitleFor( 'Chat', 'message' ),
$user,
$opts
);

$parseOut = $parser->parse(
$message,
-   SpecialPage::getTitleFor( 'Chat' ),
+   SpecialPage::getTitleFor( 'Chat', 'message' ), 
// the message subpage tells our hook this is message
$opts
);
 
$message = $parseOut->getText();
-   $message = str_replace( 'MWCHAT', '', $message ); // 
remove flag for parser
 
$message = str_replace( '', '', $message ); // 
remove MW's automatical p,
$message = str_replace( '', '', $message ); // it's 
pointless
@@ -258,7 +255,7 @@
} else {
$message = htmlentities( $message );
 
-   $message = preg_replace( '#(http[s]?\:\/\/[^ \n]+)#', 
'$1', $message );
+   $message = preg_replace( '#(http[s]?\:\/\/[^ \n]+)#', 
'$1', $message ); // turn URLs into links
}
 
$message = str_replace( array( '', '' ), ' ', 
$message ); // replace nonbreaking space with regular space
diff --git a/extension.json b/extension.json
index 18643ad..67da23e 100644
--- a/extension.json
+++ b/extension.json
@@ -1,6 +1,6 @@
 {
"name": "MediaWikiChat",
-   "version": "2.19.0",
+   "version": "2.19.1",
"author": [
"Adam Carter/UltrasonicNXT"
],

-- 
To view, visit https://gerrit.wikimedia.org/r/329681
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I616f3a74d52772df7f34e5e9ea0db00c3de53091
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/MediaWikiChat
Gerrit-Branch: master
Gerrit-Owner: UltrasonicNXT