Version 1
[yaffs-website] / web / core / modules / language / src / Plugin / LanguageNegotiation / LanguageNegotiationSelected.php
1 <?php
2
3 namespace Drupal\language\Plugin\LanguageNegotiation;
4
5 use Drupal\language\LanguageNegotiationMethodBase;
6 use Symfony\Component\HttpFoundation\Request;
7
8 /**
9  * Class for identifying language from a selected language.
10  *
11  * @LanguageNegotiation(
12  *   id = Drupal\language\Plugin\LanguageNegotiation\LanguageNegotiationSelected::METHOD_ID,
13  *   weight = 12,
14  *   name = @Translation("Selected language"),
15  *   description = @Translation("Language based on a selected language."),
16  *   config_route_name = "language.negotiation_selected"
17  * )
18  */
19 class LanguageNegotiationSelected extends LanguageNegotiationMethodBase {
20
21   /**
22    * The language negotiation method id.
23    */
24   const METHOD_ID = 'language-selected';
25
26   /**
27    * {@inheritdoc}
28    */
29   public function getLangcode(Request $request = NULL) {
30     $langcode = NULL;
31
32     if ($this->languageManager) {
33       $langcode = $this->config->get('language.negotiation')->get('selected_langcode');
34     }
35
36     return $langcode;
37   }
38
39 }