Tpt has uploaded a new change for review.
https://gerrit.wikimedia.org/r/87044
Change subject: Major refactoring of the JS part of the page edition system
......................................................................
Major refactoring of the JS part of the page edition system
Reduce size of module folder names.
Create a new module specific for the edition of page pages.
Improve the page edition UI
Fix a small bug with Page: without index page
Change-Id: I8195325d7b17b3675792139f43593ee50e6e7096
---
M ProofreadPage.body.php
M ProofreadPage.i18n.php
M ProofreadPage.php
M includes/page/EditProofreadPagePage.php
R modules/article/ext.proofreadpage.article.js
A modules/ext.proofreadpage.base.css
D modules/ext.proofreadpage.base/ext.proofreadpage.base.css
D modules/ext.proofreadpage.index/ext.proofreadpage.index.js
D modules/ext.proofreadpage.page/ext.proofreadpage.page.css
R modules/index/ext.proofreadpage.index.css
A modules/index/ext.proofreadpage.index.js
R modules/index/images/help-question.gif
R modules/jquery/jquery.panZoom.js
A modules/page/ext.proofreadpage.page.css
A modules/page/ext.proofreadpage.page.edit.css
A modules/page/ext.proofreadpage.page.edit.js
A modules/page/ext.proofreadpage.page.js
R modules/page/images/Button_category_plus.png
R modules/page/images/Button_examine.png
R modules/page/images/Button_multicol.png
R modules/page/images/Button_pan_down.png
R modules/page/images/Button_pan_left.png
R modules/page/images/Button_pan_right.png
R modules/page/images/Button_pan_up.png
R modules/page/images/Button_zoom_in.png
R modules/page/images/Button_zoom_out.png
26 files changed, 319 insertions(+), 117 deletions(-)
git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/ProofreadPage
refs/changes/44/87044/1
diff --git a/ProofreadPage.body.php b/ProofreadPage.body.php
index 01de00d..85fa49a 100644
--- a/ProofreadPage.body.php
+++ b/ProofreadPage.body.php
@@ -876,7 +876,7 @@
if( $title->inNamespace( self::getPageNamespaceId() ) ) {
$page = ProofreadPagePage::newFromTitle( $title );
$indexPage = $page->getIndex();
- if ( $indexPage !== null ) {
+ if ( $indexPage ) {
list( $prevTitle, $nextTitle ) =
$indexPage->getPreviousAndNextPages( $page->getTitle() );
if ( $prevTitle !== null ) {
if( !$prevTitle->exists() ) {
diff --git a/ProofreadPage.i18n.php b/ProofreadPage.i18n.php
index 524573b..022ae68 100644
--- a/ProofreadPage.i18n.php
+++ b/ProofreadPage.i18n.php
@@ -89,7 +89,6 @@
'proofreadpage-indexoai-eprint-content-text' => 'Metadata of books
managed by ProofreadPage.',
'proofreadpage-indexoai-error-schemanotfound' => 'Schema not found',
'proofreadpage-indexoai-error-schemanotfound-text' => 'The $1 schema
have not been found.',
- 'proofreadpage-toggle-headerfooter' => 'Toggle this area',
'proofreadpage-disambiguationspage' => 'Template:disambig',
);
@@ -191,7 +190,6 @@
'proofreadpage-indexoai-error-schemanotfound' => 'Title of the error
when a requested XML Schema does not exist.',
'proofreadpage-indexoai-error-schemanotfound-text' => 'Text of the
error when a requested XML schema does not exist. Parameters:
* $1 is name of the schema.',
- 'proofreadpage-toggle-headerfooter' => 'Toggle the visibility of
header/footer input area',
'proofreadpage-disambiguationspage' => 'This message is the name of the
template used for marking disambiguation pages. It is used to find all pages
which link to disambiguation pages.
{{doc-important|Don\'t translate the "Template:" part!}}
diff --git a/ProofreadPage.php b/ProofreadPage.php
index c7ef0a2..62bf6c3 100644
--- a/ProofreadPage.php
+++ b/ProofreadPage.php
@@ -99,21 +99,22 @@
);
$wgResourceModules += array(
'jquery.panZoom' => $prpResourceTemplate + array(
- 'scripts' => 'jquery.panZoom/jquery.panZoom.js'
+ 'scripts' => 'jquery/jquery.panZoom.js',
+ 'dependencies' => array( 'jquery.ui.draggable' )
),
'ext.proofreadpage.base' => $prpResourceTemplate + array(
- 'styles' =>
'ext.proofreadpage.base/ext.proofreadpage.base.css',
+ 'styles' => 'ext.proofreadpage.base.css',
),
'ext.proofreadpage.page' => $prpResourceTemplate + array(
- 'scripts' => 'ext.proofreadpage.page/ext.proofreadpage.page.js',
- 'styles' =>
'ext.proofreadpage.page/ext.proofreadpage.page.css',
- 'dependencies' => array( 'ext.proofreadpage.base',
'mediawiki.legacy.wikibits', 'mediawiki.util', 'jquery.panZoom' ),
+ 'styles' => 'page/ext.proofreadpage.page.css',
+ 'scripts' => 'page/ext.proofreadpage.page.js',
+ 'dependencies' => array( 'ext.proofreadpage.base',
'jquery.panZoom' )
+ ),
+ 'ext.proofreadpage.page.edit' => $prpResourceTemplate + array(
+ 'styles' => 'page/ext.proofreadpage.page.edit.css',
+ 'scripts' => 'page/ext.proofreadpage.page.edit.js',
+ 'dependencies' => array( 'ext.proofreadpage.page',
'mediawiki.user' ),
'messages' => array(
- 'proofreadpage_header',
- 'proofreadpage_body',
- 'proofreadpage_footer',
- 'proofreadpage_toggleheaders',
- 'proofreadpage_page_status',
'proofreadpage_quality0_category',
'proofreadpage_quality1_category',
'proofreadpage_quality2_category',
@@ -128,16 +129,15 @@
'proofreadpage-button-zoom-in-label',
'proofreadpage-button-toggle-layout-label',
'proofreadpage-preferences-showheaders-label',
- 'proofreadpage-toggle-headerfooter',
)
),
'ext.proofreadpage.article' => $prpResourceTemplate + array(
- 'scripts' =>
'ext.proofreadpage.article/ext.proofreadpage.article.js',
+ 'scripts' => 'article/ext.proofreadpage.article.js',
'dependencies' => array( 'ext.proofreadpage.base' )
),
'ext.proofreadpage.index' => $prpResourceTemplate + array(
- 'scripts' =>
'ext.proofreadpage.index/ext.proofreadpage.index.js',
- 'styles' =>
'ext.proofreadpage.index/ext.proofreadpage.index.css',
+ 'scripts' => 'index/ext.proofreadpage.index.js',
+ 'styles' => 'index/ext.proofreadpage.index.css',
'dependencies' => array( 'ext.proofreadpage.base',
'jquery.tipsy' )
),
);
diff --git a/includes/page/EditProofreadPagePage.php
b/includes/page/EditProofreadPagePage.php
index 4513eaf..0e5a300 100644
--- a/includes/page/EditProofreadPagePage.php
+++ b/includes/page/EditProofreadPagePage.php
@@ -74,24 +74,25 @@
$wgOut->addHTML(
Html::openElement( 'div', array( 'class' =>
'prp-page-container' ) ) .
Html::openElement( 'div', array( 'class' =>
'prp-page-content' ) ) .
- Html::openElement( 'div', array( 'class' => 'wpHeader')
) .
- Html::element( 'label', array( 'for' =>
'wpHeaderTextbox'), wfMessage( 'proofreadpage_header' ) ) .
+ Html::openElement( 'div', array( 'class' =>
'prp-page-edit-header' ) ) .
+ Html::element( 'label', array( 'for' =>
'wpHeaderTextbox' ), wfMessage( 'proofreadpage_header' )->text() ) .
Html::textarea( 'wpHeaderTextbox',
$content->getHeader(), $headerAttributes ) .
- Html::element( 'button', array( 'name' => 'hideHeader',
'type' => 'button' ), wfMessage( 'proofreadpage-toggle-headerfooter' )->plain()
) .
Html::closeElement( 'div' ) .
- Html::element( 'label', array( 'for' => 'wpTextbox1'),
wfMessage( 'proofreadpage_body' ) ) .
+ Html::openElement( 'div', array( 'class' =>
'prp-page-edit-body' ) ) .
+ Html::element( 'label', array( 'for' => 'wpTextbox1' ),
wfMessage( 'proofreadpage_body' )->text() ) .
Html::textarea( 'wpTextbox1', $content->getBody(),
$bodyAttributes ) .
- Html::openElement( 'div', array( 'class' => 'wpFooter')
) .
- Html::element( 'label', array( 'for' =>
'wpFooterTextbox'), wfMessage( 'proofreadpage_footer' ) ) .
Html::closeElement( 'div' ) .
+ Html::openElement( 'div', array( 'class' =>
'prp-page-edit-footer' ) ) .
+ Html::element( 'label', array( 'for' =>
'wpFooterTextbox' ), wfMessage( 'proofreadpage_footer' )->text() ) .
Html::textarea( 'wpFooterTextbox',
$content->getFooter(), $footerAttributes ) .
- Html::element( 'button', array( 'name' => 'hideFooter',
'type' => 'button' ), wfMessage( 'proofreadpage-toggle-headerfooter' )->plain()
) .
+ Html::closeElement( 'div' ) .
Html::closeElement( 'div' ) .
Html::openElement( 'div', array( 'class' =>
'prp-page-image' ) ) .
$page->getImageHtml( array( 'max-width' => 800 ) ) .
Html::closeElement( 'div' ) .
Html::closeElement( 'div' )
);
+ $wgOut->addModules( 'ext.proofreadpage.page.edit' );
}
/**
diff --git a/modules/ext.proofreadpage.article/ext.proofreadpage.article.js
b/modules/article/ext.proofreadpage.article.js
similarity index 100%
rename from modules/ext.proofreadpage.article/ext.proofreadpage.article.js
rename to modules/article/ext.proofreadpage.article.js
diff --git a/modules/ext.proofreadpage.base.css
b/modules/ext.proofreadpage.base.css
new file mode 100644
index 0000000..b0165bb
--- /dev/null
+++ b/modules/ext.proofreadpage.base.css
@@ -0,0 +1,16 @@
+/* Quality links */
+.quality4 {
+ background-color: #90ff90;
+}
+.quality3 {
+ background-color: #ffe867;
+}
+.quality2 {
+ background-color: #b0b0ff;
+}
+.quality1 {
+ background-color: #ffa0a0;
+}
+.quality0 {
+ background-color: #ddd;
+}
\ No newline at end of file
diff --git a/modules/ext.proofreadpage.base/ext.proofreadpage.base.css
b/modules/ext.proofreadpage.base/ext.proofreadpage.base.css
deleted file mode 100644
index bcb455b..0000000
--- a/modules/ext.proofreadpage.base/ext.proofreadpage.base.css
+++ /dev/null
@@ -1,40 +0,0 @@
-/* Quality links */
-.quality4 {
- background-color: #90ff90;
-}
-.quality3 {
- background-color: #ffe867;
-}
-.quality2 {
- background-color: #b0b0ff;
-}
-.quality1 {
- background-color: #ffa0a0;
-}
-.quality0 {
- background-color: #ddd;
-}
-
-/* Presentation of page pages */
-/*TODO: ie6 and ie7 support*/
-.prp-page-container {
- display: table;
- width: 100%;
-}
-.prp-page-image {
- display: table-cell;
- width: 50%;
- vertical-align: top;
- overflow: hidden;
- position: absolute;
-}
-.prp-page-content {
- display: table-cell;
- width: 50%;
- padding-right: 0.5em;
- vertical-align: top;
- position: relative;
-}
-#prp-page-qualityheader {
- width: 100%;
-}
diff --git a/modules/ext.proofreadpage.index/ext.proofreadpage.index.js
b/modules/ext.proofreadpage.index/ext.proofreadpage.index.js
deleted file mode 100644
index 4d41492..0000000
--- a/modules/ext.proofreadpage.index/ext.proofreadpage.index.js
+++ /dev/null
@@ -1,12 +0,0 @@
-// Author : ThomasV - License : GPL
-
-// the index template is a system message.
-// another message in i18n lists the parameters
-
-jQuery( function( $ ) {
-
- // Set up the help system
- $( '.prp-help-field' ).tipsy( {
- 'gravity': 'nw'
- } );
-});
diff --git a/modules/ext.proofreadpage.page/ext.proofreadpage.page.css
b/modules/ext.proofreadpage.page/ext.proofreadpage.page.css
deleted file mode 100644
index d445e96..0000000
--- a/modules/ext.proofreadpage.page/ext.proofreadpage.page.css
+++ /dev/null
@@ -1,21 +0,0 @@
-#prp_header,
-#prp_footer {
- line-height: 1.5em;
-}
-
-#prp_header label,
-#prp_footer label {
- color: gray;
- font-size: 80%;
-}
-
-/* Adjustments for WikiEditor extension */
-.wikiEditor-ui-text #wpTextbox1,
-.wikiEditor-ui-text #wpHeaderTextbox,
-.wikiEditor-ui-text #wpFooterTextbox {
- border: none;
- padding: 0;
- line-height: 1.5em;
- margin: 0 !important;
- resize: vertical;
-}
\ No newline at end of file
diff --git a/modules/ext.proofreadpage.index/ext.proofreadpage.index.css
b/modules/index/ext.proofreadpage.index.css
similarity index 100%
rename from modules/ext.proofreadpage.index/ext.proofreadpage.index.css
rename to modules/index/ext.proofreadpage.index.css
diff --git a/modules/index/ext.proofreadpage.index.js
b/modules/index/ext.proofreadpage.index.js
new file mode 100644
index 0000000..46deb64
--- /dev/null
+++ b/modules/index/ext.proofreadpage.index.js
@@ -0,0 +1,11 @@
+( function ( mw, $ ) {
+ 'use strict';
+
+ $( document ).ready( function() {
+ // Set up the help system
+ $( '.prp-help-field' ).tipsy( {
+ 'gravity': 'nw'
+ } );
+ } );
+
+} ( mediaWiki, jQuery ) );
\ No newline at end of file
diff --git a/modules/ext.proofreadpage.index/images/help-question.gif
b/modules/index/images/help-question.gif
similarity index 100%
rename from modules/ext.proofreadpage.index/images/help-question.gif
rename to modules/index/images/help-question.gif
Binary files differ
diff --git a/modules/jquery.panZoom/jquery.panZoom.js
b/modules/jquery/jquery.panZoom.js
similarity index 92%
rename from modules/jquery.panZoom/jquery.panZoom.js
rename to modules/jquery/jquery.panZoom.js
index ee69628..d12a55f 100644
--- a/modules/jquery.panZoom/jquery.panZoom.js
+++ b/modules/jquery/jquery.panZoom.js
@@ -14,6 +14,7 @@
*/
( function( $ ) {
+ 'use strict';
$.fn.panZoom = function( method ) {
@@ -58,7 +59,7 @@
clickandhold : true
};
- var settings = {}
+ var settings = {};
var methods = {
'init': function ( options ) {
@@ -111,6 +112,17 @@
data.position.x2 = data.viewport_dimensions.x;
data.position.y2 = data.viewport_dimensions.y;
methods.updatePosition.apply( this );
+ },
+
+ 'fitWidth': function() {
+ var data = this.data( 'panZoom' );
+ data.position.x1 = 0;
+ data.position.y1 = 0;
+ data.position.x2 = data.viewport_dimensions.x;
+ data.position.y2 = data.position.y2 *
(data.target_dimensions.y / data.target_dimensions.x);
+ methods.updatePosition.apply( this );
+
+ data.target_element.parent().height( data.position.y2 );
},
'zoomIn': function ( steps ) {
@@ -213,7 +225,7 @@
function setupBindings() {
- eventData = { target: this }
+ var eventData = { target: this }
var data = this.data( 'panZoom' );
// bind up controls
@@ -306,7 +318,7 @@
stop: function () {
$(this).panZoom('dragComplete'); }
});
} else if (settings.draggable) {
- // alert('Draggable requires jQuery UI - please include
jQuery UI or disable draggable to remove this warning.')
+ console.log('Draggable requires jQuery UI - please
include jQuery UI or disable draggable to remove this warning.');
}
// image load
@@ -364,30 +376,30 @@
}
if (settings.aspect) {
- target = data.target_dimensions.ratio;
- current = getCurrentAspectRatio.apply(this)
+ var target = data.target_dimensions.ratio;
+ var current = getCurrentAspectRatio.apply(this)
if (current > target) {
- new_width = getHeight.apply(this) * target;
- diff = getWidth.apply(this) - new_width;
- data.position.x1 = data.position.x1*1 +
(diff/2);
- data.position.x2 = data.position.x2*1 -
(diff/2);
+ var new_width = getHeight.apply(this) * target;
+ var diff = getWidth.apply(this) - new_width;
+ data.position.x2 = data.position.x2*1 - diff;
} else if (current < target) {
- new_height = getWidth.apply(this) / target;
+ var new_height = getWidth.apply(this) / target;
diff = getHeight.apply(this) - new_height;
- data.position.y1 = data.position.y1*1 +
(diff/2);
- data.position.y2 = data.position.y2*1 -
(diff/2);
+ data.position.y2 = data.position.y2*1 - diff;
}
}
}
+ var properties = {};
+
function applyPosition() {
var data = this.data('panZoom');
- width = getWidth.apply(this);
- height = getHeight.apply(this);
- left_offset = getLeftOffset.apply(this);
- top_offset = getTopOffset.apply(this);
+ var width = getWidth.apply(this);
+ var height = getHeight.apply(this);
+ var left_offset = getLeftOffset.apply(this);
+ var top_offset = getTopOffset.apply(this);
properties = {
'top': Math.round(top_offset),
@@ -421,7 +433,7 @@
function getWidth() {
var data = this.data('panZoom');
- width = (data.position.x2 - data.position.x1);
+ var width = (data.position.x2 - data.position.x1);
return width;
}
@@ -432,13 +444,13 @@
function getHeight() {
var data = this.data('panZoom');
- height = (data.position.y2 - data.position.y1);
+ var height = (data.position.y2 - data.position.y1);
return height;
}
function getTopOffset() {
var data = this.data('panZoom');
- top_offset = data.position.y1;
+ var top_offset = data.position.y1;
return top_offset;
}
@@ -456,7 +468,7 @@
function getStepDimensions() {
var data = this.data('panZoom');
- ret = {
+ var ret = {
zoom: {
x: (settings.zoom_step/100 *
data.viewport_dimensions.x),
y: (settings.zoom_step/100 *
data.viewport_dimensions.y)
diff --git a/modules/page/ext.proofreadpage.page.css
b/modules/page/ext.proofreadpage.page.css
new file mode 100644
index 0000000..8a9901e
--- /dev/null
+++ b/modules/page/ext.proofreadpage.page.css
@@ -0,0 +1,25 @@
+.prp-page-container {
+ width: 100%;
+}
+.prp-page-content {
+ float: left;
+ width: 50%;
+}
+
+.prp-page-image {
+ float: right;
+ width: 49%;
+ position: relative;
+ overflow: auto;
+}
+
+#prp-page-qualityheader {
+ width: 100%;
+}
+
+.table-cell-left {
+ display:table-cell;
+}
+.table-cell-right {
+ display:table-cell;
+}
\ No newline at end of file
diff --git a/modules/page/ext.proofreadpage.page.edit.css
b/modules/page/ext.proofreadpage.page.edit.css
new file mode 100644
index 0000000..06b4357
--- /dev/null
+++ b/modules/page/ext.proofreadpage.page.edit.css
@@ -0,0 +1,20 @@
+.prp-page-content {
+ line-height: 1.5em;
+}
+.prp-page-content label {
+ color: gray;
+ font-size: 80%;
+}
+
+.editOptions {
+ clear: both;
+}
+
+/* Adjustments for WikiEditor extension */
+.wikiEditor-ui-text textarea {
+ border: none;
+ padding: 0;
+ line-height: 1.5em;
+ margin: 0 !important;
+ resize: vertical;
+}
\ No newline at end of file
diff --git a/modules/page/ext.proofreadpage.page.edit.js
b/modules/page/ext.proofreadpage.page.edit.js
new file mode 100644
index 0000000..a6ff4e9
--- /dev/null
+++ b/modules/page/ext.proofreadpage.page.edit.js
@@ -0,0 +1,180 @@
+( function ( mw, $ ) {
+ 'use strict';
+
+ function toggleHeaders( speed ) {
+ $( '.prp-page-edit-header' ).toggle( speed );
+ $( '.prp-page-edit-body label' ).toggle( speed );
+ $( '.prp-page-edit-footer' ).toggle( speed );
+ }
+
+ function setupPreferences() {
+ if( !mw.user.options.get( 'proofreadpage-showheaders' ) ) {
+ toggleHeaders( undefined );
+ }
+ //TODO: scan on top of the edit system
+ }
+
+ function setupPageQuality() {
+ $( 'input[name="wpQuality"]' ).click( function() {
+ var text = mw.msg( 'proofreadpage_quality' + this.value
+ '_category' );
+ $( 'input#wpSummary' ).val( '/* ' + text + ' */ ' );
+ } );
+ }
+
+ function addButtons() {
+ var iconPath = mw.config.get( 'wgExtensionAssetsPath' ) +
'/ProofreadPage/modules/page/images/';
+ var tools = {
+ zoom: {
+ labelMsg: 'proofreadpage-group-zoom',
+ tools: {
+ 'zoom-in': {
+ labelMsg:
'proofreadpage-button-zoom-in-label',
+ type: 'button',
+ icon: iconPath +
'Button_zoom_in.png',
+ action: {
+ type: 'callback',
+ execute: function() {
+ $(
'.prp-page-image img' ).panZoom( 'zoomIn' );
+ }
+ }
+ },
+ 'zoom-out': {
+ labelMsg:
'proofreadpage-button-zoom-out-label',
+ type: 'button',
+ icon: iconPath +
'Button_zoom_out.png',
+ action: {
+ type: 'callback',
+ execute: function() {
+ $(
'.prp-page-image img' ).panZoom( 'zoomOut' );
+ }
+ }
+ },
+ 'reset-zoom': {
+ labelMsg:
'proofreadpage-button-reset-zoom-label',
+ type: 'button',
+ icon: iconPath +
'Button_examine.png',
+ action: {
+ type: 'callback',
+ execute: function() {
+ $(
'.prp-page-image img' ).panZoom( 'fitWidth' );
+ }
+ }
+ },
+ 'pan-up': {
+ labelMsg:
'proofreadpage-button-pan-up-label',
+ type: 'button',
+ icon: iconPath +
'Button_pan_up.png',
+ action: {
+ type: 'callback',
+ execute: function() {
+ $(
'.prp-page-image img' ).panZoom( 'panUp' );
+ }
+ }
+ },
+ 'pan-down': {
+ labelMsg:
'proofreadpage-button-pan-down-label',
+ type: 'button',
+ icon: iconPath +
'Button_pan_down.png',
+ action: {
+ type: 'callback',
+ execute: function() {
+ $(
'.prp-page-image img' ).panZoom( 'panDown' );
+ }
+ }
+ },
+ 'pan-left': {
+ labelMsg:
'proofreadpage-button-pan-left-label',
+ type: 'button',
+ icon: iconPath +
'Button_pan_left.png',
+ action: {
+ type: 'callback',
+ execute: function() {
+ $(
'.prp-page-image img' ).panZoom( 'panLeft' );
+ }
+ }
+ },
+ 'pan-right': {
+ labelMsg:
'proofreadpage-button-pan-right-label',
+ type: 'button',
+ icon: iconPath +
'Button_pan_right.png',
+ action: {
+ type: 'callback',
+ execute: function() {
+ $(
'.prp-page-image img' ).panZoom( 'panRight' );
+ }
+ }
+ }
+ }
+ },
+ other: {
+ labelMsg: 'proofreadpage-group-other',
+ tools: {
+ 'toggle-visibility': {
+ labelMsg:
'proofreadpage-button-toggle-visibility-label',
+ type: 'button',
+ icon: iconPath +
'Button_category_plus.png',
+ action: {
+ type: 'callback',
+ execute: function() {
+ toggleHeaders(
'fast' );
+ }
+ }
+ },
+ 'toggle-layout': {
+ labelMsg:
'proofreadpage-button-toggle-layout-label',
+ type: 'button',
+ icon: iconPath +
'Button_multicol.png',
+ action: {
+ type: 'callback',
+ execute: function() {
+ //TODO
+ }
+ }
+ }
+ }
+ }
+ };
+
+ var $edit = $( '#wpTextbox1' );
+ if( mw.user.options.get( 'usebetatoolbar' ) ) {
+ mw.loader.using( 'ext.wikiEditor.toolbar', function() {
+ $edit.wikiEditor( 'addToToolbar', {
+ sections: {
+ 'proofreadpage-tools': {
+ type: 'toolbar',
+ labelMsg:
'proofreadpage-section-tools',
+ groups: tools
+ }
+ }
+ } );
+ } );
+ } else {
+ mw.loader.using( 'mediawiki.action.edit', function() {
+ var $toolbar = $( '#toolbar' );
+
+ $.each( tools, function( group, list ) {
+ $.each( list.tools, function( id, def )
{
+ $( '<img>' )
+ .attr( {
+ width: 23,
+ height: 22,
+ src: def.icon,
+ alt: mw.msg(
def.labelMsg ),
+ title: mw.msg(
def.labelMsg ),
+ class:
'mw-toolbar-editbutton'
+ } )
+ .click(
def.action.execute )
+ .appendTo( $toolbar );
+ } );
+ } );
+ } );
+ }
+ }
+
+ $( document ).ready( function() {
+ setupPreferences();
+ setupPageQuality();
+ addButtons();
+ } );
+
+} ( mediaWiki, jQuery ) );
\ No newline at end of file
diff --git a/modules/page/ext.proofreadpage.page.js
b/modules/page/ext.proofreadpage.page.js
new file mode 100644
index 0000000..18f8c40
--- /dev/null
+++ b/modules/page/ext.proofreadpage.page.js
@@ -0,0 +1,12 @@
+( function ( mw, $ ) {
+ 'use strict';
+
+ //init zoom system. The load event is used because the page needs to be
rendered before calling fitWidth
+ $( document).load( function() {
+ var $image = $( '.prp-page-image img' );
+ $image.panZoom();
+ $image.panZoom( 'loadImage' );
+ $image.panZoom( 'fitWidth' );
+ } );
+
+} ( mediaWiki, jQuery ) );
\ No newline at end of file
diff --git a/modules/ext.proofreadpage.page/images/Button_category_plus.png
b/modules/page/images/Button_category_plus.png
similarity index 100%
rename from modules/ext.proofreadpage.page/images/Button_category_plus.png
rename to modules/page/images/Button_category_plus.png
Binary files differ
diff --git a/modules/ext.proofreadpage.page/images/Button_examine.png
b/modules/page/images/Button_examine.png
similarity index 100%
rename from modules/ext.proofreadpage.page/images/Button_examine.png
rename to modules/page/images/Button_examine.png
Binary files differ
diff --git a/modules/ext.proofreadpage.page/images/Button_multicol.png
b/modules/page/images/Button_multicol.png
similarity index 100%
rename from modules/ext.proofreadpage.page/images/Button_multicol.png
rename to modules/page/images/Button_multicol.png
Binary files differ
diff --git a/modules/ext.proofreadpage.page/images/Button_pan_down.png
b/modules/page/images/Button_pan_down.png
similarity index 100%
rename from modules/ext.proofreadpage.page/images/Button_pan_down.png
rename to modules/page/images/Button_pan_down.png
Binary files differ
diff --git a/modules/ext.proofreadpage.page/images/Button_pan_left.png
b/modules/page/images/Button_pan_left.png
similarity index 100%
rename from modules/ext.proofreadpage.page/images/Button_pan_left.png
rename to modules/page/images/Button_pan_left.png
Binary files differ
diff --git a/modules/ext.proofreadpage.page/images/Button_pan_right.png
b/modules/page/images/Button_pan_right.png
similarity index 100%
rename from modules/ext.proofreadpage.page/images/Button_pan_right.png
rename to modules/page/images/Button_pan_right.png
Binary files differ
diff --git a/modules/ext.proofreadpage.page/images/Button_pan_up.png
b/modules/page/images/Button_pan_up.png
similarity index 100%
rename from modules/ext.proofreadpage.page/images/Button_pan_up.png
rename to modules/page/images/Button_pan_up.png
Binary files differ
diff --git a/modules/ext.proofreadpage.page/images/Button_zoom_in.png
b/modules/page/images/Button_zoom_in.png
similarity index 100%
rename from modules/ext.proofreadpage.page/images/Button_zoom_in.png
rename to modules/page/images/Button_zoom_in.png
Binary files differ
diff --git a/modules/ext.proofreadpage.page/images/Button_zoom_out.png
b/modules/page/images/Button_zoom_out.png
similarity index 100%
rename from modules/ext.proofreadpage.page/images/Button_zoom_out.png
rename to modules/page/images/Button_zoom_out.png
Binary files differ
--
To view, visit https://gerrit.wikimedia.org/r/87044
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I8195325d7b17b3675792139f43593ee50e6e7096
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/ProofreadPage
Gerrit-Branch: master
Gerrit-Owner: Tpt <[email protected]>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits