Blame view

backend/models/LabelSearch.php 2.87 KB
7975da13   Alexey Boroda   -Label model pret...
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
  <?php
      
      namespace backend\models;
      
      use yii\base\Model;
      use yii\data\ActiveDataProvider;
      
      /**
       * LabelSearch represents the model behind the search form about `backend\models\Label`.
       */
      class LabelSearch extends Label
      {
          
          /**
           * @var string
           */
8af13427   Yarik   For leha commit.
17
          public $title;
7975da13   Alexey Boroda   -Label model pret...
18
19
20
21
22
23
24
25
26
27
28
29
30
31
          
          /**
           * @inheritdoc
           */
          public function rules()
          {
              return [
                  [
                      [ 'id' ],
                      'integer',
                  ],
                  [
                      [
                          'label',
8af13427   Yarik   For leha commit.
32
                          'title',
7975da13   Alexey Boroda   -Label model pret...
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
                      ],
                      'safe',
                  ],
              ];
          }
          
          /**
           * @inheritdoc
           */
          public function scenarios()
          {
              // bypass scenarios() implementation in the parent class
              return Model::scenarios();
          }
          
          /**
           * Creates data provider instance with search query applied
           *
           * @param array $params
           *
           * @return ActiveDataProvider
           */
          public function search($params)
          {
              $query = Label::find()
                            ->joinWith('lang');
              
              // add conditions that should always apply here
              
8af13427   Yarik   For leha commit.
62
63
64
65
66
67
68
69
70
71
72
              $dataProvider = new ActiveDataProvider(
                  [
                      'query' => $query,
                      'sort'  => [
                          'attributes' => [
                              'id',
                              'label',
                              'title' => [
                                  'asc'  => [ 'order_label_lang.title' => SORT_ASC ],
                                  'desc' => [ 'order_label_lang.title' => SORT_DESC ],
                              ],
7975da13   Alexey Boroda   -Label model pret...
73
74
                          ],
                      ],
8af13427   Yarik   For leha commit.
75
76
                  ]
              );
7975da13   Alexey Boroda   -Label model pret...
77
78
79
              
              $this->load($params);
              
8af13427   Yarik   For leha commit.
80
              if (!$this->validate()) {
7975da13   Alexey Boroda   -Label model pret...
81
82
83
84
85
86
                  // uncomment the following line if you do not want to return any records when validation fails
                  // $query->where('0=1');
                  return $dataProvider;
              }
              
              // grid filtering conditions
8af13427   Yarik   For leha commit.
87
88
89
90
91
              $query->andFilterWhere(
                  [
                      'id' => $this->id,
                  ]
              );
7975da13   Alexey Boroda   -Label model pret...
92
              
8af13427   Yarik   For leha commit.
93
94
95
96
97
98
99
100
101
102
103
104
105
106
              $query->andFilterWhere(
                  [
                      'like',
                      'label',
                      $this->label,
                  ]
              )
                    ->andFilterWhere(
                        [
                            'like',
                            'order_label_lang.title',
                            $this->title,
                        ]
                    );
7975da13   Alexey Boroda   -Label model pret...
107
108
109
110
              
              return $dataProvider;
          }
      }