vendor/ezsystems/ezplatform-kernel/eZ/Publish/Core/FieldType/Author/Value.php line 14

Open in your IDE?
  1. <?php
  2. /**
  3.  * @copyright Copyright (C) Ibexa AS. All rights reserved.
  4.  * @license For full copyright and license information view LICENSE file distributed with this source code.
  5.  */
  6. namespace eZ\Publish\Core\FieldType\Author;
  7. use eZ\Publish\Core\FieldType\Value as BaseValue;
  8. /**
  9.  * Value for Author field type.
  10.  */
  11. class Value extends BaseValue
  12. {
  13.     /**
  14.      * List of authors.
  15.      *
  16.      * @var \eZ\Publish\Core\FieldType\Author\AuthorCollection
  17.      */
  18.     public $authors;
  19.     /**
  20.      * Construct a new Value object and initialize with $authors.
  21.      *
  22.      * @param \eZ\Publish\Core\FieldType\Author\Author[] $authors
  23.      */
  24.     public function __construct(array $authors = [])
  25.     {
  26.         $this->authors = new AuthorCollection($authors);
  27.     }
  28.     /**
  29.      * @see \eZ\Publish\Core\FieldType\Value
  30.      */
  31.     public function __toString()
  32.     {
  33.         if (empty($this->authors)) {
  34.             return '';
  35.         }
  36.         $authorNames = [];
  37.         if ($this->authors instanceof AuthorCollection) {
  38.             foreach ($this->authors as $author) {
  39.                 $authorNames[] = $author->name;
  40.             }
  41.         }
  42.         return implode(', '$authorNames);
  43.     }
  44. }