[ Index ]

PHP Cross Reference of Unnamed Project

title

Body

[close]

/se3master/var/www/se3/includes/library/HTMLPurifier/ChildDef/ -> Optional.php (source)

   1  <?php
   2  
   3  /**
   4   * Definition that allows a set of elements, and allows no children.
   5   * @note This is a hack to reuse code from HTMLPurifier_ChildDef_Required,
   6   *       really, one shouldn't inherit from the other.  Only altered behavior
   7   *       is to overload a returned false with an array.  Thus, it will never
   8   *       return false.
   9   */
  10  class HTMLPurifier_ChildDef_Optional extends HTMLPurifier_ChildDef_Required
  11  {
  12      /**
  13       * @type bool
  14       */
  15      public $allow_empty = true;
  16  
  17      /**
  18       * @type string
  19       */
  20      public $type = 'optional';
  21  
  22      /**
  23       * @param array $children
  24       * @param HTMLPurifier_Config $config
  25       * @param HTMLPurifier_Context $context
  26       * @return array
  27       */
  28      public function validateChildren($children, $config, $context)
  29      {
  30          $result = parent::validateChildren($children, $config, $context);
  31          // we assume that $children is not modified
  32          if ($result === false) {
  33              if (empty($children)) {
  34                  return true;
  35              } elseif ($this->whitespace) {
  36                  return $children;
  37              } else {
  38                  return array();
  39              }
  40          }
  41          return $result;
  42      }
  43  }
  44  
  45  // vim: et sw=4 sts=4


Generated: Tue Mar 17 22:47:18 2015 Cross-referenced by PHPXref 0.7.1