Mailing List Archive

[MediaWiki-commits] [Gerrit] mediawiki...BiblioPlus[master]: Convert BiblioPlus to use extension registration
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 <maurelio@tools.wmflabs.org>

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