/** * {@inheritdoc} */ public function buildForm(array $form, FormStateInterface $form_state) { if ($this->entity && $this->entityTypeDefinition->hasHandlerClass('entity_clone')) { $form['information'] = [ '#markup' => $this->stringTranslationManager->translate('<p>Do you want clone the <em>@entity_type</em> entity named <em>@title</em>?</p>', [ '@entity_type' => $this->entity->getEntityType()->getLabel(), '@title' => $this->entity->label(), ]), ]; /** @var \Drupal\entity_clone\EntityClone\EntityCloneFormInterface $entity_clone_handler */ if ($this->entityTypeManager->hasHandler($this->entityTypeDefinition->id(), 'entity_clone_form')) { $entity_clone_form_handler = $this->entityTypeManager->getHandler($this->entityTypeDefinition->id(), 'entity_clone_form'); $form = array_merge($form, $entity_clone_form_handler->formElement($this->entity)); } $form['clone'] = [ '#type' => 'submit', '#value' => 'Clone', ]; $form['abort'] = [ '#type' => 'submit', '#value' => 'Abort', '#submit' => '::cancelForm', ]; } return $form; }
/** * {@inheritdoc} */ public function canModerateEntitiesOfEntityType(EntityTypeInterface $entity_type) { return $entity_type->hasHandlerClass('moderation'); }
/** * {@inheritdoc} */ public function isModeratableEntityType(EntityTypeInterface $entity_type) { return $entity_type->hasHandlerClass('moderation'); }