Blame view

frontend/views/search/performer.php 16 KB
fbdb1f1c   Yarik   test
1
  <?php
42931736   Yarik   test
2
      /**
69e6fb96   Yarik   test
3
       * @var View                $this
42931736   Yarik   test
4
5
       * @var SearchPerformerForm $model
       */
fbdb1f1c   Yarik   test
6
  
a2cb610b   Yarik   Commit
7
      use common\models\Specialization;
42931736   Yarik   test
8
      use frontend\models\SearchPerformerForm;
5d627502   Yarik   test
9
      use kartik\select2\Select2;
5d627502   Yarik   test
10
11
12
13
      use \yii\helpers\Html;
      use yii\helpers\Url;
      use yii\jui\SliderInput;
      use yii\web\JsExpression;
42931736   Yarik   test
14
      use yii\web\View;
5d627502   Yarik   test
15
16
17
18
      use yii\widgets\ActiveForm;
      use yii\widgets\LinkSorter;
      use yii\widgets\ListView;
  
5d627502   Yarik   test
19
20
21
22
      $sort_array = $dataProvider->sort->getAttributeOrders();
      $active_key = array_keys($sort_array)[ 0 ];
      $active_value = $sort_array[ $active_key ];
      $sort_name = ( ( $active_value == 4 ) ? '-' : '' ) . $active_key;
394d4a6a   Yarik   Commit
23
24
      $this->title = 'Proektant.net';
  
fbdb1f1c   Yarik   test
25
26
27
28
29
30
31
  ?>
  
  <div class="section-box content">
      <div class="section-box-22">
          <div class="box-wr">
              <div class="box-all">
                  <div class="left-search-work">
35b03e57   Administrator   add yii jquery
32
                      <?php
5d627502   Yarik   test
33
34
35
36
37
                          $form = ActiveForm::begin([
                              'options' => [ 'class' => 'search-work-form' ],
                              'action'  => [ '' ],
                              'method'  => 'get',
                          ]);
35b03e57   Administrator   add yii jquery
38
                      ?>
5d627502   Yarik   test
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
                      <?= $form->field($model, 'city')
                               ->widget(Select2::classname(), [
                                   'options'       => [ 'placeholder' => 'Выбор города ...' ],
                                   'pluginOptions' => [
                                       'allowClear'         => true,
                                       'minimumInputLength' => 3,
                                       'ajax'               => [
                                           'url'      => \yii\helpers\Url::to([ 'site/city' ]),
                                           'dataType' => 'json',
                                           'data'     => new JsExpression('function(params) { return {q:params.term}; }'),
                                       ],
                                       'escapeMarkup'       => new JsExpression('function (markup) { return markup; }'),
                                       'templateResult'     => new JsExpression('function(city) { return city.text; }'),
                                       'templateSelection'  => new JsExpression('function (city) { return city.text; }'),
                                   ],
                               ]); ?>
  
a2cb610b   Yarik   Commit
56
57
58
59
60
61
62
63
                      <?php
                          // New specialization chooser
                      ?>
                      <div class="input-blocks-wrapper admin-menu-list">
                          <div class="input-blocks" style="width: 100%; margin-bottom: 5px">
                              <label>Специализации</label>
                              <div class="required"></div>
                          </div>
7cfbdfc4   Eugeny Galkovskiy   ...
64
                          <div class="new-spec-block style">
a2cb610b   Yarik   Commit
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
                              <ul class="content-menu-first">
                                  <?php foreach($specializations as $specialization): ?>
                                      <li data-img="<?= $specialization->image ?>">
                                          <span data-menu-bg="<?= $specialization->background ?>" style="background: <?= $specialization->background ?>"></span><a href="#"><?= $specialization->specialization_name ?></a>
                                          <ul>
                                              <?php foreach($specialization->children as $child_first): ?>
  
                                                  <?php if($child_first instanceof Specialization): ?>
                                                      <li>
                                                          <a href="#"><?= $child_first->specialization_name ?></a>
                                                          <ul>
                                                              <?php foreach($child_first->children as $child_second): ?>
                                                                  <?php if($child_first instanceof Specialization): ?>
                                                                      <li>
                                                                          <a href="#" title="<?= $child_second->specialization_name ?>">
                                                                              <?= $form->field($model, "specialization[{$child_second->specialization_id}]", [
                                                                                  'template' => '{input}{label}{hint}{error}',
                                                                              ])
                                                                                       ->label('<span></span>' . $child_second->specialization_name)
                                                                                       ->checkbox([
                                                                                           'value'   => $child_second->specialization_id,
                                                                                           'label'   => NULL,
                                                                                           'uncheck' => NULL,
                                                                                           'class'   => 'custom-check',
                                                                                       ], false) ?>
                                                                          </a>
                                                                      </li>
                                                                  <?php endif; ?>
                                                              <?php endforeach; ?>
                                                          </ul>
                                                      </li>
                                                  <?php endif; ?>
                                              <?php endforeach; ?>
  
                                          </ul>
                                      </li>
                                  <?php endforeach; ?>
                              </ul>
                          </div>
                          <div class="style admn-menu-err">
                              <div class="help-block">Необходимо выбрать хотя бы одну «специализацию».</div>
                          </div>
                      </div>
  
                      <div class="admin-specialization-selected style">
                          <ul></ul>
                      </div>
a2cb610b   Yarik   Commit
112
113
114
                      <?php
                          // End of new specialization chooser
                      ?>
5d627502   Yarik   test
115
  
a2cb610b   Yarik   Commit
116
117
118
119
120
                      <?php
                          /*
                      ?>
  
                      <?= $form->field($model, 'specialization[]')
5d627502   Yarik   test
121
                               ->dropDownList($specialization, [ 'prompt' => 'Любая' ]); ?>
a2cb610b   Yarik   Commit
122
123
124
                          <?php
                          */
                      ?>
5d627502   Yarik   test
125
  
a2cb610b   Yarik   Commit
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
                      <?= $form->field($model, 'portfolio', [
                          'options'  => [
                              'class' => 'blocks-check-list-wrapp',
                          ],
                          'template' => "<div class='blocks-check-title'>{label}</div>\n{input}\n{hint}\n{error}",
                      ])
                               ->label('Искать в')
                               ->radioList([
                                   1 => 'Портфолио',
                                   0 => 'Услуги',
                               ], [
                                   'item'     => function($index, $label, $name, $checked, $value) use ($model) {
                                       return "<div class='blocks-check-list'><input type='radio' id='{$model->formName()}-{$index}-portfolio' name='{$name}' class='check-search' value='{$value}' " . ( $checked ? 'checked' : '' ) . "><label for='{$model->formName()}-{$index}-portfolio'><span></span>{$label}</label></div>";
                                   },
                                   'unselect' => NULL,
                               ]); ?>
5d627502   Yarik   test
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
  
                      <?= $form->field($model, 'type')
                               ->dropDownList([
                                   '1' => 'Частное лицо',
                                   '2' => 'Компания',
                               ], [ 'prompt' => 'Любой' ]); ?>
  
  
  
                      <?=
  
                          $form->field($model, 'working_conditions')
                               ->checkboxList([
                                   'guarantee'  => 'С гарантией',
                                   //'contract' => 'С договором',
                                   //'estimate' => 'Со сметой',
                                   'prepayment' => 'Без предоплаты',
                               ], [
                                   'item' => function($index, $label, $name, $checked, $value) {
                                       $return = '<div class="blocks-check-list">';
                                       $return .= '<input type="checkbox" ' . ( $checked ? "checked" : "" ) . ' name="' . $name . '" class="check-search" value="' . $value . '" id="theme-' . $index . '">';
                                       $return .= '<label for="theme-' . $index . '"><span></span>' . $label . '</label>';
                                       $return .= '</div>';
                                       return $return;
                                   },
                               ]); ?>
35b03e57   Administrator   add yii jquery
168
169
170
171
  
                      <div class="blocks-check-list-wrapp">
                          <div id="slider-value"></div>
                          <?php
5d627502   Yarik   test
172
173
174
175
                              echo $form->field($model, 'rating', [
                                  'template'     => "{label}<br><div id='{$form->id}-rating'>{$model->rating}</div><br>{input}\n{hint}\n{error}",
                                  'labelOptions' => [
                                      'class' => 'blocks-check-title',
35b03e57   Administrator   add yii jquery
176
                                  ],
5d627502   Yarik   test
177
178
179
180
181
182
183
184
185
                              ])
                                        ->widget(SliderInput::className(), [
                                            'clientOptions' => [
                                                'min'  => 0,
                                                'max'  => 5,
                                                'step' => 0.5,
                                            ],
                                            'clientEvents'  => [
                                                'slide' => "function( event, ui ) {
35b03e57   Administrator   add yii jquery
186
187
188
189
                                           $( '#{$form->id}-rating' ).text(ui.value);
                                           $('input[name=\"{$model->formName()}[rating]\"]').val(ui.value);
  
                                       }",
5d627502   Yarik   test
190
191
                                            ],
                                        ]);
35b03e57   Administrator   add yii jquery
192
193
194
195
                          ?>
                      </div>
  
  
5d627502   Yarik   test
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
                      <?= $form->field($model, 'online', [
                          'options'  => [
                              'class' => 'blocks-check-list-wrapp',
                          ],
                          'template' => "<div class='blocks-check-title'>{label}</div>\n{input}\n{hint}\n{error}",
                      ])
                               ->radioList([
                                   '' => 'Все',
                                   1  => 'Онлайн',
                               ], [
                                   'item'     => function($index, $label, $name, $checked, $value) use ($model) {
                                       return "<div class='blocks-check-list'><input type='radio' id='{$model->formName()}-{$index}' name='{$name}' class='check-search' value='{$value}' " . ( $checked ? 'checked' : '' ) . "><label for='{$model->formName()}-{$index}'><span></span>{$label}</label></div>";
                                   },
                                   'unselect' => NULL,
                               ]); ?>
  
5d627502   Yarik   test
212
213
214
                      <?= $form->field($model, 'additional_parameters')
                               ->checkboxList([
                                   'with_portfolio' => 'Только с портфолио',
7cfbdfc4   Eugeny Galkovskiy   ...
215
                                   'with_comments'  => 'Только с отзывами',
5d627502   Yarik   test
216
217
218
219
220
221
222
223
224
225
                                   'only_free'      => 'Только свободные',
                               ], [
                                   'item' => function($index, $label, $name, $checked, $value) {
                                       $return = '<div class="blocks-check-list">';
                                       $return .= '<input type="checkbox" ' . ( $checked ? "checked" : "" ) . ' name="' . $name . '" class="check-search" value="' . $value . '" id="theme2-' . $index . '">';
                                       $return .= '<label for="theme2-' . $index . '"><span></span>' . $label . '</label>';
                                       $return .= '</div>';
                                       return $return;
                                   },
                               ]); ?>
35b03e57   Administrator   add yii jquery
226
227
228
229
                      <div class="blocks-check-list-submit">
                          <?= Html::submitInput('Найти') ?>
                      </div>
  
5d627502   Yarik   test
230
231
232
                      <?php
                          $form->end();
                      ?>
fbdb1f1c   Yarik   test
233
234
235
                  </div>
                  <div class="right-search-work">
                      <div class="search-worker-title style">Найти исполнителя</div>
5d627502   Yarik   test
236
237
                      <div class="search-worker-title-two style">Проектанты готовые приступить к работе
                          <span><?= $dataProvider->totalCount ?></span></div>
fbdb1f1c   Yarik   test
238
                      <div class="search-worker-search-wr style">
35b03e57   Administrator   add yii jquery
239
                          <?php
5d627502   Yarik   test
240
241
242
243
244
                              $form2 = ActiveForm::begin([
                                  'method'  => 'get',
                                  'action'  => [ '' ],
                                  'options' => [ 'class' => 'search-worker-form' ],
                              ]);
35b03e57   Administrator   add yii jquery
245
246
                          ?>
  
5d627502   Yarik   test
247
248
249
                          <?= $form2->field($model, 'search', [ 'options' => [ 'tag' => 'span' ] ])
                                    ->label(false)
                                    ->textInput([ 'placeholder' => $model->getAttributeLabel('search') ]); ?>
35b03e57   Administrator   add yii jquery
250
  
5d627502   Yarik   test
251
                          <?= Html::submitInput('Найти'); ?>
35b03e57   Administrator   add yii jquery
252
253
  
                          <?php
5d627502   Yarik   test
254
                              $form2->end();
35b03e57   Administrator   add yii jquery
255
256
                          ?>
  
69e6fb96   Yarik   test
257
                          <?php
a2cb610b   Yarik   Commit
258
259
260
                              if(empty( \Yii::$app->user->id ) || empty( \Yii::$app->user->identity->specializations )) {
                                  echo Html::a('Добавить себя в каталог', Url::toRoute('accounts/service'), [ 'class' => 'add-to-catalog-search-worker' ]);
                              }
69e6fb96   Yarik   test
261
                          ?>
35b03e57   Administrator   add yii jquery
262
  
fbdb1f1c   Yarik   test
263
264
265
266
                          <div class="search-worker-sort-wr style">
                              <div class="search-worker-sort">Сортировать:&nbsp;</div>
                              <ul>
                                  <li class="activejob">
5d627502   Yarik   test
267
                                      <a href="#" data-sort-name="<?= $sort_name ?>"></a>
fbdb1f1c   Yarik   test
268
                                      <div class="sidebar-droped-wr style">
35b03e57   Administrator   add yii jquery
269
                                          <?php
5d627502   Yarik   test
270
271
272
                                              echo LinkSorter::widget([
                                                  'sort' => $dataProvider->sort,
                                              ]);
35b03e57   Administrator   add yii jquery
273
                                          ?>
fbdb1f1c   Yarik   test
274
275
276
277
278
279
280
                                      </div>
                                  </li>
                              </ul>
                          </div>
                      </div>
  
                      <div class="search-worker-blocks-wr style">
fbdb1f1c   Yarik   test
281
  
eb7e82fb   Administrator   29.02.16
282
                          <?=
35b03e57   Administrator   add yii jquery
283
  
5d627502   Yarik   test
284
285
286
287
288
                              ListView::widget([
                                  'dataProvider' => $dataProvider,
                                  'itemView'     => '_performer_list_view',
                                  'layout'       => "{items}\n<div class='navi-buttons-wr style'>{pager}</div>",
                              ]); ?>
fbdb1f1c   Yarik   test
289
  
fbdb1f1c   Yarik   test
290
291
  
                      </div>
fbdb1f1c   Yarik   test
292
293
294
295
296
297
                  </div>
              </div>
          </div>
      </div>
  
  </div>