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   * Class for handling width/height length attribute transformations to CSS

   5   */
   6  class HTMLPurifier_AttrTransform_Length extends HTMLPurifier_AttrTransform
   7  {
   8  
   9      /**

  10       * @type string

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

  15       * @type string

  16       */
  17      protected $cssName;
  18  
  19      public function __construct($name, $css_name = null)
  20      {
  21          $this->name = $name;
  22          $this->cssName = $css_name ? $css_name : $name;
  23      }
  24  
  25      /**

  26       * @param array $attr

  27       * @param HTMLPurifier_Config $config

  28       * @param HTMLPurifier_Context $context

  29       * @return array

  30       */
  31      public function transform($attr, $config, $context)
  32      {
  33          if (!isset($attr[$this->name])) {
  34              return $attr;
  35          }
  36          $length = $this->confiscateAttr($attr, $this->name);
  37          if (ctype_digit($length)) {
  38              $length .= 'px';
  39          }
  40          $this->prependCSS($attr, $this->cssName . ":$length;");
  41          return $attr;
  42      }
  43  }
  44  
  45  // vim: et sw=4 sts=4