* (bug 35019) Fix for rr99942: edit summaries are no longer transformed in notificati...
authorAlexandre Emsenhuber <ialex@users.mediawiki.org>
Thu, 8 Mar 2012 21:39:13 +0000 (21:39 +0000)
committerAlexandre Emsenhuber <ialex@users.mediawiki.org>
Thu, 8 Mar 2012 21:39:13 +0000 (21:39 +0000)
RELEASE-NOTES-1.19
includes/UserMailer.php

index 3bbb097..87d51b9 100644 (file)
@@ -14,6 +14,7 @@ production.
 === Changes since 1.19 beta 1 ===
 * (bug 35014) Including a special page no longer sets the page's title to the
   included page
+* (bug 35019) Edit summaries are no longer transformed in notification e-mails
 
 === Configuration changes in 1.19 ===
 * Removed SkinTemplateSetupPageCss hook; use BeforePageDisplay instead.
index 74b105b..e0b8d01 100644 (file)
@@ -619,6 +619,7 @@ class EmailNotification {
                # simply editing the Meta pages
 
                $keys = array();
+               $postTransformKeys = array();
 
                if ( $this->oldid ) {
                        // Always show a link to the diff which triggered the mail. See bug 32210.
@@ -642,7 +643,6 @@ class EmailNotification {
                $keys['$PAGETITLE'] = $this->title->getPrefixedText();
                $keys['$PAGETITLE_URL'] = $this->title->getCanonicalUrl();
                $keys['$PAGEMINOREDIT'] = $this->minorEdit ? wfMsgForContent( 'minoredit' ) : '';
-               $keys['$PAGESUMMARY'] = $this->summary == '' ? ' - ' : $this->summary;
                $keys['$UNWATCHURL'] = $this->title->getCanonicalUrl( 'action=unwatch' );
 
                if ( $this->editor->isAnon() ) {
@@ -657,16 +657,20 @@ class EmailNotification {
 
                $keys['$PAGEEDITOR_WIKI'] = $this->editor->getUserPage()->getCanonicalUrl();
 
+               # Replace this after transforming the message, bug 35019
+               $postTransformKeys['$PAGESUMMARY'] = $this->summary == '' ? ' - ' : $this->summary;
+
                # Now build message's subject and body
 
                $subject = wfMsgExt( 'enotif_subject', 'content' );
                $subject = strtr( $subject, $keys );
-               $this->subject = MessageCache::singleton()->transform( $subject, false, null, $this->title );
+               $subject = MessageCache::singleton()->transform( $subject, false, null, $this->title );
+               $this->subject = strtr( $subject, $postTransformKeys );
 
                $body = wfMsgExt( 'enotif_body', 'content' );
                $body = strtr( $body, $keys );
                $body = MessageCache::singleton()->transform( $body, false, null, $this->title );
-               $this->body = wordwrap( $body, 72 );
+               $this->body = wordwrap( strtr( $body, $postTransformKeys ), 72 );
 
                # Reveal the page editor's address as REPLY-TO address only if
                # the user has not opted-out and the option is enabled at the