Blame view

common/models/Menu.php 2.29 KB
b507d689   andryeyev   Итерация 1 (Терми...
1
2
3
4
5
  <?php
  
  namespace common\models;
  
  use Yii;
0e2718b7   andryeyev   + Рекурсивное мен...
6
    
b507d689   andryeyev   Итерация 1 (Терми...
7
8
9
10
11
12
13
14
15
16
17
18
19
  
  /**
   * This is the model class for table "menu".
   *
   * @property integer $menu_id
   * @property integer $menu_pid
   * @property integer $menu_lft
   * @property integer $menu_rgt
   * @property integer $termin_id
   * @property integer $show
   * @property integer $sortorder
   */
  class Menu extends \yii\db\ActiveRecord
0e2718b7   andryeyev   + Рекурсивное мен...
20
  { 
bb7d15c5   andryeyev   Итерация 3 (Templ...
21
22
      public function getMenuList ($location_name)
      {  
19423060   andryeyev   + 1-уровневое мен...
23
24
          return yii::$app->db->createCommand('
              SELECT 
3fe15343   andryeyev   + новая версия (d...
25
26
27
28
29
30
31
32
33
                  menu.menu_id, menu.menu_pid, menu.level,
                  termin_lang.termin_title, termin_lang.termin_alias 
              FROM menu
                  INNER JOIN menu_location ON menu_location.menu_location_id = menu.menu_location_id
                      AND menu_location.menu_location_name = \''.$location_name.'\'  
                  INNER JOIN termin ON termin.termin_id = menu.termin_id
                  INNER JOIN termin_lang ON termin_lang.termin_id = menu.termin_id
                      AND termin_lang.lang_id = '.Yii::$app->params['lang_id'].' 
              ORDER BY menu.level ASC, menu.sortorder ASC
19423060   andryeyev   + 1-уровневое мен...
34
35
36
          ')->queryAll();
  /*
          return $this->find()
3fe15343   andryeyev   + новая версия (d...
37
              ->selectOption('termin_lang.termin_title')
19423060   andryeyev   + 1-уровневое мен...
38
39
40
              ->from('menu')
              ->join(
                  'INNER JOIN', 
3fe15343   andryeyev   + новая версия (d...
41
                  'termin_lang.termin_id = menu.termin_id', 
0769f724   Yarik   Изменен метод уст...
42
                  ['lang_id' => yii::$app->params['lang_id']])
19423060   andryeyev   + 1-уровневое мен...
43
44
45
              ->all();
  */
      }
0e2718b7   andryeyev   + Рекурсивное мен...
46
47
   
      // ==== YII ====
19423060   andryeyev   + 1-уровневое мен...
48
  
b507d689   andryeyev   Итерация 1 (Терми...
49
50
51
52
53
54
55
56
57
58
59
60
61
62
      /**
       * @inheritdoc
       */
      public static function tableName()
      {
          return 'menu';
      }
  
      /**
       * @inheritdoc
       */
      public function rules()
      {
          return [
7765bf97   Dmitryi   menu no perevod
63
              [['menu_pid', 'menu_lft', 'menu_rgt', 'termin_id', 'show', 'sortorder'], 'safe'],
b507d689   andryeyev   Итерация 1 (Терми...
64
65
66
67
68
69
70
71
72
73
              [['menu_pid', 'menu_lft', 'menu_rgt', 'termin_id', 'show', 'sortorder'], 'integer']
          ];
      }
  
      /**
       * @inheritdoc
       */
      public function attributeLabels()
      {
          return [
7765bf97   Dmitryi   menu no perevod
74
75
76
77
78
79
80
              'menu_id' => Yii::t('app', 'Menu ID'),
              'menu_pid' => Yii::t('app', 'Menu Pid'),
              'menu_lft' => Yii::t('app', 'Menu Lft'),
              'menu_rgt' => Yii::t('app', 'Menu Rgt'),
              'termin_id' => Yii::t('app', 'Termin ID'),
              'show' => Yii::t('app', 'Show'),
              'sortorder' => Yii::t('app', 'Sortorder'),
b507d689   andryeyev   Итерация 1 (Терми...
81
82
          ];
      }
0e2718b7   andryeyev   + Рекурсивное мен...
83
   
b507d689   andryeyev   Итерация 1 (Терми...
84
  }