Mercurial > hg > isophonics-drupal-site
comparison core/modules/taxonomy/src/VocabularyListBuilder.php @ 17:129ea1e6d783
Update, including to Drupal core 8.6.10
author | Chris Cannam |
---|---|
date | Thu, 28 Feb 2019 13:21:36 +0000 |
parents | c2387f117808 |
children |
comparison
equal
deleted
inserted
replaced
16:c2387f117808 | 17:129ea1e6d783 |
---|---|
5 use Drupal\Core\Config\Entity\DraggableListBuilder; | 5 use Drupal\Core\Config\Entity\DraggableListBuilder; |
6 use Drupal\Core\Entity\EntityInterface; | 6 use Drupal\Core\Entity\EntityInterface; |
7 use Drupal\Core\Entity\EntityTypeInterface; | 7 use Drupal\Core\Entity\EntityTypeInterface; |
8 use Drupal\Core\Entity\EntityTypeManagerInterface; | 8 use Drupal\Core\Entity\EntityTypeManagerInterface; |
9 use Drupal\Core\Form\FormStateInterface; | 9 use Drupal\Core\Form\FormStateInterface; |
10 use Drupal\Core\Messenger\MessengerInterface; | |
10 use Drupal\Core\Render\RendererInterface; | 11 use Drupal\Core\Render\RendererInterface; |
11 use Drupal\Core\Session\AccountInterface; | 12 use Drupal\Core\Session\AccountInterface; |
12 use Drupal\Core\Url; | 13 use Drupal\Core\Url; |
13 use Symfony\Component\DependencyInjection\ContainerInterface; | 14 use Symfony\Component\DependencyInjection\ContainerInterface; |
14 | 15 |
42 * The renderer service. | 43 * The renderer service. |
43 * | 44 * |
44 * @var \Drupal\Core\Render\RendererInterface | 45 * @var \Drupal\Core\Render\RendererInterface |
45 */ | 46 */ |
46 protected $renderer; | 47 protected $renderer; |
48 | |
49 /** | |
50 * The messenger. | |
51 * | |
52 * @var \Drupal\Core\Messenger\MessengerInterface | |
53 */ | |
54 protected $messenger; | |
47 | 55 |
48 /** | 56 /** |
49 * Constructs a new VocabularyListBuilder object. | 57 * Constructs a new VocabularyListBuilder object. |
50 * | 58 * |
51 * @param \Drupal\Core\Entity\EntityTypeInterface $entity_type | 59 * @param \Drupal\Core\Entity\EntityTypeInterface $entity_type |
54 * The current user. | 62 * The current user. |
55 * @param \Drupal\Core\Entity\EntityTypeManagerInterface $entity_type_manager | 63 * @param \Drupal\Core\Entity\EntityTypeManagerInterface $entity_type_manager |
56 * The entity manager service. | 64 * The entity manager service. |
57 * @param \Drupal\Core\Render\RendererInterface $renderer | 65 * @param \Drupal\Core\Render\RendererInterface $renderer |
58 * The renderer service. | 66 * The renderer service. |
59 */ | 67 * @param \Drupal\Core\Messenger\MessengerInterface $messenger |
60 public function __construct(EntityTypeInterface $entity_type, AccountInterface $current_user, EntityTypeManagerInterface $entity_type_manager, RendererInterface $renderer = NULL) { | 68 * The messenger. |
69 */ | |
70 public function __construct(EntityTypeInterface $entity_type, | |
71 AccountInterface $current_user, | |
72 EntityTypeManagerInterface $entity_type_manager, | |
73 RendererInterface $renderer = NULL, | |
74 MessengerInterface $messenger) { | |
61 parent::__construct($entity_type, $entity_type_manager->getStorage($entity_type->id())); | 75 parent::__construct($entity_type, $entity_type_manager->getStorage($entity_type->id())); |
62 | 76 |
63 $this->currentUser = $current_user; | 77 $this->currentUser = $current_user; |
64 $this->entityTypeManager = $entity_type_manager; | 78 $this->entityTypeManager = $entity_type_manager; |
65 $this->renderer = $renderer; | 79 $this->renderer = $renderer; |
80 $this->messenger = $messenger; | |
66 } | 81 } |
67 | 82 |
68 /** | 83 /** |
69 * {@inheritdoc} | 84 * {@inheritdoc} |
70 */ | 85 */ |
71 public static function createInstance(ContainerInterface $container, EntityTypeInterface $entity_type) { | 86 public static function createInstance(ContainerInterface $container, EntityTypeInterface $entity_type) { |
72 return new static( | 87 return new static( |
73 $entity_type, | 88 $entity_type, |
74 $container->get('current_user'), | 89 $container->get('current_user'), |
75 $container->get('entity_type.manager'), | 90 $container->get('entity_type.manager'), |
76 $container->get('renderer') | 91 $container->get('renderer'), |
92 $container->get('messenger') | |
77 ); | 93 ); |
78 } | 94 } |
79 | 95 |
80 /** | 96 /** |
81 * {@inheritdoc} | 97 * {@inheritdoc} |
159 $access_control_handler = $this->entityTypeManager->getAccessControlHandler('taxonomy_vocabulary'); | 175 $access_control_handler = $this->entityTypeManager->getAccessControlHandler('taxonomy_vocabulary'); |
160 $create_access = $access_control_handler->createAccess(NULL, NULL, [], TRUE); | 176 $create_access = $access_control_handler->createAccess(NULL, NULL, [], TRUE); |
161 $this->renderer->addCacheableDependency($build['table'], $create_access); | 177 $this->renderer->addCacheableDependency($build['table'], $create_access); |
162 if ($create_access->isAllowed()) { | 178 if ($create_access->isAllowed()) { |
163 $build['table']['#empty'] = t('No vocabularies available. <a href=":link">Add vocabulary</a>.', [ | 179 $build['table']['#empty'] = t('No vocabularies available. <a href=":link">Add vocabulary</a>.', [ |
164 ':link' => Url::fromRoute('entity.taxonomy_vocabulary.add_form')->toString() | 180 ':link' => Url::fromRoute('entity.taxonomy_vocabulary.add_form')->toString(), |
165 ]); | 181 ]); |
166 } | 182 } |
167 else { | 183 else { |
168 $build['table']['#empty'] = t('No vocabularies available.'); | 184 $build['table']['#empty'] = t('No vocabularies available.'); |
169 } | 185 } |
187 * {@inheritdoc} | 203 * {@inheritdoc} |
188 */ | 204 */ |
189 public function submitForm(array &$form, FormStateInterface $form_state) { | 205 public function submitForm(array &$form, FormStateInterface $form_state) { |
190 parent::submitForm($form, $form_state); | 206 parent::submitForm($form, $form_state); |
191 | 207 |
192 drupal_set_message(t('The configuration options have been saved.')); | 208 $this->messenger->addStatus($this->t('The configuration options have been saved.')); |
193 } | 209 } |
194 | 210 |
195 } | 211 } |