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   * Concrete text token class.

   5   *

   6   * Text tokens comprise of regular parsed character data (PCDATA) and raw

   7   * character data (from the CDATA sections). Internally, their

   8   * data is parsed with all entities expanded. Surprisingly, the text token

   9   * does have a "tag name" called #PCDATA, which is how the DTD represents it

  10   * in permissible child nodes.

  11   */
  12  class HTMLPurifier_Node_Text extends HTMLPurifier_Node
  13  {
  14  
  15      /**

  16       * PCDATA tag name compatible with DTD, see

  17       * HTMLPurifier_ChildDef_Custom for details.

  18       * @type string

  19       */
  20      public $name = '#PCDATA';
  21  
  22      /**

  23       * @type string

  24       */
  25      public $data;
  26      /**< Parsed character data of text. */

  27  
  28      /**

  29       * @type bool

  30       */
  31      public $is_whitespace;
  32  
  33      /**< Bool indicating if node is whitespace. */

  34  
  35      /**

  36       * Constructor, accepts data and determines if it is whitespace.

  37       * @param string $data String parsed character data.

  38       * @param int $line

  39       * @param int $col

  40       */
  41      public function __construct($data, $is_whitespace, $line = null, $col = null)
  42      {
  43          $this->data = $data;
  44          $this->is_whitespace = $is_whitespace;
  45          $this->line = $line;
  46          $this->col = $col;
  47      }
  48  
  49      public function toTokenPair() {
  50          return array(new HTMLPurifier_Token_Text($this->data, $this->line, $this->col), null);
  51      }
  52  }
  53  
  54  // vim: et sw=4 sts=4