Blame view

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