1: | <?php
|
2: |
|
3: |
|
4: |
|
5: | |
6: | |
7: | |
8: | |
9: | |
10: | |
11: |
|
12: | class HTMLPurifier_AttrTransform_TargetNoreferrer extends HTMLPurifier_AttrTransform
|
13: | {
|
14: | |
15: | |
16: | |
17: | |
18: | |
19: |
|
20: | public function transform($attr, $config, $context)
|
21: | {
|
22: | if (isset($attr['rel'])) {
|
23: | $rels = explode(' ', $attr['rel']);
|
24: | } else {
|
25: | $rels = array();
|
26: | }
|
27: | if (isset($attr['target']) && !in_array('noreferrer', $rels)) {
|
28: | $rels[] = 'noreferrer';
|
29: | }
|
30: | if (!empty($rels) || isset($attr['rel'])) {
|
31: | $attr['rel'] = implode(' ', $rels);
|
32: | }
|
33: |
|
34: | return $attr;
|
35: | }
|
36: | }
|
37: |
|
38: | |