Chris@0: moderationInfo = $moderation_info; Chris@0: } Chris@0: Chris@0: /** Chris@0: * {@inheritdoc} Chris@0: */ Chris@0: public function getValidTransitions(ContentEntityInterface $entity, AccountInterface $user) { Chris@0: $workflow = $this->moderationInfo->getWorkflowForEntity($entity); Chris@0: $current_state = $entity->moderation_state->value ? $workflow->getTypePlugin()->getState($entity->moderation_state->value) : $workflow->getTypePlugin()->getInitialState($entity); Chris@0: Chris@0: return array_filter($current_state->getTransitions(), function (Transition $transition) use ($workflow, $user) { Chris@0: return $user->hasPermission('use ' . $workflow->id() . ' transition ' . $transition->id()); Chris@0: }); Chris@0: } Chris@0: Chris@0: }