[ Index ]

PHP Cross Reference of Unnamed Project

title

Body

[close]

/se3master/var/www/se3/includes/library/HTMLPurifier/AttrDef/CSS/ -> Composite.php (source)

   1  <?php
   2  
   3  /**
   4   * Allows multiple validators to attempt to validate attribute.
   5   *
   6   * Composite is just what it sounds like: a composite of many validators.
   7   * This means that multiple HTMLPurifier_AttrDef objects will have a whack
   8   * at the string.  If one of them passes, that's what is returned.  This is
   9   * especially useful for CSS values, which often are a choice between
  10   * an enumerated set of predefined values or a flexible data type.
  11   */
  12  class HTMLPurifier_AttrDef_CSS_Composite extends HTMLPurifier_AttrDef
  13  {
  14  
  15      /**
  16       * List of objects that may process strings.
  17       * @type HTMLPurifier_AttrDef[]
  18       * @todo Make protected
  19       */
  20      public $defs;
  21  
  22      /**
  23       * @param HTMLPurifier_AttrDef[] $defs List of HTMLPurifier_AttrDef objects
  24       */
  25      public function __construct($defs)
  26      {
  27          $this->defs = $defs;
  28      }
  29  
  30      /**
  31       * @param string $string
  32       * @param HTMLPurifier_Config $config
  33       * @param HTMLPurifier_Context $context
  34       * @return bool|string
  35       */
  36      public function validate($string, $config, $context)
  37      {
  38          foreach ($this->defs as $i => $def) {
  39              $result = $this->defs[$i]->validate($string, $config, $context);
  40              if ($result !== false) {
  41                  return $result;
  42              }
  43          }
  44          return false;
  45      }
  46  }
  47  
  48  // vim: et sw=4 sts=4


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