http://www.mediawiki.org/wiki/Special:Code/MediaWiki/100205

Revision: 100205
Author:   yaron
Date:     2011-10-19 02:47:01 +0000 (Wed, 19 Oct 2011)
Log Message:
-----------
Fix for r100006 - fixed handling of schema elements that have no name

Modified Paths:
--------------
    trunk/extensions/PageSchemas/PageSchemas.classes.php

Modified: trunk/extensions/PageSchemas/PageSchemas.classes.php
===================================================================
--- trunk/extensions/PageSchemas/PageSchemas.classes.php        2011-10-19 
02:42:34 UTC (rev 100204)
+++ trunk/extensions/PageSchemas/PageSchemas.classes.php        2011-10-19 
02:47:01 UTC (rev 100205)
@@ -144,10 +144,11 @@
                $text .= self::tableRowHTML( 'pageSchemaHeader', 'Page schema' 
);
 
                foreach ( $wgPageSchemasHandlerClasses as $psHandlerClass ) {
-                       list( $elementName, $values ) = call_user_func( array( 
$psHandlerClass, 'getSchemaDisplayValues' ), $schemaXML );
-                       if ( is_null( $elementName ) ) {
+                       $returnVals = call_user_func( array( $psHandlerClass, 
'getSchemaDisplayValues' ), $schemaXML );
+                       if ( count( $returnVals ) != 2 ) {
                                continue;
                        }
+                       list( $elementName, $values ) = $returnVals;
                        $label = call_user_func( array( $psHandlerClass, 
'getSchemaDisplayString' ) );
                        $bgColor = call_user_func( array( $psHandlerClass, 
'getDisplayColor' ) );
                        $text .= self::tableRowHTML( 'schemaExtensionRow', 
$label, $elementName, $bgColor );
@@ -175,10 +176,11 @@
                }
 
                foreach ( $wgPageSchemasHandlerClasses as $psHandlerClass ) {
-                       list( $elementName, $values ) = call_user_func( array( 
$psHandlerClass, 'getTemplateDisplayValues' ), $templateXML );
-                       if ( is_null( $elementName ) ) {
+                       $returnVals = call_user_func( array( $psHandlerClass, 
'getTemplateDisplayValues' ), $templateXML );
+                       if ( count( $returnVals ) != 2 ) {
                                continue;
                        }
+                       list( $elementName, $values ) = $returnVals;
                        $label = call_user_func( array( $psHandlerClass, 
'getTemplateDisplayString' ) );
                        $bgColor = call_user_func( array( $psHandlerClass, 
'getDisplayColor' ) );
                        $text .= self::tableRowHTML( 'fieldExtensionRow', 
$label, $elementName, $bgColor );
@@ -214,10 +216,11 @@
                // Let extensions that store data within the Page Schemas XML
                // each handle displaying their data, by adding to this array.
                foreach ( $wgPageSchemasHandlerClasses as $psHandlerClass ) {
-                       list( $elementName, $values ) = call_user_func( array( 
$psHandlerClass, 'getFieldDisplayValues' ), $fieldXML );
-                       if ( is_null( $elementName ) ) {
+                       $returnVals = call_user_func( array( $psHandlerClass, 
'getFieldDisplayValues' ), $fieldXML );
+                       if ( count( $returnVals ) != 2 ) {
                                continue;
                        }
+                       list( $elementName, $values ) = $returnVals;
                        $label = call_user_func( array( $psHandlerClass, 
'getFieldDisplayString' ) );
                        $bgColor = call_user_func( array( $psHandlerClass, 
'getDisplayColor' ) );
                        $text .= self::tableRowHTML( 'fieldExtensionRow', 
$label, $elementName, $bgColor );


_______________________________________________
MediaWiki-CVS mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-cvs

Reply via email to