[ Index ]

PHP Cross Reference of vtigercrm-6.1.0

title

Body

[close]

/libraries/htmlpurifier/library/HTMLPurifier/AttrDef/CSS/ -> Border.php (source)

   1  <?php
   2  
   3  /**
   4   * Validates the border property as defined by CSS.
   5   */
   6  class HTMLPurifier_AttrDef_CSS_Border extends HTMLPurifier_AttrDef
   7  {
   8  
   9      /**
  10       * Local copy of properties this property is shorthand for.
  11       */
  12      protected $info = array();
  13  
  14      public function __construct($config) {
  15          $def = $config->getCSSDefinition();
  16          $this->info['border-width'] = $def->info['border-width'];
  17          $this->info['border-style'] = $def->info['border-style'];
  18          $this->info['border-top-color'] = $def->info['border-top-color'];
  19      }
  20  
  21      public function validate($string, $config, $context) {
  22          $string = $this->parseCDATA($string);
  23          $string = $this->mungeRgb($string);
  24          $bits = explode(' ', $string);
  25          $done = array(); // segments we've finished
  26          $ret = ''; // return value
  27          foreach ($bits as $bit) {
  28              foreach ($this->info as $propname => $validator) {
  29                  if (isset($done[$propname])) continue;
  30                  $r = $validator->validate($bit, $config, $context);
  31                  if ($r !== false) {
  32                      $ret .= $r . ' ';
  33                      $done[$propname] = true;
  34                      break;
  35                  }
  36              }
  37          }
  38          return rtrim($ret);
  39      }
  40  
  41  }
  42  
  43  // vim: et sw=4 sts=4


Generated: Fri Nov 28 20:08:37 2014 Cross-referenced by PHPXref 0.7.1