BPositive has uploaded a new change for review.
https://gerrit.wikimedia.org/r/142241
Change subject: [WIP] Special page Special:PagePreparation for translate page
preparation
......................................................................
[WIP] Special page Special:PagePreparation for translate page preparation
The script ext.translate.pagepreparation.js is now invoked on a button click
at Special:PagePreparation by taking the page name as input from user.
Change-Id: I42a06acc6cc15c3c06bb74964a525eacca910a3b
---
M Autoload.php
M Translate.alias.php
M TranslateHooks.php
M i18n/pagetranslation/en.json
M i18n/pagetranslation/qqq.json
M resources/js/ext.translate.pagepreparation.js
A specials/SpecialPagePreparation.php
7 files changed, 81 insertions(+), 18 deletions(-)
git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/Translate
refs/changes/41/142241/1
diff --git a/Autoload.php b/Autoload.php
index 97912ea..a239ec7 100644
--- a/Autoload.php
+++ b/Autoload.php
@@ -45,6 +45,7 @@
$wgAutoloadClasses['SpecialMessageGroupStats'] =
"$dir/specials/SpecialMessageGroupStats.php";
$wgAutoloadClasses['SpecialMyLanguage'] =
"$dir/specials/SpecialMyLanguage.php";
$wgAutoloadClasses['SpecialPageMigration'] =
"$dir/specials/SpecialPageMigration.php";
+$wgAutoloadClasses['SpecialPagePreparation'] =
"$dir/specials/SpecialPagePreparation.php";
$wgAutoloadClasses['SpecialSearchTranslations'] =
"$dir/specials/SpecialSearchTranslations.php";
$wgAutoloadClasses['SpecialSupportedLanguages'] =
"$dir/specials/SpecialSupportedLanguages.php";
$wgAutoloadClasses['SpecialTranslate'] = "$dir/specials/SpecialTranslate.php";
diff --git a/Translate.alias.php b/Translate.alias.php
index 5993c19..6de19b1 100644
--- a/Translate.alias.php
+++ b/Translate.alias.php
@@ -28,6 +28,7 @@
'TranslationStats' => array( 'TranslationStats',
'TranslationStatistics' ),
'Translations' => array( 'Translations' ),
'PageMigration' => array( 'PageMigration' ),
+ 'PagePreparation' => array( 'PagePreparation' ),
);
/** Afrikaans (Afrikaans) */
@@ -1144,4 +1145,4 @@
'TranslationStats' => array( '翻譯統計' ),
'Translations' => array( '譯文' ),
'PageMigration' => array( '頁面轉移' ),
-);
\ No newline at end of file
+);
diff --git a/TranslateHooks.php b/TranslateHooks.php
index 2cf85b1..f4b4d15 100644
--- a/TranslateHooks.php
+++ b/TranslateHooks.php
@@ -57,6 +57,8 @@
if ( $wgTranslatePageMigration ) {
$wgSpecialPages['PageMigration'] =
'SpecialPageMigration';
$wgSpecialPageGroups['PageMigration'] = 'wiki';
+ $wgSpecialPages['PagePreparation'] =
'SpecialPagePreparation';
+ $wgSpecialPageGroups['PagePreparation'] =
'wiki';
}
global $wgLogActionsHandlers, $wgLogTypes;
diff --git a/i18n/pagetranslation/en.json b/i18n/pagetranslation/en.json
index dcdc062..c0fa91d 100644
--- a/i18n/pagetranslation/en.json
+++ b/i18n/pagetranslation/en.json
@@ -176,5 +176,9 @@
"pm-swap-icon-hover-text": "Swap with unit below",
"pm-delete-icon-hover-text": "Delete unit",
"tpt-translate-title": "Allow translation of page title",
- "ptp-save-summary": "prepared the page for translation using page
preparation tool"
+ "ptp-save-summary": "prepared the page for translation using page
preparation tool",
+ "pagepreparation": "Translation page preparation",
+ "pp-pagename-placeholder": "Enter the page name",
+ "pp-prepare-button-label": "Prepare",
+ "pp-prepare-save-label": "Save"
}
diff --git a/i18n/pagetranslation/qqq.json b/i18n/pagetranslation/qqq.json
index aebcace..7cecec3 100644
--- a/i18n/pagetranslation/qqq.json
+++ b/i18n/pagetranslation/qqq.json
@@ -176,5 +176,9 @@
"pm-swap-icon-hover-text": "Hover text for swap with unit below icon",
"pm-delete-icon-hover-text": "Hover text for delete unit icon",
"tpt-translate-title": "Checkbox on Special:PageTranslation to mark
title for translation",
- "ptp-save-summary": "Edit summary for saving a page prepared for
translation by the tool"
+ "ptp-save-summary": "Edit summary for saving a page prepared for
translation by the tool",
+ "pagepreparation": "{{doc-special|PageMigration}}",
+ "pp-pagename-placeholder": "Placeholder for the pagename input field.",
+ "pp-prepare-button-label": "Used as label for the \"Prepare\"
button.\n{{Identical|Prepare}}",
+ "pp-prepare-save-label": "Used as label for the \"Save\"
button.\n{{Identical|Save}}"
}
diff --git a/resources/js/ext.translate.pagepreparation.js
b/resources/js/ext.translate.pagepreparation.js
index ef2713f..0c23678 100644
--- a/resources/js/ext.translate.pagepreparation.js
+++ b/resources/js/ext.translate.pagepreparation.js
@@ -187,21 +187,28 @@
}
$( document ).ready( function () {
- var pageName;
- pageName = mw.config.get( 'wgPageName' );
- $.when( getPageContent( pageName ) ).done( function (
pageContent ) {
- pageContent = $.trim( pageContent );
- pageContent = cleanupTags( pageContent );
- pageContent = addLanguageBar( pageContent );
- pageContent = addTranslateTags( pageContent );
- pageContent = addNewLines( pageContent );
- pageContent = fixFiles( pageContent );
- pageContent = fixInternalLinks( pageContent );
- pageContent = postPreparationCleanup( pageContent );
- pageContent = $.trim( pageContent );
- savePage( pageName, pageContent ).done( function () {
- // This is just for the time being. So not
doing i18n
- window.alert( 'The page was prepared for
translation and has been saved.' );
+
+ $( '#action-prepare' ).click( function () {
+ var pageName = $.trim( $( '#title' ).val() );
+ if ( pageName === '' ) {
+ window.alert( 'Please enter the page name' );
+ return;
+ }
+
+ $.when( getPageContent( pageName ) ).done( function (
pageContent ) {
+ pageContent = $.trim( pageContent );
+ pageContent = cleanupTags( pageContent );
+ pageContent = addLanguageBar( pageContent );
+ pageContent = addTranslateTags( pageContent );
+ pageContent = addNewLines( pageContent );
+ pageContent = fixFiles( pageContent );
+ pageContent = fixInternalLinks( pageContent );
+ pageContent = postPreparationCleanup(
pageContent );
+ pageContent = $.trim( pageContent );
+ savePage( pageName, pageContent ).done(
function () {
+ // This is just for the time being. So
not doing i18n
+ window.alert( 'The page was prepared
for translation and has been saved.' );
+ } );
} );
} );
} );
diff --git a/specials/SpecialPagePreparation.php
b/specials/SpecialPagePreparation.php
new file mode 100644
index 0000000..8a8e135
--- /dev/null
+++ b/specials/SpecialPagePreparation.php
@@ -0,0 +1,44 @@
+<?php
+/**
+ * Contains code for special page Special:PagePreparation
+ *
+ * @file
+ * @author Pratik Lahoti
+ * @copyright Copyright © 2014-2015 Pratik Lahoti
+ * @license GPL-2.0+
+ */
+
+class SpecialPagePreparation extends SpecialPage {
+ function __construct() {
+ parent::__construct( 'PagePreparation', 'pagetranslation' );
+ }
+
+ function execute( $par ) {
+ $request = $this->getRequest();
+ $output = $this->getOutput();
+ $this->setHeaders();
+ $this->checkPermissions();
+ $output->addModules( 'ext.translate.pagepreparation' );
+ $output->addModuleStyles( 'jquery.uls.grid' );
+ # Get request data from, e.g.
+ $param = $request->getText( 'param' );
+ # Do stuff
+ # ...
+ $out = '';
+ $out .= Html::openElement( 'div', array( 'class' => 'grid' ) );
+ $out .= Html::openElement( 'form', array( 'class' =>
'mw-tpp-sp-form row',
+ 'id' => 'mw-tpp-sp-primary-form' ) );
+ $out .= Html::element( 'input', array( 'id' => 'title', 'class'
=> 'mw-searchInput',
+ 'placeholder' => $this->msg( 'pp-pagename-placeholder'
)->text() ) );
+ $out .= Html::element( 'input', array( 'id' => 'action-prepare',
+ 'class' => 'mw-ui-button mw-ui-primary', 'type' =>
'button',
+ 'value' => $this->msg( 'pp-prepare-button-label'
)->text() ) );
+ $out .= Html::element( 'input', array( 'id' => 'action-save',
+ 'class' => 'mw-ui-button mw-ui-constructive hide',
'type' => 'button',
+ 'value' => $this->msg( 'pp-save-button-label' )->text()
) );
+ $out .= Html::closeElement( 'form' );
+ $out .= Html::closeElement( 'div' );
+
+ $output->addHTML( $out );
+ }
+}
--
To view, visit https://gerrit.wikimedia.org/r/142241
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I42a06acc6cc15c3c06bb74964a525eacca910a3b
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/Translate
Gerrit-Branch: master
Gerrit-Owner: BPositive <[email protected]>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits