CommentFieldDiffParser.php in Entity Share 8.3
File
modules/entity_share_diff/src/Plugin/DiffGenerator/CommentFieldDiffParser.php
View source
<?php
declare (strict_types=1);
namespace Drupal\entity_share_diff\Plugin\DiffGenerator;
use Drupal\Core\Field\FieldItemListInterface;
use Drupal\comment\Plugin\Field\FieldType\CommentItemInterface;
use Drupal\entity_share_diff\DiffGenerator\DiffGeneratorPluginBase;
class CommentFieldDiffParser extends DiffGeneratorPluginBase {
public function build(FieldItemListInterface $field_items, array $remote_field_data = []) {
$result = [];
foreach ($field_items as $field_key => $field_item) {
if (!$field_item
->isEmpty()) {
$values = $field_item
->getValue();
if (isset($values['status'])) {
switch ($values['status']) {
case CommentItemInterface::OPEN:
$result[$field_key] = (string) $this
->t('Comments for this entity are open.');
break;
case CommentItemInterface::CLOSED:
$result[$field_key] = (string) $this
->t('Comments for this entity are closed.');
break;
case CommentItemInterface::HIDDEN:
$result[$field_key] = (string) $this
->t('Comments for this entity are hidden.');
break;
}
}
}
}
return $result;
}
}