Index: proofread.js
===================================================================
--- proofread.js (wersja 102845)
+++ proofread.js (kopia robocza)
@@ -7,6 +7,8 @@
$( '#ca-talk' ).after( '
' + self.proofreadPageScanLink + '' );
}
+$( document ).ready( pr_init_tabs );
+
function pr_image_url( requested_width ) {
if( self.proofreadPageExternalURL ) {
self.DisplayWidth = requested_width;
@@ -28,9 +30,11 @@
}
}
-function pr_make_edit_area( container, text ) {
- re = /^([\s\S]*?)\n*<\/noinclude>([\s\S]*)([\s\S]*?)<\/noinclude>\n$/;
- m = text.match( re );
+function pr_make_edit_area( container, textbox ) {
+ var text = textbox.value;
+
+ var re = /^([\s\S]*?)\n*<\/noinclude>([\s\S]*)([\s\S]*?)<\/noinclude>\n$/;
+ var m = text.match( re );
if( m ) {
pageHeader = m[1];
pageBody = m[2];
@@ -122,20 +126,23 @@
pageFooter = pageFooter.substr( 0, pageFooter.length - 6 );
}
- container.innerHTML = '' +
- '' +
- '' +
- '';
+ var header = jQuery('').append(
+ '' +
+ '
' +
+ ''
+ );
+
+ var footer = jQuery('').append(
+ '
' +
+ ''
+ );
+
+ textbox.value = '\n' + pageBody;
+ textbox.style.height = ( self.DisplayHeight - 6 ) + 'px';
+ textbox.style.margin = '0px';
+
+ jQuery(container).append(header, textbox, footer);
}
function pr_reset_size() {
@@ -620,6 +627,7 @@
if( !pr_horiz ) {
// use a table only here
var t_table = document.createElement( 'table' );
+ t_table.style.cssText = 'width: 100%; border-collapse: collapse; border-spacing: 0; border: none';
var t_body = document.createElement( 'tbody' );
var cell_left = document.createElement( 'td' );
var cell_right = document.createElement( 'td' );
@@ -627,7 +635,7 @@
var t_row = document.createElement( 'tr' );
t_row.setAttribute( 'valign', 'top' );
- cell_left.style.cssText = 'width:50%; padding-right:0.5em;vertical-align:top;';
+ cell_left.style.cssText = 'width:50%; padding-right:0.5em; vertical-align:top; padding-left: 0';
cell_right.setAttribute( 'rowspan', '3' );
cell_right.style.cssText = 'vertical-align:top;';
t_row.appendChild( cell_left );
@@ -730,8 +738,8 @@
pr_container.addEventListener( 'DOMMouseScroll', pr_zoom_wheel, false );
}
pr_container.onmousewheel = pr_zoom_wheel; // IE, Opera.
- /* Load the image after page setup, so that user-defined hooks do not have to wait for it. */
- hookEvent( 'load', pr_load_image );
+
+ pr_load_image();
}
table.setAttribute( 'id', 'textBoxTable' );
@@ -740,29 +748,34 @@
pr_fill_table();
// insert the image
+ var text;
+
if( proofreadPageIsEdit ) {
- var text = document.getElementById( 'wpTextbox1' );
+ text = document.getElementById( 'wpTextbox1' );
} else {
- var text = document.getElementById( 'bodyContent' );
+ text = mw.util.$content[0];
}
+
if( !text ) {
return;
}
- var f = text.parentNode;
- var new_text = f.removeChild( text );
+ var textParent = text.parentNode;
+ var textSibling = text.nextSibling;
+ text = textParent.removeChild( text );
if( proofreadPageIsEdit ) {
- pr_make_edit_area( self.text_container, new_text.value );
- var copywarn = document.getElementById( 'editpage-copywarn' );
- f.insertBefore( table, copywarn );
- if ( !self.proofreadpage_show_headers ) {
- hookEvent( 'load', pr_toggle_visibility );
+ pr_make_edit_area( self.text_container, text );
+ textParent.insertBefore( table, textSibling );
+
+ if( !self.proofreadpage_show_headers ) {
+ pr_toggle_visibility();
} else {
- hookEvent( 'load', pr_reset_size );
+ pr_reset_size();
}
+
} else {
- self.text_container.appendChild( new_text );
- f.appendChild( self.table );
+ self.text_container.appendChild( text );
+ textParent.insertBefore( table, textSibling );
}
// add buttons
@@ -844,7 +857,6 @@
var $edit = $( '#wpTextbox1' );
if( typeof $edit.wikiEditor == 'function' ) {
- setTimeout(function() {
$edit.wikiEditor( 'addToToolbar', {
'sections': {
'proofreadpage-tools': {
@@ -854,7 +866,6 @@
}
} )
.wikiEditor( 'addToToolbar', tools);
- }, 500);
} else {
var toolbar = document.getElementById( 'toolbar' );
@@ -876,14 +887,12 @@
];
$.each(bits, function(i, button) {
var image = document.createElement( 'img' );
- image.width = 23;
- image.height = 22;
+ image.style.cssText = 'width: 23px; height: 23px; ';
image.className = 'mw-toolbar-editbutton';
image.src = button.icon;
image.border = 0;
image.alt = button.label;
image.title = button.label;
- image.style.cursor = 'pointer';
image.onclick = button.action.execute;
toolbar.appendChild( image );
});
@@ -954,11 +963,6 @@
}
}
-$(document).ready( pr_init );
-$(document).ready( pr_init_tabs );
-$(document).ready( pr_initzoom );
-
-
/* Quality buttons */
self.pr_add_quality = function( form, value ) {
self.proofreadpage_quality = value;
@@ -1035,4 +1039,12 @@
}
}
-$(document).ready( pr_add_quality_buttons );
+
+// Load scripts
+$( document ).ready( function() {
+ hookEvent( 'load', function() {
+ pr_init();
+ pr_add_quality_buttons();
+ pr_initzoom();
+ } );
+} );
Index: ProofreadPage.php
===================================================================
--- ProofreadPage.php (wersja 102845)
+++ ProofreadPage.php (kopia robocza)
@@ -63,6 +63,7 @@
$wgResourceModules += array(
'ext.proofreadpage.page' => $prpResourceTemplate + array(
'scripts' => 'proofread.js',
+ 'styles' => 'proofread.css',
'messages' => array(
'proofreadpage_header',
'proofreadpage_body',
Index: proofread.css
===================================================================
--- proofread.css (wersja 0)
+++ proofread.css (wersja 0)
@@ -0,0 +1,18 @@
+#prp_header, #prp_footer {
+ line-height: 1.5em
+}
+
+#prp_header label, #prp_footer label {
+ color:gray;
+ font-size:80%;
+}
+
+/* Adjustments for new toolbar */
+.wikiEditor-ui-text #wpTextbox1,
+.wikiEditor-ui-text #wpHeaderTextbox,
+.wikiEditor-ui-text #wpFooterTextbox {
+ border: none;
+ padding: 0;
+ line-height: 1.5em;
+ margin: 0 !important;
+}