Blame view

thread/app/model/Language.php 1.29 KB
d1f8bd40   Alexey Boroda   first commit
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
  <?php
  
  namespace thread\app\model;
  
  /**
   * class Language
   *
   * @package thread\app\model
   * @author FilamentV <vortex.filament@gmail.com>
   * @copyright (c), Thread
   */
  class Language implements interfaces\LanguageModel
  {
      /**
       * @var array
       */
      public $items = [
          'en-EN' => [
              'by_default' => true,
              'alias' => 'en',
              'local' => 'en-EN',
              'label' => 'English',
          ],
          'uk-UA' => [
              'by_default' => false,
              'alias' => 'ua',
              'local' => 'uk-UA',
              'label' => 'Українська',
          ],
          'ru-RU' => [
              'by_default' => false,
              'alias' => 'ru',
              'local' => 'ru-RU',
              'label' => 'Русский',
          ],
      ];
  
      /**
       * @return array
       */
      public function getLanguages():array
      {
          return $this->items;
      }
  
      /**
       * @return array
       */
      public function getCurrent():array
      {
          return $this->items[\Yii::$app->language];
      }
  
      /**
       * @return array
       */
      public static function dropDownList()
      {
          $items = (new self())->getLanguages();
          foreach ($items as $key => $language) {
              $items[$key] = $language['label'];
          }
          return $items;
      }
  }