Help:Extension:Translate/Стани груп повідомлень

This page is a translated version of the page Help:Extension:Translate/Message group states and the translation is 28% complete.
Outdated translations are marked like this.
Перевірити статус кожної групи повідомлень можна на сторінці Спеціальна:Мовна статистика (LanguageStats)

На цій сторінці розміщена документація для станів процесу обробки груп повідомлень. Давайте уявимо, що якась організація використовує MediaWiki з розширенням Translate. Крім усього іншого, вони користуються вікі для написання прес-релізів. Що вони роблять? Спочатку вони пишуть прес-реліз у вікі, потім позначають його для перекладу і запрошують перекладачів для роботи над ним. Коли переклади готові, їх можна публікувати десь іще, крім їхнього сайту. Але як вони дізнаються, коли переклад готовий або, що важливіше, вичитаний і відкорегований (див. Забезпечення якості)? Що якщо хтось знайде і виправить помилку, і опублікована версія потребує оновлення? Let's imagine that some organization is using MediaWiki with the Translate extension. They use the wiki to write press releases among other things. What do they do? First they write a press release in a wiki, then make it translatable and invite translators to work on it. When translations are ready, they can publish them elsewhere on their website. But how do they know when a translation is ready, or more importantly proofread and corrected (see Quality assurance)? What if someone finds and fixes a mistake and the published version needs to be updated?

Це той випадок, для якого призначена функція процесу обробки груп повідомлень. Вона дає змогу додати тег до групи повідомлень, який позначає, на якій стадії вона знаходиться, як-то "переклад", "вичитка", "готово" або "опубліковано". Це дозволяє різним працівникам, що працюють над прес-релізом, ясно визначити поточний статус, не вдаючись до інших методів зв'язку між собою. Перекладачі можуть показати, що вони вже вважають свої переклади готовими, а інші перекладачі можуть побачити, які переклади уже опубліковано. Адміністратор перекладу може періодично перевіряти, які переклади уже готові, і публікувати їх, так само як і оновлювати уже опубліковані сторінки. Це і є процес обробки повідомлень, потік робіт. It lets you attach a tag to a message group indicating what state it is in, like "translating", "proofreading", "ready" or "published". This allows the different roles that work on a press release to explicitly expose the current state without the need of other communication methods. The translators can indicate when they consider their translations ready, and other translators can see what translations are already published. The translation administrator can periodically check which translations are ready and publish them, as well as update the pages that were already published. This is a workflow.

Налаштування

За замовчуванням, ця функція відключена. Її треба встановлювати у конфігурації вікі (LocalSettings.php ). Вам треба вирішити, які стани Ви хочете налаштувати, і призначити для них кольори у hex-форматі. Додатково Ви можете обрати групи користувачів, які за замовчуванням можуть змінювати стани.

Ось зразок конфігурації:


$wgTranslateWorkflowStates = array(
     'new' => array( 'color' => 'FF0000' ), // red
     'needs_proofreading' => array( 'color' => '0000FF' ), // blue
     'ready' => array( 'color' => 'FFFF00' ), // yellow
     'published' => array( 'color' => '00FF00' ), // green
); 

$wgGroupPermissions['translator']['translate-groupreview'] = true;

Групи повідомлень можуть відкидати глобальні стани процесу обробки і надавати власні. Вони можуть мати більш детальний контроль допуску за рівнем станів. Стан можуть обирати тільки групи користувачів, які мають таке право. They can do more granular permission control by state level. A state can only be selected by the user groups that have the specified right.

$wgTranslateWorkflowStates = array(
     'published' => array( 'color' => 'FF0000', 'right' => 'translate-publish' )
);

$wgGroupPermissions['translationadmin']['translate-publish'] = true;

Як використовувати

 
Статус відображається на сторінці Спеціальна:Переклад і його можна змінювати

Як тільки налаштування встановлено, і Спеціальна:Мовна статистика, і Спеціальна:Статистика груп повідомлень покажуть нову колонку для поточного стану, і всі таблиці можна буде сортувати за станом. Стан можна змінити на сторінці Спеціальна:Переклад: просто обрати групу і мову, і буде видно стан у верхньому кутку опису групи повідомлень.

Цей стан стосується однієї групи повідомлень однією мовою, скажімо, всього перекладу італійською мовою перекладабельної сторінки "Fréttinga". Окремі ж одиниці перекладу, навпаки, можуть бути ухвалені і цілі перекладабельні сторінки можуть бути зняті з подальшого перекладу. In contrast, individual translation units can be accepted and whole translatable pages can be discouraged from further translation.

Автоматичні зміни станів

З вересня 2012 року Translate підтримує автоматичні зміни станів. Наприклад, коли усі повідомлення перекладені, стан сам змінюється на "вичитка", а коли всі повідомлення ухвалені, стан змінюється на "готово".

Умови цих змін називаються переходами. Переходи можуть мати нуль і більше умов за такими змінними: UNTRANSLATED, OUTDATED, TRANSLATED, PROOFREAD. Кожна змінна представляє кількість повідомлень з таким статусом. Змінна UNTRANSLATED містить повідомлення OUTDATED. Кожна змінна може порівнюватись із трьома значеннями: ZERO, NONZERO і MAX. Наприклад, перехід до стану готово буде мати умову PROOFREAD is MAX. Див. приклад коду нижче. Transitions can have zero or more conditions on the following variables: UNTRANSLATED, OUTDATED, TRANSLATED, PROOFREAD. Each variable represents the number of messages in that state. UNTRANSLATED variable includes the OUTDATED messages. Each variable can be compared to three values: ZERO, NONZERO and MAX. For example transition to ready state would have condition PROOFREAD is MAX. See code example below.

The state of a language of a message group will be updated whenever a translation is changed or reviewed in that language. The state transitions are matched in the declaration order. All conditions must be fulfilled for the transition to match. If no transition matches, the message group will keep its existing state.

$wgTranslateWorkflowStates = array(
	// States
	// 'ready' => ( ... ),
	'state conditions' => array(
		array( 'ready', array( 'PROOFREAD' => 'MAX' ) ),
		array( 'proofreading', array( 'TRANSLATED' => 'MAX' ) ),
		array( 'unset', array( 'UNTRANSLATED' => 'MAX', 'OUTDATED' => 'ZERO', 'TRANSLATED' => 'ZERO' ) ),
		array( 'inprogress', array( 'UNTRANSLATED' => 'NONZERO' ) ),
	)
);