Skip to content
Snippets Groups Projects

Issue #3303087: Misleading debug message from the load entity plugin

Merged Issue #3303087: Misleading debug message from the load entity plugin
All threads resolved!
Merged Jürgen Haas requested to merge issue/eca-3303087:3303087-misleading-debug-message into 1.1.x
All threads resolved!
Files
2
@@ -3,6 +3,7 @@
namespace Drupal\eca_content\Plugin\Action;
use Drupal\Core\Access\AccessResult;
use Drupal\Core\Access\AccessResultReasonInterface;
use Drupal\Core\Entity\EntityInterface;
use Drupal\Core\Form\FormStateInterface;
use Drupal\Core\Session\AccountInterface;
@@ -52,8 +53,18 @@ class LoadEntity extends ConfigurableActionBase {
*/
public function access($object, ?AccountInterface $account = NULL, $return_as_object = FALSE) {
$access_result = AccessResult::forbidden();
$reason = NULL;
if ($entity = $this->doLoadEntity($object)) {
$access_result = $entity->access('view', $account, TRUE);
if (!$access_result->isAllowed()) {
$reason = 'No permission to view the entity.';
}
}
else {
$reason = 'No entity available.';
}
if ($reason !== NULL && $access_result instanceof AccessResultReasonInterface) {
$access_result->setReason($reason);
}
return $return_as_object ? $access_result : $access_result->isAllowed();
}
Loading