1 | <?php |
||
13 | class Description extends RuleAbstract |
||
14 | { |
||
15 | const NODE_NAME = 'description'; |
||
16 | |||
17 | /** |
||
18 | * @param NodeInterface $node |
||
19 | * @param \DOMElement $element |
||
20 | * @return $this |
||
21 | */ |
||
22 | 8 | public function setProperty(NodeInterface $node, \DOMElement $element) |
|
23 | { |
||
24 | 8 | $string = ''; |
|
25 | 8 | if ($element->firstChild && $element->firstChild->nodeType == XML_CDATA_SECTION_NODE) { |
|
26 | $string = $element->firstChild->textContent; |
||
27 | } else { |
||
28 | 8 | foreach ($element->childNodes as $childNode) { |
|
29 | 8 | $string .= $element->ownerDocument->saveXML($childNode); |
|
30 | } |
||
31 | } |
||
32 | |||
33 | 8 | $node->setDescription(htmlspecialchars_decode($string)); |
|
34 | |||
35 | 8 | return $this; |
|
36 | } |
||
37 | |||
38 | /** |
||
39 | * creates the accurate DomElement content according to the $item's property |
||
40 | * |
||
41 | * @param \DOMDocument $document |
||
42 | * @param NodeInterface $node |
||
43 | * @return \DOMElement |
||
44 | */ |
||
45 | 3 | public function createElement(\DOMDocument $document, NodeInterface $node) |
|
51 | } |
||
52 |