Uploaded image for project: 'Moodle'
  1. Moodle
  2. MDL-66197

When installing multiple languages with parents only the first parent is installed

    XMLWordPrintable

Details

    • MOODLE_36_STABLE, MOODLE_37_STABLE, MOODLE_38_STABLE
    • MOODLE_36_STABLE, MOODLE_37_STABLE
    • MDL-66197-master
    • Hide
      • Go to site administration->Languages->Language packs
      • Select two languages that have parent language packs but the parent language packs are not yet installed; do not select parent packs. For example, select "es_wp" and "de_wp" (make sure that "es" and "de" are neither installed nor selected)
      • Push button to install languages
      • Make sure four languages are installed: "es_wp", "de_wp", "de" and "es"
      • Set $CFG->langlist to something (for example "en,de_wp")
      • Go to site administration->Languages->Language packs
      • Select any language that has a parent (any language with a code that ends with _wp), again, make sure that parent language is neither installed nor selected
      • Push install
      • Make sure the language is installed and the parent is also installed
      Show
      Go to site administration->Languages->Language packs Select two languages that have parent language packs but the parent language packs are not yet installed; do not select parent packs. For example, select "es_wp" and "de_wp" (make sure that "es" and "de" are neither installed nor selected) Push button to install languages Make sure four languages are installed: "es_wp", "de_wp", "de" and "es" Set $CFG->langlist to something (for example "en,de_wp") Go to site administration->Languages->Language packs Select any language that has a parent (any language with a code that ends with _wp), again, make sure that parent language is neither installed nor selected Push install Make sure the language is installed and the parent is also installed

    Description

      Reproduction steps:

      • Go to site administration->Languages->Language packs
      • Select two languages that have parent language packs but the parent language packs are not yet installed; do not select parent packs. For example, select "es_wp" and "de_wp" (make sure that "es" and "de" are neither installed nor selected)
      • Push button to install languages
      • You will see that three languages are installed: "es_wp", "de_wp" and "de". Language "es" is not installed

      If you reload the same page you will see an error message that language "es" is not installed.

      This happens because of the list of translations is cached after the first language is installed and after the second language is installed it can not be found and the parent of it can not be found.

      If $CFG->langlist is set, the parent would not be installed even for one language.

      We find it very annoying on workplacedemo site where we regularly install multiple workplace language packs.

      Attachments

        Issue Links

          Activity

            People

              marina Marina Glancy
              marina Marina Glancy
              Peter Dias Peter Dias
              Eloy Lafuente (stronk7) Eloy Lafuente (stronk7)
              Jennifer Bauzon Jennifer Bauzon
              Votes:
              1 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:
                11/Nov/19

                Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0 minutes
                  0m
                  Logged:
                  Time Spent - 1 hour, 11 minutes
                  1h 11m