Search moodle.org's
Developer Documentation

See Release Notes
Long Term Support Release

  • Bug fixes for general core bugs in 3.9.x will end* 10 May 2021 (12 months).
  • Bug fixes for security issues in 3.9.x will end* 8 May 2023 (36 months).
  • PHP version: minimum PHP 7.2.0 Note: minimum PHP version has increased since Moodle 3.8. PHP 7.3.x and 7.4.x are supported too.
   1  <?php
   2  
   3  /**

   4   * Post-transform that copies lang's value to xml:lang (and vice-versa)

   5   * @note Theoretically speaking, this could be a pre-transform, but putting

   6   *       post is more efficient.

   7   */
   8  class HTMLPurifier_AttrTransform_Lang extends HTMLPurifier_AttrTransform
   9  {
  10  
  11      /**

  12       * @param array $attr

  13       * @param HTMLPurifier_Config $config

  14       * @param HTMLPurifier_Context $context

  15       * @return array

  16       */
  17      public function transform($attr, $config, $context)
  18      {
  19          $lang = isset($attr['lang']) ? $attr['lang'] : false;
  20          $xml_lang = isset($attr['xml:lang']) ? $attr['xml:lang'] : false;
  21  
  22          if ($lang !== false && $xml_lang === false) {
  23              $attr['xml:lang'] = $lang;
  24          } elseif ($xml_lang !== false) {
  25              $attr['lang'] = $xml_lang;
  26          }
  27          return $attr;
  28      }
  29  }
  30  
  31  // vim: et sw=4 sts=4