certificate-4.0.0-alpha1/src/Form/CertificateTypeForm.php
src/Form/CertificateTypeForm.php
<?php
namespace Drupal\certificate\Form;
use Drupal\Core\Entity\BundleEntityFormBase;
use Drupal\Core\Entity\EntityTypeInterface;
use Drupal\Core\Form\FormStateInterface;
class CertificateTypeForm extends BundleEntityFormBase {
/**
* @{inheritdoc}
*/
public function form(array $form, FormStateInterface $form_state) {
$form = parent::form($form, $form_state);
$course_type = $this->entity;
$form['label'] = [
'#title' => t('Label'),
'#type' => 'textfield',
'#default_value' => $course_type->label(),
'#description' => t('The admin-facing name.'),
'#required' => TRUE,
];
$form['id'] = [
'#type' => 'machine_name',
'#default_value' => $course_type->id(),
'#maxlength' => EntityTypeInterface::BUNDLE_MAX_LENGTH,
'#machine_name' => [
'exists' => '\Drupal\certificate\Entity\CertificateType::load',
'source' => ['label'],
],
];
$form['description'] = [
'#title' => t('Description'),
'#type' => 'textarea',
'#default_value' => $course_type->get('description'),
];
return $form;
}
}
