https://www.mediawiki.org/wiki/Special:Code/MediaWiki/108333
Revision: 108333
Author: amire80
Date: 2012-01-07 22:57:39 +0000 (Sat, 07 Jan 2012)
Log Message:
-----------
Automatic creation of workflow states.
Modified Paths:
--------------
trunk/extensions/Translate/MessageGroups.php
trunk/extensions/Translate/Translate.i18n.php
trunk/extensions/Translate/_autoload.php
Modified: trunk/extensions/Translate/MessageGroups.php
===================================================================
--- trunk/extensions/Translate/MessageGroups.php 2012-01-07 22:49:46 UTC
(rev 108332)
+++ trunk/extensions/Translate/MessageGroups.php 2012-01-07 22:57:39 UTC
(rev 108333)
@@ -984,7 +984,48 @@
return $group->getMessage( $handle->getKey(), $code );
}
}
+}
+class WorkflowStatesMessageGroup extends WikiMessageGroup {
+ // id and source are not needed
+ public function __construct() {}
+
+ public function getId() {
+ return 'translate-workflow-states';
+ }
+
+ public function getLabel() {
+ return wfMessage( 'translate-workflowgroup-label' )->text();
+ }
+
+ public function getDescription() {
+ return wfMessage( 'translate-workflowgroup-desc' )->text();
+ }
+
+ public function getDefinitions() {
+ global $wgTranslateWorkflowStates;
+
+ $defs = array();
+
+ foreach ( array_keys( $wgTranslateWorkflowStates ) as $state ) {
+ $titleString = "Translate-workflow-state-$state";
+
+ // Automatically create pages for workflow states in
the original language
+ $title = Title::makeTitle( $this->getNamespace(),
$titleString );
+ if ( !$title->exists() ) {
+ $page = new WikiPage( $title );
+ $page->doEdit(
+ $state,
+ wfMessage(
'translate-workflow-autocreated-summary', $state )->inContentLanguage()->text(),
+ EDIT_NEW
+ );
+ }
+
+ $defs[$titleString] = $state;
+ }
+
+ return $defs;
+ }
}
/**
@@ -1056,6 +1097,7 @@
global $wgEnablePageTranslation, $wgTranslateGroupFiles;
global $wgTranslateAC, $wgTranslateEC, $wgTranslateCC;
global $wgAutoloadClasses;
+ global $wgTranslateWorkflowStates;
$deps = array();
$deps[] = new GlobalDependency(
'wgTranslateAddMWExtensionGroups' );
@@ -1091,6 +1133,10 @@
}
}
+ if ( $wgTranslateWorkflowStates ) {
+ $wgTranslateCC['translate-workflow-states'] = new
WorkflowStatesMessageGroup();
+ }
+
$autoload = array();
wfRunHooks( 'TranslatePostInitGroups', array( &$wgTranslateCC,
&$deps, &$autoload ) );
Modified: trunk/extensions/Translate/Translate.i18n.php
===================================================================
--- trunk/extensions/Translate/Translate.i18n.php 2012-01-07 22:49:46 UTC
(rev 108332)
+++ trunk/extensions/Translate/Translate.i18n.php 2012-01-07 22:57:39 UTC
(rev 108333)
@@ -407,8 +407,13 @@
'translate-workflow-set-do' => 'Set',
'translate-workflow-set-doing' => 'Setting...',
'translate-workflow-set-done' => 'Set!',
+ 'translate-workflow-autocreated-summary' => 'Automatic creation of page
for workflow state $1',
'translate-stats-workflow' => 'Status',
+ 'translate-workflowgroup-label' => 'Workflow states',
+ 'translate-workflowgroup-desc' => 'This message group shows the
translation workflow states.
+The states are defined in the configuration variable
$wgTranslateWorkflowStates.',
+
// Dynamic message groups
'translate-dynagroup-recent-label' => 'Recent translations',
'translate-dynagroup-recent-desc' => 'This message group shows all
recent translations into this language.
@@ -674,6 +679,7 @@
'translate-workflow-set-do' => 'Submit button text when active',
'translate-workflow-set-doing' => 'Submit button text when waiting for
reply from server',
'translate-workflow-set-done' => 'Submit button text when submission
completed succesfully',
+ 'translate-workflow-autocreated-summary' => 'This is an edit summary
for the automatic creation of a workflow state page.',
'translate-stats-workflow' => 'Column header on Special:LanguageStats
and Special:MessageGroupStats',
);
@@ -9561,7 +9567,11 @@
'translate-workflow-set-do' => 'הגדרה',
'translate-workflow-set-doing' => 'מתבצעת הגדרה...',
'translate-workflow-set-done' => 'הוגדר!',
+ 'translate-workflow-autocreated-summary' => 'יצירה אוטומטית של דף עם
מצב התרגום $1',
'translate-stats-workflow' => 'מצב',
+ 'translate-workflowgroup-label' => 'מצבי תרגום',
+ 'translate-workflowgroup-desc' => 'קבוצת ההודעות הזאת מציגה את המצבים
האפשריים של תרגום הודעות.
+המצבים מוגדרים במשתנה $wgTranslateWorkflowStates בקובץ ההגדרות של ההרחבה
Translate.',
'translate-dynagroup-recent-label' => 'תרגומים אחרונים',
'translate-dynagroup-recent-desc' => 'קבוצת ההודעות הזאת מציגה את כל
התרגומים האחרונים לשפה הזאת.
זה שימושי בעיקר במצבים "{{int:translate-task-acceptqueue}}"
ו"{{int:translate-task-reviewall}}".',
Modified: trunk/extensions/Translate/_autoload.php
===================================================================
--- trunk/extensions/Translate/_autoload.php 2012-01-07 22:49:46 UTC (rev
108332)
+++ trunk/extensions/Translate/_autoload.php 2012-01-07 22:57:39 UTC (rev
108333)
@@ -35,6 +35,7 @@
$wgAutoloadClasses['WikiPageMessageGroup'] = $dir . 'MessageGroups.php';
$wgAutoloadClasses['AliasMessageGroup'] = $dir . 'MessageGroups.php';
$wgAutoloadClasses['RecentMessageGroup'] = $dir . 'MessageGroups.php';
+$wgAutoloadClasses['WorkflowStatesMessageGroup'] = $dir . 'MessageGroups.php';
$wgAutoloadClasses['MessageCollection'] = $dir . 'MessageCollection.php';
$wgAutoloadClasses['MessageDefinitions'] = $dir . 'MessageCollection.php';
_______________________________________________
MediaWiki-CVS mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-cvs