[ Index ]

PHP Cross Reference of Unnamed Project

title

Body

[close]

/se3master/var/www/se3/includes/library/HTMLPurifier/AttrTransform/ -> ImgRequired.php (source)

   1  <?php
   2  
   3  // must be called POST validation
   4  
   5  /**
   6   * Transform that supplies default values for the src and alt attributes
   7   * in img tags, as well as prevents the img tag from being removed
   8   * because of a missing alt tag. This needs to be registered as both
   9   * a pre and post attribute transform.
  10   */
  11  class HTMLPurifier_AttrTransform_ImgRequired extends HTMLPurifier_AttrTransform
  12  {
  13  
  14      /**
  15       * @param array $attr
  16       * @param HTMLPurifier_Config $config
  17       * @param HTMLPurifier_Context $context
  18       * @return array
  19       */
  20      public function transform($attr, $config, $context)
  21      {
  22          $src = true;
  23          if (!isset($attr['src'])) {
  24              if ($config->get('Core.RemoveInvalidImg')) {
  25                  return $attr;
  26              }
  27              $attr['src'] = $config->get('Attr.DefaultInvalidImage');
  28              $src = false;
  29          }
  30  
  31          if (!isset($attr['alt'])) {
  32              if ($src) {
  33                  $alt = $config->get('Attr.DefaultImageAlt');
  34                  if ($alt === null) {
  35                      // truncate if the alt is too long
  36                      $attr['alt'] = substr(basename($attr['src']), 0, 40);
  37                  } else {
  38                      $attr['alt'] = $alt;
  39                  }
  40              } else {
  41                  $attr['alt'] = $config->get('Attr.DefaultInvalidImageAlt');
  42              }
  43          }
  44          return $attr;
  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