Blame view

frontend/controllers/SearchController.php 3.91 KB
fbdb1f1c   Yarik   test
1
  <?php
35b03e57   Administrator   add yii jquery
2
3
4
5
6
7
8
9
  namespace frontend\controllers;
  
  use common\models\CustomerSearch;
  use common\models\Project;
  use common\models\Specialization;
  use common\models\UserInfo;
  use common\models\Vacancy;
  use frontend\models\SearchPerformerForm;
cda2c1c9   Administrator   add yii jquery
10
  use frontend\models\SearchVacancyForm;
35b03e57   Administrator   add yii jquery
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
  use Yii;
  use common\models\LoginForm;
  use frontend\models\PasswordResetRequestForm;
  use frontend\models\ResetPasswordForm;
  use frontend\models\SignupForm;
  use frontend\models\ContactForm;
  use frontend\models\Options;
  use frontend\models\OptionValues;
  use yii\base\InvalidParamException;
  use yii\data\ActiveDataProvider;
  use yii\data\Pagination;
  use yii\helpers\ArrayHelper;
  use yii\web\BadRequestHttpException;
  use yii\web\Controller;
  use yii\filters\VerbFilter;
  use yii\filters\AccessControl;
  use frontend\models\OptionsToValues;
  use yii\validators\EmailValidator;
  use common\models\User;
  use yii\helpers\VarDumper;
  use common\models\Page; 
  use frontend\models\Option;
  use common\models\Social;
fbdb1f1c   Yarik   test
34
35
  
      /**
2fd40ee7   Yarik   test
36
       * Site controller
fbdb1f1c   Yarik   test
37
       */
2fd40ee7   Yarik   test
38
      class SearchController extends Controller
fbdb1f1c   Yarik   test
39
      {
6dd6c4bf   Administrator   17.02.16
40
  
2fd40ee7   Yarik   test
41
          public $defaultAction = 'common';
fbdb1f1c   Yarik   test
42
  
2fd40ee7   Yarik   test
43
44
45
46
47
48
49
50
          /**
           * @inheritdoc
           */
          public function actions()
          {
              return [
                  'error'   => [
                      'class' => 'yii\web\ErrorAction',
f94a00a6   Yarik   test
51
                  ],
2fd40ee7   Yarik   test
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
                  'captcha' => [
                      'class'           => 'yii\captcha\CaptchaAction',
                      'fixedVerifyCode' => YII_ENV_TEST ? 'testme' : NULL,
                  ],
              ];
          }
  
          public function actionProject()
          {
              $projects = new ActiveDataProvider([
                  'query'      => Project::find(),
                  'pagination' => [
                      'pageSize' => 9,
                  ],
              ]);
              return $this->render('project', [
                  'projects' => $projects,
              ]);
          }
  
          public function actionCustomer()
          {
              $model = new CustomerSearch();
              $dataProvider = $model->search(Yii::$app->request->queryParams);
              $dataProvider->setPagination([
                  'pageSize' => 5,
              ]);
2fd40ee7   Yarik   test
79
              $model->load(Yii::$app->request->queryParams);
2fd40ee7   Yarik   test
80
81
82
              return $this->render('customer', [
                  'model'        => $model,
                  'dataProvider' => $dataProvider,
2fd40ee7   Yarik   test
83
84
85
              ]);
          }
  
2fd40ee7   Yarik   test
86
  
2fd40ee7   Yarik   test
87
  
cda2c1c9   Administrator   add yii jquery
88
89
90
          public function actionPerformer()
          {
              $specialization = Specialization::specializationsList();
dafc9daf   Administrator   add yii jquery
91
  
cda2c1c9   Administrator   add yii jquery
92
              $searchModel = new SearchPerformerForm();
eb7e82fb   Administrator   29.02.16
93
  
cda2c1c9   Administrator   add yii jquery
94
95
96
97
98
99
              return $this->render('performer',[
                  'dataProvider' => $searchModel->search(Yii::$app->request->queryParams),
                  'specialization' => $specialization,
                  'model'=> $searchModel
              ]);
          }
35b03e57   Administrator   add yii jquery
100
  
cda2c1c9   Administrator   add yii jquery
101
102
          public function actionVacancy()
          {
35b03e57   Administrator   add yii jquery
103
104
  
  
cda2c1c9   Administrator   add yii jquery
105
              $searchModel = new SearchVacancyForm();
35b03e57   Administrator   add yii jquery
106
  
cda2c1c9   Administrator   add yii jquery
107
              $specialization = Specialization::specializationsList();
eb7e82fb   Administrator   29.02.16
108
  
cda2c1c9   Administrator   add yii jquery
109
              $query = $searchModel->search(Yii::$app->request->queryParams);
eb7e82fb   Administrator   29.02.16
110
  
cda2c1c9   Administrator   add yii jquery
111
              $countQuery = clone $query;
eb7e82fb   Administrator   29.02.16
112
  
2fd40ee7   Yarik   test
113
114
115
116
              $pagination = new Pagination([
                  'totalCount' => $countQuery->count(),
                  'pageSize'   => 15,
              ]);
eb7e82fb   Administrator   29.02.16
117
  
2fd40ee7   Yarik   test
118
              $vacancy = $query->offset($pagination->offset)
cda2c1c9   Administrator   add yii jquery
119
                  ->limit($pagination->limit);
eb7e82fb   Administrator   29.02.16
120
  
cda2c1c9   Administrator   add yii jquery
121
              $dataProvider = new ActiveDataProvider([
2fd40ee7   Yarik   test
122
123
124
125
126
127
128
129
130
                  'query'      => $vacancy,
                  'pagination' => false,
                  'sort'       => [
                      'defaultOrder' => [
                          'date_add' => SORT_DESC,
                          'name'     => SORT_ASC,
                      ],
                  ],
              ]);
eb7e82fb   Administrator   29.02.16
131
  
cda2c1c9   Administrator   add yii jquery
132
133
134
135
136
              return $this->render('vacancy',[
                  'dataProvider' => $dataProvider,
                  'specialization' => $specialization,
                  'model'=> $searchModel,
                  'pagination'=> $pagination
2fd40ee7   Yarik   test
137
              ]);
cda2c1c9   Administrator   add yii jquery
138
  
2fd40ee7   Yarik   test
139
          }
eb7e82fb   Administrator   29.02.16
140
  
7fc05ac5   Yarik   test
141
      }