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
|
bb7d15c5
andryeyev
Итерация 3 (Templ...
|
25
|
`menu`.menu_id, `menu`.menu_pid, `menu`.level,
|
f603f834
andryeyev
Итерация 4 (SEO)
|
26
|
`termin_lang`.termin_title, `termin_lang`.termin_alias,
|
0e2718b7
andryeyev
+ Рекурсивное мен...
|
27
|
`template`.template_file
|
19423060
andryeyev
+ 1-уровневое мен...
|
28
|
FROM `menu`
|
bb7d15c5
andryeyev
Итерация 3 (Templ...
|
29
|
INNER JOIN `menu_location` ON `menu_location`.menu_location_id = `menu`.menu_location_id
|
f603f834
andryeyev
Итерация 4 (SEO)
|
30
31
32
33
|
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->lang_id.'
|
7c9d9ca1
andryeyev
Передел после сов...
|
34
|
INNER JOIN `template` ON `template`.template_id = `termin_lang`.template_id
|
11e2c9ec
andryeyev
fix Меню: Сортиро...
|
35
|
ORDER BY `menu`.level ASC, `menu`.sortorder ASC
|
19423060
andryeyev
+ 1-уровневое мен...
|
36
37
38
39
40
41
42
43
44
45
46
47
|
')->queryAll();
/*
return $this->find()
->selectOption('`termin_lang`.termin_title')
->from('menu')
->join(
'INNER JOIN',
'`termin_lang`.termin_id = `menu`.termin_id',
['lang_id' => yii::$app->lang_id])
->all();
*/
}
|
0e2718b7
andryeyev
+ Рекурсивное мен...
|
48
49
|
// ==== YII ====
|
19423060
andryeyev
+ 1-уровневое мен...
|
50
|
|
b507d689
andryeyev
Итерация 1 (Терми...
|
51
52
53
54
55
56
57
58
59
60
61
62
63
64
|
/**
* @inheritdoc
*/
public static function tableName()
{
return 'menu';
}
/**
* @inheritdoc
*/
public function rules()
{
return [
|
7765bf97
Dmitryi
menu no perevod
|
65
|
[['menu_pid', 'menu_lft', 'menu_rgt', 'termin_id', 'show', 'sortorder'], 'safe'],
|
b507d689
andryeyev
Итерация 1 (Терми...
|
66
67
68
69
70
71
72
73
74
75
|
[['menu_pid', 'menu_lft', 'menu_rgt', 'termin_id', 'show', 'sortorder'], 'integer']
];
}
/**
* @inheritdoc
*/
public function attributeLabels()
{
return [
|
7765bf97
Dmitryi
menu no perevod
|
76
77
78
79
80
81
82
|
'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 (Терми...
|
83
84
|
];
}
|
0e2718b7
andryeyev
+ Рекурсивное мен...
|
85
|
|
b507d689
andryeyev
Итерация 1 (Терми...
|
86
|
}
|