PrivateCommentEmbeddable created and added to entities + datamapper

This commit is contained in:
2022-04-26 20:21:33 +02:00
parent 64b5de2c03
commit 37a198b860
8 changed files with 167 additions and 32 deletions

View File

@@ -0,0 +1,44 @@
<?php
/**
* Chill is a software for social workers
*
* For the full copyright and license information, please view
* the LICENSE file that was distributed with this source code.
*/
declare(strict_types=1);
namespace Chill\MainBundle\Entity\Embeddable;
use Chill\MainBundle\Entity\User;
use Doctrine\ORM\Mapping as ORM;
/**
* @ORM\Embeddable
*/
class PrivateCommentEmbeddable
{
/**
* @ORM\Column(type="json", nullable=true)
*/
private ?array $comments = [];
public function getComments(): ?array
{
return $this->comments;
}
public function getCommentForUser(User $user): string
{
return $this->comments[$user->getId()] ?? '';
}
public function setCommentForUser(User $user, string $content): self
{
$this->comments[$user->getId()] = $content;
return $this;
}
}