http://www.mediawiki.org/wiki/Special:Code/MediaWiki/69017
Revision: 69017
Author: siebrand
Date: 2010-07-04 20:52:02 +0000 (Sun, 04 Jul 2010)
Log Message:
-----------
Filter irrelevant tasks for page translation pages.
Modified Paths:
--------------
trunk/extensions/Translate/Translate.php
trunk/extensions/Translate/TranslatePage.php
trunk/extensions/Translate/TranslateTasks.php
Modified: trunk/extensions/Translate/Translate.php
===================================================================
--- trunk/extensions/Translate/Translate.php 2010-07-04 20:43:58 UTC (rev
69016)
+++ trunk/extensions/Translate/Translate.php 2010-07-04 20:52:02 UTC (rev
69017)
@@ -13,7 +13,7 @@
* @license http://www.gnu.org/copyleft/gpl.html GNU General Public License
2.0 or later
*/
-define( 'TRANSLATE_VERSION', '2010-06-12' );
+define( 'TRANSLATE_VERSION', '2010-07-04' );
$wgExtensionCredits['specialpage'][] = array(
'path' => __FILE__,
Modified: trunk/extensions/Translate/TranslatePage.php
===================================================================
--- trunk/extensions/Translate/TranslatePage.php 2010-07-04 20:43:58 UTC
(rev 69016)
+++ trunk/extensions/Translate/TranslatePage.php 2010-07-04 20:52:02 UTC
(rev 69017)
@@ -248,10 +248,13 @@
return $selector->getHTML();
}
- protected function taskSelector() {
+ protected function taskSelector( $pageTranslation = false ) {
$selector = new HTMLSelector( 'task', 'task',
$this->options['task'] );
- foreach ( TranslateTasks::getTasks() as $id ) {
+ // Check if this is a page translation group to return only
appropriate tasks.
+ $isPageTranslation = strpos( $this->group->getId(), 'page|' )
=== 0 ? true : false;
+
+ foreach ( TranslateTasks::getTasks( $isPageTranslation ) as $id
) {
$label = call_user_func( array( 'TranslateTask',
'labelForTask' ), $id );
$selector->addOption( $label, $id );
}
Modified: trunk/extensions/Translate/TranslateTasks.php
===================================================================
--- trunk/extensions/Translate/TranslateTasks.php 2010-07-04 20:43:58 UTC
(rev 69016)
+++ trunk/extensions/Translate/TranslateTasks.php 2010-07-04 20:52:02 UTC
(rev 69017)
@@ -374,10 +374,29 @@
}
class TranslateTasks {
- public static function getTasks() {
+ public static function getTasks( $pageTranslation = false ) {
global $wgTranslateTasks;
- return array_keys( $wgTranslateTasks );
+ // Tasks not to be available in page translation
+ $filterTasks = array(
+ 'optional',
+ 'untranslatedoptional',
+ 'review',
+ 'export-to-file',
+ 'export-to-xliff'
+ );
+
+ $allTasks = array_keys( $wgTranslateTasks );
+
+ if ( $pageTranslation ) {
+ foreach( $allTasks as $id => $task ) {
+ if ( in_array( $task, $filterTasks ) ) {
+ unset( $allTasks[$id] );
+ }
+ }
+ }
+
+ return $allTasks;
}
public static function getTask( $id ) {
_______________________________________________
MediaWiki-CVS mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-cvs