3f2bc3d0
Administrator
first commit
|
1
2
3
4
|
<?php
namespace common\modules\rubrication\models;
|
01905ec6
Yarik
Filter fixing
|
5
|
use common\modules\product\models\Category;
|
3f2bc3d0
Administrator
first commit
|
6
7
8
9
10
11
12
13
14
15
16
17
18
|
use common\modules\relation\relationBehavior;
use Yii;
/**
* This is the model class for table "{{%tax_group}}".
*
* @property integer $tax_group_id
* @property string $alias
* @property string $name
* @property string $description
* @property string $module
* @property boolean $hierarchical
* @property string $settings
|
38828295
Karnovsky A
-
|
19
|
* @property boolean $is_filter
|
30ea8a35
Administrator
29.06.16
|
20
|
* @property integer $level
|
aa5c63f4
Yarik
Filter fixing
|
21
22
|
* @property integer $sort
* @property boolean $display
|
3f2bc3d0
Administrator
first commit
|
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
|
* @property TaxGroupToGroup[] $taxGroupToGroups
* @property TaxGroupToGroup[] $taxGroupToGroups0
* @property TaxOption[] $taxOptions
* @property TaxOptionToGroup[] $taxOptionToGroups
*/
class TaxGroup extends \yii\db\ActiveRecord
{
public $_options = [];
/**
* @inheritdoc
*/
public function behaviors()
{
return [
[
'class' => relationBehavior::className(),
'relations' => [
'tax_group_to_category' => 'entity1',
]
],
'slug' => [
'class' => 'common\behaviors\Slug',
'in_attribute' => 'name',
'out_attribute' => 'alias',
'translit' => true
],
];
}
/**
* @inheritdoc
*/
public static function tableName()
{
|
1b898c16
Administrator
20.07.16
|
57
|
return 'tax_group';
|
3f2bc3d0
Administrator
first commit
|
58
59
60
61
62
63
64
65
66
67
|
}
/**
* @inheritdoc
*/
public function rules()
{
return [
[['name', 'module'], 'required'],
[['description', 'settings'], 'string'],
|
aa5c63f4
Yarik
Filter fixing
|
68
69
|
[['hierarchical', 'is_filter', 'display'], 'boolean'],
[['level', 'sort'], 'integer'],
|
3f2bc3d0
Administrator
first commit
|
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
|
[['alias', 'module'], 'string', 'max' => 50],
[['name'], 'string', 'max' => 255],
[['group_to_category'], 'safe']
];
}
/**
* @inheritdoc
*/
public function attributeLabels()
{
return [
'tax_group_id' => 'Tax Group ID',
'alias' => 'Alias',
'name' => 'Name',
'description' => 'Description',
'module' => 'Module',
'hierarchical' => 'Hierarchical',
// 'settings' => 'Settings',
'is_filter' => 'Use in filter',
|
aa5c63f4
Yarik
Filter fixing
|
90
91
|
'sort' => 'Sort',
'display' => 'Display',
|
3f2bc3d0
Administrator
first commit
|
92
93
94
95
96
97
98
99
100
101
102
|
];
}
/**
* @return \yii\db\ActiveQuery
*/
public function getTaxGroupToGroups()
{
return $this->hasMany(TaxGroupToGroup::className(), ['tax_group1_id' => 'tax_group_id'])->inverseOf('taxGroup1');
}
|
01905ec6
Yarik
Filter fixing
|
103
104
105
106
107
108
|
public function getCategories()
{
return $this->hasMany(Category::className(), ['category_id' => 'entity2_id'])
->viaTable('relation', ['entity1_id' => 'tax_group_id']);
}
|
3f2bc3d0
Administrator
first commit
|
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
|
/**
* @return \yii\db\ActiveQuery
*/
public function getTaxGroupToGroups0()
{
return $this->hasMany(TaxGroupToGroup::className(), ['tax_group2_id' => 'tax_group_id'])->inverseOf('taxGroup2');
}
/**
* @return \yii\db\ActiveQuery
*/
public function getOptions() {
return $this->getTaxOptions();
}
public function getTaxOptions()
{
return $this->hasMany(TaxOption::className(), ['tax_group_id' => 'tax_group_id'])->inverseOf('taxGroup');
}
/**
* @return \yii\db\ActiveQuery
*/
public function getTaxOptionToGroups()
{
return $this->hasMany(TaxOptionToGroup::className(), ['tax_group_id' => 'tax_group_id'])->inverseOf('taxGroup');
}
public function getValueModelName($full_path = true) {
$valueClass = 'TaxValue'. ucfirst($this->module);
$fullClass = '\common\modules\rubrication\models\\'. $valueClass;
return class_exists($fullClass) ? $full_path ? $fullClass : $valueClass : FALSE;
}
}
|