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   * Decorator which enables CSS properties to be disabled for specific elements.

   5   */
   6  class HTMLPurifier_AttrDef_CSS_DenyElementDecorator extends HTMLPurifier_AttrDef
   7  {
   8      /**

   9       * @type HTMLPurifier_AttrDef

  10       */
  11      public $def;
  12      /**

  13       * @type string

  14       */
  15      public $element;
  16  
  17      /**

  18       * @param HTMLPurifier_AttrDef $def Definition to wrap

  19       * @param string $element Element to deny

  20       */
  21      public function __construct($def, $element)
  22      {
  23          $this->def = $def;
  24          $this->element = $element;
  25      }
  26  
  27      /**

  28       * Checks if CurrentToken is set and equal to $this->element

  29       * @param string $string

  30       * @param HTMLPurifier_Config $config

  31       * @param HTMLPurifier_Context $context

  32       * @return bool|string

  33       */
  34      public function validate($string, $config, $context)
  35      {
  36          $token = $context->get('CurrentToken', true);
  37          if ($token && $token->name == $this->element) {
  38              return false;
  39          }
  40          return $this->def->validate($string, $config, $context);
  41      }
  42  }
  43  
  44  // vim: et sw=4 sts=4