I posted this a few days ago but didn't get a response. I'm reposted in
the hopes that my original post was missed.
I've upgraded from 1.3.10 to 1.4.0 and one of my extensions no longer works.
I think the problem might have to do with my use of:
$wgParser->internalParse($output, 0)
While trying to get an extension to run I got the following in my apache
error logs.
[error] PHP Warning: end(): Passed variable is not an array or object
in /home/imbeauje/apache/htdocs/wiki/includes/Parser.php on line 425
[error] PHP Warning: end(): Passed variable is not an array or object
in /home/imbeauje/apache/htdocs/wiki/includes/Parser.php on line 425
[error] PHP Warning: end(): Passed variable is not an array or object
in /home/imbeauje/apache/htdocs/wiki/includes/Parser.php on line 425
[error] PHP Warning: end(): Passed variable is not an array or object
in /home/imbeauje/apache/htdocs/wiki/includes/Parser.php on line 425
[error] PHP Notice: Undefined index: html in
/home/imbeauje/apache/htdocs/wiki/includes/Parser.php on line 373
[error] PHP Fatal error: Unsupported operand types in
/home/imbeauje/apache/htdocs/wiki/includes/Parser.php on line 373
In case it is useful here is my extension:
$wgExtensionFunctions[] = "wfTableSchema";
function wfTableSchema() {
global $wgParser;
$wgParser->setHook( "tableSchema", "renderTableSchema" );
}
function renderTableSchema( $input )
{
global $wgTitle, $wgParser;
$CLASSPATH =
"/home/imbeauje/src/:/home/imbeauje/Tools/lib/jconn2.jar";
$title = $wgTitle->getDBkey();
//title is of the form database..tableName. Parse to extract
list($dbName, $tableName) = explode("..", $title);
$dbName = strtolower($dbName);
//then pass as params to java prog that will generate table
$cmd = "java -classpath $CLASSPATH ".
"wikiTools.WikiDatabaseTableGenerator $dbName
$tableName";
$output = `$cmd`;
$output = $wgParser->internalParse($output, 0);
return $output;
}
?>
I've also filed this in bugzilla at:
http://bugzilla.wikimedia.org/show_bug.cgi?id=1732
Jc