https://www.mediawiki.org/wiki/Special:Code/MediaWiki/102758

Revision: 102758
Author:   juliano
Date:     2011-11-11 05:26:42 +0000 (Fri, 11 Nov 2011)
Log Message:
-----------
Support {{DISPLAYTITLE:...}} parser macro to customize the post title.

Modified Paths:
--------------
    trunk/extensions/Wikilog/RELEASE-NOTES
    trunk/extensions/Wikilog/WikilogHooks.php

Modified: trunk/extensions/Wikilog/RELEASE-NOTES
===================================================================
--- trunk/extensions/Wikilog/RELEASE-NOTES      2011-11-11 05:24:43 UTC (rev 
102757)
+++ trunk/extensions/Wikilog/RELEASE-NOTES      2011-11-11 05:26:42 UTC (rev 
102758)
@@ -4,8 +4,8 @@
 
 === General notes ===
 
-MediaWiki requirement raised to 1.16.0 and later.  MediaWiki 1.15 and earlier
-are no longer supported in this release.
+MediaWiki requirement raised to 1.17.0 and later.
+MediaWiki 1.16 and earlier are no longer supported in this release.
 
 === New configuration options ===
 
@@ -13,6 +13,8 @@
 
 * Article and comment timestamps are now displayed in the wiki timezone
   (as defined by $wgLocaltimezone).
+* (wl:issue 11) Added support for {{DISPLAYTITLE:...}}, allows the author to
+  alter the title of the wikilog article.
 
 === Bug fixes ===
 
@@ -21,6 +23,7 @@
 * (wl:issue 12) Fixed calls to $wgParser->clearState() (which is now a private
   function).
 * Fixed a crash when creating a new wikilog post as an unlogged user.
+* Several fixes for compatibility with MediaWiki 1.18.
 
 == Wikilog 1.1.0 ==
 

Modified: trunk/extensions/Wikilog/WikilogHooks.php
===================================================================
--- trunk/extensions/Wikilog/WikilogHooks.php   2011-11-11 05:24:43 UTC (rev 
102757)
+++ trunk/extensions/Wikilog/WikilogHooks.php   2011-11-11 05:26:42 UTC (rev 
102758)
@@ -75,6 +75,17 @@
                        $item->mParentTitle = $wi->getTitle();
                        $item->mParent = $item->mParentTitle->getArticleId();
 
+                       # Override item name if {{DISPLAYTITLE:...}} was used.
+                       $dtText = $editInfo->output->getDisplayTitle();
+                       if ( $dtText ) {
+                               # Tags are stripped on purpose.
+                               $dtText = Sanitizer::stripAllTags( $dtText );
+                               $dtParts = explode( '/', $dtText, 2 );
+                               if ( count( $dtParts ) > 1 ) {
+                                       $item->mName = $dtParts[1];
+                               }
+                       }
+
                        $item->resetID( $article->getId() );
 
                        # Check if we have any wikilog metadata available.
@@ -218,6 +229,7 @@
                        $item = WikilogItem::newFromID( $pageid );
                        if ( $wi && $wi->isItem() && !$wi->isTalk() && $item ) {
                                $item->mName = $wi->getItemName();
+                               # FIXME: need to reparse due to 
{{DISPLAYTITLE:...}}.
                                $item->mTitle = $wi->getItemTitle();
                                $item->mParentName = $wi->getName();
                                $item->mParentTitle = $wi->getTitle();


_______________________________________________
MediaWiki-CVS mailing list
MediaWiki-CVS@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-cvs

Reply via email to