Create job for multiple target languages

Created on 15 September 2013, over 11 years ago
Updated 2 September 2024, 4 months ago

I'm creating this issue, because already two key customers have requested this option.

By design, TMGMT supports ONE source and ONE target language per job.
However, (original) design doesn't matter too much, in case users define their real requirements different.

In order to support multiple target languages at the same time in UI, we either need to
- Change the design of a job
- Create multiple jobs through the UI

The cart might manage a real job (then it won't help), or it is an extra layer on top of the system without the per-job conditions/limitation.
#1416504: Add Cart system
One of the early ideas was to collect stuff in a/multiple named carts (different source languages allowed, no target language yet to be selected) and then create jobs out of it. The system would then help to do so.

Note that currently already we have a multiple-job creation wizard if you select multiple target languages in the translate tab. However, this does not apply for the job level.
Also, with the job creation UI, one design direction was to allow setting the target language even earlier to limit the perspective to that target language only. Then, the N target language columns in the overview would be reduced to one. D8 went that direction for the locale UI (to do translation). This will also bring us away from multi target languages.
Similar is the design direction to allow setting a source language: Usually, all source objects are added in their source language. Setting the job source language would list only content that allows to be used as source in a certain language - which might already be a translation. This chaining sometimes is required.

Tweaking this all is not that easy :-)

Feature request
Status

Needs review

Version

1.0

Component

Core

Created by

🇨🇭Switzerland miro_dietiker Switzerland

Live updates comments and jobs are added and updated live.
Sign in to follow issues

Merge Requests

Comments & Activities

Not all content is available!

It's likely this issue predates Contrib.social: some issue and comment data are missing.

  • 🇨🇭Switzerland berdir Switzerland

    Just a small update on this old issue.

    > "[ ] Use same settings for N additonal jobs"

    This does exist since 2018 already: #2913887: Allow to create jobs for multiple target languages from the source overview

    It's however still N separate jobs and translation provider API's are isolated to a single job, they have no idea how many are to come, how they are grouped and so on.

    A relatively easy addition that I recently discussed with someone would be a new interface "MultipleCheckoutInterface" that has requestTranslationMultiple(array $jobs), so if the selected provider supports that, instead of calling requestTranslation() in a loop on all jobs, we'd pass all jobs to it at once, and then it would be able to put them in a single translation project on its side or whatever.

  • First commit to issue fork.
  • Pipeline finished with Failed
    4 months ago
    Total: 454s
    #251519
  • Status changed to Needs review 4 months ago
  • 🇸🇮Slovenia primsi

    Created an initial MR.

    As proposed by @Berdir, a the MultipleCheckoutInterface is added.

    To be able to test this, go to admin/tmgmt/sources, from Target language select Multiple, check the languages and then Request translations. Submit to provider. And then, if the provider implements that interface, multiple jobs will be passed to the provider via JobCheckoutManager::requestTranslationMultiple.

    There is a MR for GlobalLink that implements that, which is WIP Send multiple jobs in a single batch Active

  • Pipeline finished with Success
    4 months ago
    Total: 325s
    #258149
  • Status changed to Needs work 4 months ago
  • 🇨🇭Switzerland berdir Switzerland

    Reviewed.

  • Status changed to Needs review 4 months ago
  • 🇸🇮Slovenia primsi

    Addressed.

  • Pipeline finished with Success
    4 months ago
    Total: 429s
    #266120
  • Pipeline finished with Success
    4 months ago
    Total: 336s
    #266918
  • 🇨🇭Switzerland berdir Switzerland

    Pushed a number of improvements, job queue is now properly cleaned up, jobs are submitted and the user is redirected back, as with the batch.

  • 🇨🇭Switzerland berdir Switzerland

    Updating the title to reflect what has been done here, the ability to process multiple jobs at once by a provider plugin.

    This feature has been sponsored by translations.com and was developed together with the implementation in the globallink project here: Send multiple jobs in a single batch Active . it is available to all integrations by implementing the new optional interface.

  • Pipeline finished with Skipped
    3 months ago
    #294657
  • 🇨🇭Switzerland berdir Switzerland

    Merged.

  • Automatically closed - issue fixed for 2 weeks with no activity.

Production build 0.71.5 2024