Proyectos de Subversion Moodle

Rev

| Ultima modificación | Ver Log |

Rev Autor Línea Nro. Línea
1 efrain 1
<?php
2
 
3
/**
4
 * Simple transformation, just change tag name to something else,
5
 * and possibly add some styling. This will cover most of the deprecated
6
 * tag cases.
7
 */
8
class HTMLPurifier_TagTransform_Simple extends HTMLPurifier_TagTransform
9
{
10
    /**
11
     * @type string
12
     */
13
    protected $style;
14
 
15
    /**
16
     * @param string $transform_to Tag name to transform to.
17
     * @param string $style CSS style to add to the tag
18
     */
19
    public function __construct($transform_to, $style = null)
20
    {
21
        $this->transform_to = $transform_to;
22
        $this->style = $style;
23
    }
24
 
25
    /**
26
     * @param HTMLPurifier_Token_Tag $tag
27
     * @param HTMLPurifier_Config $config
28
     * @param HTMLPurifier_Context $context
29
     * @return string
30
     */
31
    public function transform($tag, $config, $context)
32
    {
33
        $new_tag = clone $tag;
34
        $new_tag->name = $this->transform_to;
35
        if (!is_null($this->style) &&
36
            ($new_tag instanceof HTMLPurifier_Token_Start || $new_tag instanceof HTMLPurifier_Token_Empty)
37
        ) {
38
            $this->prependCSS($new_tag->attr, $this->style);
39
        }
40
        return $new_tag;
41
    }
42
}
43
 
44
// vim: et sw=4 sts=4