Search moodle.org's
Developer Documentation

See Release Notes

  • Bug fixes for general core bugs in 3.10.x will end 8 November 2021 (12 months).
  • Bug fixes for security issues in 3.10.x will end 9 May 2022 (18 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   * Pre-transform that changes converts a boolean attribute to fixed CSS

   5   */
   6  class HTMLPurifier_AttrTransform_BoolToCSS extends HTMLPurifier_AttrTransform
   7  {
   8      /**

   9       * Name of boolean attribute that is trigger.

  10       * @type string

  11       */
  12      protected $attr;
  13  
  14      /**

  15       * CSS declarations to add to style, needs trailing semicolon.

  16       * @type string

  17       */
  18      protected $css;
  19  
  20      /**

  21       * @param string $attr attribute name to convert from

  22       * @param string $css CSS declarations to add to style (needs semicolon)

  23       */
  24      public function __construct($attr, $css)
  25      {
  26          $this->attr = $attr;
  27          $this->css = $css;
  28      }
  29  
  30      /**

  31       * @param array $attr

  32       * @param HTMLPurifier_Config $config

  33       * @param HTMLPurifier_Context $context

  34       * @return array

  35       */
  36      public function transform($attr, $config, $context)
  37      {
  38          if (!isset($attr[$this->attr])) {
  39              return $attr;
  40          }
  41          unset($attr[$this->attr]);
  42          $this->prependCSS($attr, $this->css);
  43          return $attr;
  44      }
  45  }
  46  
  47  // vim: et sw=4 sts=4