Details

    • Type: Sub-task
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 1.9
    • Fix Version/s: 1.9
    • Component/s: Language
    • Labels:
      None
    • Affected Branches:
      MOODLE_19_STABLE
    • Fixed Branches:
      MOODLE_19_STABLE

      Description

      Based on several discussions, I propose to introduce two new core capabilities regarding string translation. These capabilities control if a user (i.e. a role) is able to maintain/edit language packages (called "master lang pack") and/or customize the translation by editing _local packages (called "local lang pack").

      The capability "Customize local translation" is set to "Allow" by default to an legacy:admin by default.

      The capability "Edit master language packages" is prevented from all users by default. It is intended that language maintainers have to manually allow this to themselves. This shall prevent accidental modifications and especially their lost during the upgrade.

      I have got lang.php patch ready to respect these new capabilities. I am just waiting for including them into the core. There is a diff implementing this:

      Index: lib/db/access.php
      ===================================================================
      RCS file: /cvsroot/moodle/moodle/lib/db/access.php,v
      retrieving revision 1.60
      diff -c -r1.60 access.php

          • lib/db/access.php 5 Jul 2007 06:53:18 -0000 1.60
          • lib/db/access.php 23 Jul 2007 16:15:32 -0000
            ***************
          • 238,244 ****
          • 238,265 ----
            )
            ),

      + 'moodle/site:langeditmaster' => array(

      + 'riskbitmask' => RISK_CONFIG | RISK_XSS,
      +
      + 'captype' => 'write',
      + 'contextlevel' => CONTEXT_SYSTEM,
      + 'legacy' => array(
      + 'admin' => CAP_PREVENT
      + )
      + ),
      +
      + 'moodle/site:langeditlocal' => array(
      +
      + 'riskbitmask' => RISK_CONFIG | RISK_XSS,
      +
      + 'captype' => 'write',
      + 'contextlevel' => CONTEXT_SYSTEM,
      + 'legacy' => array(
      + 'admin' => CAP_ALLOW
      + )
      + ),
      +
      'moodle/user:create' => array(

      'riskbitmask' => RISK_SPAM | RISK_PERSONAL,
      Index: lang/en_utf8/role.php
      ===================================================================
      RCS file: /cvsroot/moodle/moodle/lang/en_utf8/role.php,v
      retrieving revision 1.36
      diff -c -r1.36 role.php

          • lang/en_utf8/role.php 5 Jul 2007 06:53:17 -0000 1.36
          • lang/en_utf8/role.php 23 Jul 2007 16:15:32 -0000
            ***************
          • 117,122 ****
          • 117,124 ----
            $string['site:doanything'] = 'Allowed to do everything';
            $string['site:doclinks'] = 'Show links to offsite docs';
            $string['site:import'] = 'Import other courses into a course';
            + $string['site:langeditmaster'] = 'Edit master language packages';
            + $string['site:langeditlocal'] = 'Customize local translation';
            $string['site:manageblocks'] = 'Manage site-level blocks';
            $string['site:readallmessages'] = 'Read all messages on site';
            $string['site:restore'] = 'Restore courses';

        Attachments

          Activity

            People

            • Assignee:
              skodak Petr Skoda
              Reporter:
              mudrd8mz David Mudrák (@mudrd8mz)
              Tester:
              Nobody
              Participants:
              Component watchers:
              cameron1729, David Mudrák (@mudrd8mz), Helen Foster
            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:
                Fix Release Date:
                3/Mar/08