* Pass in $parser more cleanly
authorAaron Schulz <aaron@users.mediawiki.org>
Fri, 6 Jun 2008 20:28:34 +0000 (20:28 +0000)
committerAaron Schulz <aaron@users.mediawiki.org>
Fri, 6 Jun 2008 20:28:34 +0000 (20:28 +0000)
* Show namespace in include error list
* Use getRevisionId() accessor
* Handle bogus article Ids
* Remove unused var

includes/Parser.php
includes/Parser_OldPP.php

index a763ab1..a97c8be 100644 (file)
@@ -3057,7 +3057,7 @@ class Parser
         */
        function fetchTemplateAndTitle( $title ) {
                $templateCb = $this->mOptions->getTemplateCallback();
-               $stuff = call_user_func( $templateCb, $title );
+               $stuff = call_user_func( $templateCb, $title, $this );
                $text = $stuff['text'];
                $finalTitle = isset( $stuff['finalTitle'] ) ? $stuff['finalTitle'] : $title;
                if ( isset( $stuff['deps'] ) ) {
@@ -3077,7 +3077,7 @@ class Parser
         * Static function to get a template
         * Can be overridden via ParserOptions::setTemplateCallback().
         */
-       static function statelessFetchTemplate( $title ) {
+       static function statelessFetchTemplate( $title, $parser=false ) {
                $text = $skip = false;
                $finalTitle = $title;
                $deps = array();
@@ -3086,7 +3086,7 @@ class Parser
                for ( $i = 0; $i < 2 && is_object( $title ); $i++ ) {
                        # Give extensions a chance to select the revision instead
                        $id = false; // Assume current
-                       wfRunHooks( 'BeforeParserFetchTemplateAndtitle', array( false, &$title, &$skip, &$id ) );
+                       wfRunHooks( 'BeforeParserFetchTemplateAndtitle', array( $parser, &$title, &$skip, &$id ) );
 
                        if( $skip ) {
                                $text = false;
index 57a981e..0d0394a 100644 (file)
@@ -410,6 +410,7 @@ class Parser_OldPP
 
        function &getTitle() { return $this->mTitle; }
        function getOptions() { return $this->mOptions; }
+       function getRevisionId() { return $this->mRevisionId; }
 
        function getFunctionLang() {
                global $wgLang, $wgContLang;
@@ -3261,7 +3262,7 @@ class Parser_OldPP
         */
        function fetchTemplateAndTitle( $title ) {
                $templateCb = $this->mOptions->getTemplateCallback();
-               $stuff = call_user_func( $templateCb, $title );
+               $stuff = call_user_func( $templateCb, $title, $this );
                $text = $stuff['text'];
                $finalTitle = isset( $stuff['finalTitle'] ) ? $stuff['finalTitle'] : $title;
                if ( isset( $stuff['deps'] ) ) {
@@ -3289,7 +3290,7 @@ class Parser_OldPP
         *                       page_id:  The page_id of the title
         *                       rev_id:   The revision ID loaded
         */
-       static function statelessFetchTemplate( $title ) {
+       static function statelessFetchTemplate( $title, $parser=false ) {
                $text = $skip = false;
                $finalTitle = $title;
                $deps = array();
@@ -3298,7 +3299,7 @@ class Parser_OldPP
                for ( $i = 0; $i < 2 && is_object( $title ); $i++ ) {
                        # Give extensions a chance to select the revision instead
                        $id = false; // Assume current
-                       wfRunHooks( 'BeforeParserFetchTemplateAndtitle', array( false, &$title, &$skip, &$id ) );
+                       wfRunHooks( 'BeforeParserFetchTemplateAndtitle', array( $parser, &$title, &$skip, &$id ) );
 
                        if( $skip ) {
                                $text = false;