MarcoAurelio has uploaded a new change for review. ( https://gerrit.wikimedia.org/r/405910 )
Change subject: Convert BiblioPlus to use extension registration ...................................................................... Convert BiblioPlus to use extension registration Bug: T185564 Change-Id: I2adef30d05ef759d492a5d88666762d6e8414aec --- A BiblioPlus.hooks.php M BiblioPlus.php A extension.json 3 files changed, 86 insertions(+), 59 deletions(-) git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/BiblioPlus refs/changes/10/405910/1 diff --git a/BiblioPlus.hooks.php b/BiblioPlus.hooks.php new file mode 100644 index 0000000..eb4425a --- /dev/null +++ b/BiblioPlus.hooks.php @@ -0,0 +1,18 @@ +<?php + +class BiblioPlusHooks { + +function onBeforePageDisplay(&$out) +{ + $out->addModules('ext.biblioPlus.qtip.config'); + return true; +} + +function biblioPlusSetup( Parser $parser ) { + $biblio = new BiblioPlus; + $parser -> setHook("cite", array($biblio,'biblioRenderCite')); + $parser -> setHook("nocite", array($biblio, 'biblioRenderNocite')); + $parser -> setHook("biblio", array($biblio, 'biblioRenderBiblio')); + return true; +} +} diff --git a/BiblioPlus.php b/BiblioPlus.php index 71f7441..7485e90 100644 --- a/BiblioPlus.php +++ b/BiblioPlus.php @@ -145,63 +145,17 @@ * Setup for BiblioPlus extension * @author Karen Eddy */ - -if (!defined('MEDIAWIKI')) { - exit ; -} - -/* - Time To Live; store var in the cache for CACHE_TTL seconds. -*/ -define('CACHE_TTL', 3600 * 24); - -$wgBiblioPlusForce = true; -$wgBiblioPlusVersion = "1.2.0"; - -$dir = dirname(__FILE__) . '/'; -$wgAutoloadClasses['BiblioXml'] = $dir . 'BiblioXml.php'; -$wgAutoloadClasses['BiblioPlus'] = $dir . 'BiblioPlus.body.php'; -$wgMessagesDirs['BiblioPlus'] = __DIR__ . '/i18n'; - -$wgExtensionCredits['parserhook'][] = array( - 'path' => __FILE__, - 'name' => 'BiblioPlus', - 'descriptionmsg' => 'biblioplus-desc', - 'version' => $wgBiblioPlusVersion, - 'author' => array( 'Karen Eddy', 'Code from the Biblio extension by Martin Jambon' ), - 'url' => 'https://www.mediawiki.org/wiki/Extension:BiblioPlus', - 'license-name' => 'GPL-2.0-or-later', -); - -$moduleTemplate = array( - 'localBasePath' => $dir . 'resources/', - 'remoteExtPath' => 'BiblioPlus/resources/' -); - -$wgResourceModules['ext.biblioPlus.qtip'] = $moduleTemplate + array( - 'scripts' => array('ext.biblioPlus.qtip/ext.biblioPlus.qtip.min.js'), - 'styles' => 'ext.biblioPlus.qtip/ext.biblioPlus.qtip.min.css', -); - -$wgResourceModules['ext.biblioPlus.qtip.config'] = $moduleTemplate + array( - 'scripts' => array('ext.biblioPlus.qtip.config.js'), - 'dependencies' => array('ext.biblioPlus.qtip'), - 'position' => 'top' -); - -$wgHooks['BeforePageDisplay'][] = 'onBeforePageDisplay'; -$wgHooks['ParserFirstCallInit'][] = 'biblioPlusSetup'; - -function onBeforePageDisplay(&$out) -{ - $out->addModules('ext.biblioPlus.qtip.config'); - return true; -} - -function biblioPlusSetup( Parser $parser ) { - $biblio = new BiblioPlus; - $parser -> setHook("cite", array($biblio,'biblioRenderCite')); - $parser -> setHook("nocite", array($biblio, 'biblioRenderNocite')); - $parser -> setHook("biblio", array($biblio, 'biblioRenderBiblio')); - return true; +<?php +if ( function_exists( 'wfLoadExtension' ) ) { + wfLoadExtension( 'BiblioPlus' ); + // Keep i18n globals so mergeMessageFileList.php doesn't break + $wgMessagesDirs['BiblioPlus'] = __DIR__ . '/i18n'; + wfWarn( + 'Deprecated PHP entry point used for the BiblioPlus extension. ' . + 'Please use wfLoadExtension instead, ' . + 'see https://www.mediawiki.org/wiki/Extension_registration for more details.' + ); + return; +} else { + die( 'This version of the BiblioPlus extension requires MediaWiki 1.29+' ); } diff --git a/extension.json b/extension.json new file mode 100644 index 0000000..3b1e238 --- /dev/null +++ b/extension.json @@ -0,0 +1,55 @@ +{ + "name": "BiblioPlus", + "version": "1.3.0", + "author": [ + "Karen Eddy", + "Martin Jambon" + ], + "url": "https://www.mediawiki.org/wiki/Extension:BiblioPlus", + "descriptionmsg": "biblioplus-desc", + "license-name": "GPL-2.0-or-later", + "type": "parserhook", + "MessagesDirs": { + "BiblioPlus": [ + "i18n" + ] + }, + "AutoloadClasses": { + "BiblioXml": "BiblioXml.php", + "BiblioPlus": "BiblioPlus.body.php" + }, + "ResourceModules": { + "ext.biblioPlus.qtip": { + "scripts": [ + "ext.biblioPlus.qtip/ext.biblioPlus.qtip.min.js" + ], + "styles": "ext.biblioPlus.qtip/ext.biblioPlus.qtip.min.css" + }, + "ext.biblioPlus.qtip.config": { + "scripts": [ + "ext.biblioPlus.qtip.config.js" + ], + "dependencies": [ + "ext.biblioPlus.qtip" + ], + "position": "top" + } + }, + "ResourceFileModulePaths": { + "localBasePath": "resources/", + "remoteExtPath": "BiblioPlus/resources/" + }, + "Hooks": { + "BeforePageDisplay": "onBeforePageDisplay", + "ParserFirstCallInit": "biblioPlusSetup" + }, + "config": { + "BiblioPlusForce": { + "value": true + }, + "BiblioPlusVersion": { + "value": "1.2.0" + } + }, + "manifest_version": 2 +} -- To view, visit https://gerrit.wikimedia.org/r/405910 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I2adef30d05ef759d492a5d88666762d6e8414aec Gerrit-PatchSet: 1 Gerrit-Project: mediawiki/extensions/BiblioPlus Gerrit-Branch: master Gerrit-Owner: MarcoAurelio <maure...@tools.wmflabs.org> _______________________________________________ MediaWiki-commits mailing list MediaWiki-commits@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits