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 }