vendor/ezsystems/ezplatform-richtext/src/lib/eZ/FieldType/RichText/Value.php line 17

Open in your IDE?
  1. <?php
  2. /**
  3.  * @copyright Copyright (C) eZ Systems AS. All rights reserved.
  4.  * @license For full copyright and license information view LICENSE file distributed with this source code.
  5.  */
  6. declare(strict_types=1);
  7. namespace EzSystems\EzPlatformRichText\eZ\FieldType\RichText;
  8. use eZ\Publish\Core\FieldType\Value as BaseValue;
  9. use DOMDocument;
  10. /**
  11.  * Value for RichText field type.
  12.  */
  13. class Value extends BaseValue
  14. {
  15.     const EMPTY_VALUE = <<<EOT
  16. <?xml version="1.0" encoding="UTF-8"?>
  17. <section xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" version="5.0-variant ezpublish-1.0"/>
  18. EOT;
  19.     /**
  20.      * XML content as DOMDocument.
  21.      *
  22.      * @var \DOMDocument
  23.      */
  24.     public $xml;
  25.     /**
  26.      * Initializes a new RichText Value object with $xmlDoc in.
  27.      *
  28.      * @param \DOMDocument|string $xml
  29.      */
  30.     public function __construct($xml null)
  31.     {
  32.         if ($xml instanceof DOMDocument) {
  33.             $this->xml $xml;
  34.         } else {
  35.             $this->xml = new DOMDocument();
  36.             $this->xml->loadXML($xml === null self::EMPTY_VALUE $xml);
  37.         }
  38.     }
  39.     /**
  40.      * @see \eZ\Publish\Core\FieldType\Value
  41.      */
  42.     public function __toString()
  43.     {
  44.         return isset($this->xml) ? (string)$this->xml->saveXML() : self::EMPTY_VALUE;
  45.     }
  46. }