Mercurial > hg > isophonics-drupal-site
comparison core/modules/language/src/LanguageListBuilder.php @ 17:129ea1e6d783
Update, including to Drupal core 8.6.10
author | Chris Cannam |
---|---|
date | Thu, 28 Feb 2019 13:21:36 +0000 |
parents | 4c8ae668cc8c |
children | af1871eacc83 |
comparison
equal
deleted
inserted
replaced
16:c2387f117808 | 17:129ea1e6d783 |
---|---|
7 use Drupal\Core\Entity\EntityInterface; | 7 use Drupal\Core\Entity\EntityInterface; |
8 use Drupal\Core\Entity\EntityStorageInterface; | 8 use Drupal\Core\Entity\EntityStorageInterface; |
9 use Drupal\Core\Entity\EntityTypeInterface; | 9 use Drupal\Core\Entity\EntityTypeInterface; |
10 use Drupal\Core\Form\FormStateInterface; | 10 use Drupal\Core\Form\FormStateInterface; |
11 use Drupal\Core\Language\LanguageManagerInterface; | 11 use Drupal\Core\Language\LanguageManagerInterface; |
12 use Drupal\Core\Messenger\MessengerInterface; | |
12 use Symfony\Component\DependencyInjection\ContainerInterface; | 13 use Symfony\Component\DependencyInjection\ContainerInterface; |
13 | 14 |
14 /** | 15 /** |
15 * Defines a class to build a listing of language entities. | 16 * Defines a class to build a listing of language entities. |
16 * | 17 * |
36 * @var \Drupal\Core\Config\ConfigFactoryInterface | 37 * @var \Drupal\Core\Config\ConfigFactoryInterface |
37 */ | 38 */ |
38 protected $configFactory; | 39 protected $configFactory; |
39 | 40 |
40 /** | 41 /** |
42 * The messenger. | |
43 * | |
44 * @var \Drupal\Core\Messenger\MessengerInterface | |
45 */ | |
46 protected $messenger; | |
47 | |
48 /** | |
41 * {@inheritdoc} | 49 * {@inheritdoc} |
42 */ | 50 */ |
43 public static function createInstance(ContainerInterface $container, EntityTypeInterface $entity_type) { | 51 public static function createInstance(ContainerInterface $container, EntityTypeInterface $entity_type) { |
44 return new static( | 52 return new static( |
45 $entity_type, | 53 $entity_type, |
46 $container->get('entity.manager')->getStorage($entity_type->id()), | 54 $container->get('entity.manager')->getStorage($entity_type->id()), |
47 $container->get('language_manager'), | 55 $container->get('language_manager'), |
48 $container->get('config.factory') | 56 $container->get('config.factory'), |
57 $container->get('messenger') | |
49 ); | 58 ); |
50 } | 59 } |
51 | 60 |
52 /** | 61 /** |
53 * Constructs a new LanguageListBuilder object. | 62 * Constructs a new LanguageListBuilder object. |
58 * The entity storage handler class. | 67 * The entity storage handler class. |
59 * @param \Drupal\Core\Language\LanguageManagerInterface $language_manager | 68 * @param \Drupal\Core\Language\LanguageManagerInterface $language_manager |
60 * The language manager. | 69 * The language manager. |
61 * @param \Drupal\Core\Config\ConfigFactoryInterface $config_factory | 70 * @param \Drupal\Core\Config\ConfigFactoryInterface $config_factory |
62 * The factory for configuration objects. | 71 * The factory for configuration objects. |
72 * @param \Drupal\Core\Messenger\MessengerInterface $messenger | |
73 * The messenger. | |
63 */ | 74 */ |
64 public function __construct(EntityTypeInterface $entity_type, EntityStorageInterface $storage, LanguageManagerInterface $language_manager, ConfigFactoryInterface $config_factory) { | 75 public function __construct(EntityTypeInterface $entity_type, EntityStorageInterface $storage, LanguageManagerInterface $language_manager, ConfigFactoryInterface $config_factory, MessengerInterface $messenger) { |
65 parent::__construct($entity_type, $storage); | 76 parent::__construct($entity_type, $storage); |
66 $this->languageManager = $language_manager; | 77 $this->languageManager = $language_manager; |
67 $this->configFactory = $config_factory; | 78 $this->configFactory = $config_factory; |
79 $this->messenger = $messenger; | |
68 } | 80 } |
69 | 81 |
70 /** | 82 /** |
71 * {@inheritdoc} | 83 * {@inheritdoc} |
72 */ | 84 */ |
152 | 164 |
153 if ($this->languageManager instanceof ConfigurableLanguageManagerInterface) { | 165 if ($this->languageManager instanceof ConfigurableLanguageManagerInterface) { |
154 $this->languageManager->updateLockedLanguageWeights(); | 166 $this->languageManager->updateLockedLanguageWeights(); |
155 } | 167 } |
156 | 168 |
157 drupal_set_message(t('Configuration saved.')); | 169 $this->messenger->addStatus($this->t('Configuration saved.')); |
158 // Force the redirection to the page with the language we have just | 170 // Force the redirection to the page with the language we have just |
159 // selected as default. | 171 // selected as default. |
160 $form_state->setRedirectUrl($this->entities[$new_id]->urlInfo('collection', ['language' => $this->entities[$new_id]])); | 172 $form_state->setRedirectUrl($this->entities[$new_id]->urlInfo('collection', ['language' => $this->entities[$new_id]])); |
161 } | 173 } |
162 | 174 |