Blame view

frontend/views/accounts/_projects_form.php 13.8 KB
aa182b5c   Yarik   test
1
2
  <?php
      /**
b16ed95f   Yarik   test
3
       * @var Project          $project
aa182b5c   Yarik   test
4
       * @var Specialization[] $specialization
b16ed95f   Yarik   test
5
6
       * @var Payment[]        $payment
       * @var string[]         $projects
aa182b5c   Yarik   test
7
       */
3f7185f2   Yarik   test
8
      use common\components\Request;
9cc08528   Yarik   test
9
      use common\models\Currency;
aa182b5c   Yarik   test
10
11
12
      use common\models\Payment;
      use common\models\Project;
      use common\models\Specialization;
2293c233   Administrator   16.03.16
13
      use common\modules\file\widgets\ImageUploader;
b16ed95f   Yarik   test
14
      use kartik\select2\Select2;
aa182b5c   Yarik   test
15
16
      use mihaildev\ckeditor\CKEditor;
      use yii\helpers\Html;
492ed7f7   Yarik   test
17
      use yii\jui\DatePicker;
b16ed95f   Yarik   test
18
      use yii\web\JsExpression;
aa182b5c   Yarik   test
19
20
      use yii\widgets\ActiveForm;
  
37cb2820   Виталий   tokar commit
21
      $this->title = 'Проекты';
aa182b5c   Yarik   test
22
23
      $this->params[ 'breadcrumbs' ][] = $this->title;
  ?>
37cb2820   Виталий   tokar commit
24
  <div class="login-left-column-title"><?= $this->title ?></div>
aa182b5c   Yarik   test
25
26
  
  <?php
83b0052c   Yarik   test
27
      $form = ActiveForm::begin(['options' => ['enctype' => 'multipart/form-data']]);
aa182b5c   Yarik   test
28
29
  ?>
  
aa182b5c   Yarik   test
30
  
37cb2820   Виталий   tokar commit
31
32
33
  <div class="input-blocks-wrapper">
      <div class="input-blocks">
          <?= $form->field($project, 'name')
83b0052c   Yarik   test
34
                   ->textInput([ 'class' => 'custom-input-2' ]) ?>
37cb2820   Виталий   tokar commit
35
36
      </div>
  </div>
aa182b5c   Yarik   test
37
  
37cb2820   Виталий   tokar commit
38
  <div class="input-blocks-wrapper">
93e3bd31   Виталий   tokar commit
39
      <div class="input-blocks admin-project-list admin-currency-second">
37cb2820   Виталий   tokar commit
40
          <?= $form->field($project, 'project_pid')
83b0052c   Yarik   test
41
                   ->dropDownList($projects, [ 'prompt' => 'Родительский проект' ]) ?>
37cb2820   Виталий   tokar commit
42
43
      </div>
  </div>
c7e64161   Виталий   tokar commit
44
  
82c2fa67   Виталий   tokar commit
45
  <div class="input-blocks-wrapper admin-menu-list">
c7e64161   Виталий   tokar commit
46
47
48
49
50
51
52
53
54
55
56
      <div class="input-blocks" style="width: 100%; margin-bottom: 5px">
          <label>Специализации</label>
          <div class="required"></div>
      </div>
      <div class="style">
          <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): ?>
d36bdac6   Administrator   17.02.16
57
  
c7e64161   Виталий   tokar commit
58
59
60
61
62
63
64
65
66
                              <?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($project, "specializationInput[{$child_second->specialization_id}]", [
83b0052c   Yarik   test
67
                                                              'template' => '{input}{label}{hint}{error}',
c7e64161   Виталий   tokar commit
68
                                                          ])
83b0052c   Yarik   test
69
70
71
72
73
74
75
                                                                   ->label('<span></span>' . $child_second->specialization_name)
                                                                   ->checkbox([
                                                                       'value'   => $child_second->specialization_id,
                                                                       'label'   => NULL,
                                                                       'uncheck' => NULL,
                                                                       'class'   => 'custom-check',
                                                                   ], false) ?>
c7e64161   Виталий   tokar commit
76
77
78
79
80
81
82
83
                                                      </a>
                                                  </li>
                                              <?php endif; ?>
                                          <?php endforeach; ?>
                                      </ul>
                                  </li>
                              <?php endif; ?>
                          <?php endforeach; ?>
d36bdac6   Administrator   17.02.16
84
  
c7e64161   Виталий   tokar commit
85
86
87
88
89
90
91
92
                      </ul>
                  </li>
              <?php endforeach; ?>
          </ul>
      </div>
      <div class="style admn-menu-err">
          <div class="help-block">Необходимо выбрать хотя бы одну «специализацию».</div>
      </div>
d36bdac6   Administrator   17.02.16
93
  </div>
aa182b5c   Yarik   test
94
  
83b0052c   Yarik   test
95
96
97
  <div class="admin-specialization-selected style">
      <ul></ul>
  </div>
c7e64161   Виталий   tokar commit
98
  
37cb2820   Виталий   tokar commit
99
100
  
  <div class="conacts-admin style">Адрес проекта:</div>
aa182b5c   Yarik   test
101
  <div class="form-inline">
37cb2820   Виталий   tokar commit
102
103
104
      <div class="input-blocks-wrapper">
          <div class="input-blocks">
              <?= $form->field($project, 'city')
83b0052c   Yarik   test
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
                       ->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; }'),
                           ],
                       ]); ?>
37cb2820   Виталий   tokar commit
120
121
122
          </div>
  
  
37cb2820   Виталий   tokar commit
123
124
          <div class="input-blocks street-input">
              <?= $form->field($project, 'street', [ 'template' => "{label}{input}{hint}{error}" ])
83b0052c   Yarik   test
125
                       ->textInput([ 'class' => 'custom-input-2' ]) ?>
37cb2820   Виталий   tokar commit
126
127
128
          </div>
  
  
37cb2820   Виталий   tokar commit
129
130
          <div class="input-blocks home-input">
              <?= $form->field($project, 'house', [ 'template' => "{label}{input}{hint}{error}" ])
83b0052c   Yarik   test
131
                       ->textInput([ 'class' => 'custom-input-2' ]) ?>
37cb2820   Виталий   tokar commit
132
133
          </div>
      </div>
aa182b5c   Yarik   test
134
135
  </div>
  
37cb2820   Виталий   tokar commit
136
  <div class="input-blocks-wrapper">
93e3bd31   Виталий   tokar commit
137
138
      <div class="input-blocks admin-project-list-two admin-currency-first">
          <?= $form->field($project, 'budget', [
83b0052c   Yarik   test
139
              'template' => "{label}<br />{input}\n{hint}\n{error}",
93e3bd31   Виталий   tokar commit
140
          ])
83b0052c   Yarik   test
141
142
143
144
                   ->textInput([
                       'class' => 'custom-input-2 custom-input-2-date',
                       'type'  => 'number',
                   ]) ?>
37cb2820   Виталий   tokar commit
145
      </div>
93e3bd31   Виталий   tokar commit
146
      <div class="input-blocks admin-project-list-two admin-currency-second">
83b0052c   Yarik   test
147
148
149
          <?= $form->field($project, 'budget_currency')
                   ->label(false)
                   ->dropDownList(Currency::getCurrencyDropdown(), [ 'class' => 'custom-input-2' ]); ?>
37cb2820   Виталий   tokar commit
150
      </div>
93e3bd31   Виталий   tokar commit
151
      <div class="input-blocks admin-who-check-payment admin-project-contractual">
83b0052c   Yarik   test
152
153
154
          <?= $form->field($project, 'contractual', [ 'template' => "{input}{label}\n{hint}\n{error}" ])
                   ->checkbox([ 'class' => 'custom-check' ], false)
                   ->label('<span></span>Договорной') ?>
37cb2820   Виталий   tokar commit
155
156
157
      </div>
  
  </div>
aa182b5c   Yarik   test
158
  
93e3bd31   Виталий   tokar commit
159
  <div class="input-blocks-wrapper">
5aefd508   Виталий   tokar commit
160
161
      <div class="input-blocks">
          <?= $form->field($project, 'payment_variant')
83b0052c   Yarik   test
162
163
164
165
166
167
168
169
170
171
172
173
174
175
                   ->radioList([
                       1 => 'Без предоплаты',
                       2 => 'Предоплата возможна',
                   ], [
                       'item' => function($index, $label, $name, $checked, $value) {
                           $return = '<div class="admin-who-check">';
                           $return .= '<input class="custom-radio" id="select_admin_mfp' . $value . '" type="radio" name="' . $name . '" value="' . $value . '" ' . ( $checked ? "checked" : "" ) . ' >';
                           $return .= '<label for="select_admin_mfp' . $value . '" >';
                           $return .= '<span></span>' . ucwords($label);
                           $return .= '</label>';
                           $return .= '</div>';
                           return $return;
                       },
                   ]) ?>
5aefd508   Виталий   tokar commit
176
      </div>
93e3bd31   Виталий   tokar commit
177
178
  </div>
  
5aefd508   Виталий   tokar commit
179
180
181
  <div class="input-blocks-wrapper">
      <div class="input-blocks">
          <?= $form->field($project, 'paymentInput')
83b0052c   Yarik   test
182
183
184
185
186
187
188
189
190
191
192
                   ->checkboxList($payment, [
                       'item' => function($index, $label, $name, $checked, $value) {
                           $return = '<div class="admin-who-check-payment">';
                           $return .= '<input class="custom-check" id="check_admin_mfp' . $value . '" type="checkbox" name="' . $name . '" value="' . $value . '" ' . ( $checked ? "checked" : "" ) . ' >';
                           $return .= '<label for="check_admin_mfp' . $value . '" >';
                           $return .= '<span></span>' . ucwords($label);
                           $return .= '</label>';
                           $return .= '</div>';
                           return $return;
                       },
                   ]) ?>
5aefd508   Виталий   tokar commit
193
194
      </div>
  </div>
aa182b5c   Yarik   test
195
  
aa182b5c   Yarik   test
196
  
37cb2820   Виталий   tokar commit
197
  <div class="input-blocks-wrapper">
5aefd508   Виталий   tokar commit
198
199
      <div class="input-blocks admin-project-days">
          <?= $form->field($project, 'deadline', [ 'template' => "{label}<br />{input}<span class='admn-input-txt' style='padding-left: 10px'>дней</span>\n{hint}\n{error}" ])
83b0052c   Yarik   test
200
201
202
203
                   ->textInput([
                       'class' => 'custom-input-2 custom-input-2-date',
                       'type'  => 'number',
                   ]) ?>
5aefd508   Виталий   tokar commit
204
205
206
207
      </div>
  </div>
  
  <div class="input-blocks-wrapper full-blocks admin-editor-bl">
37cb2820   Виталий   tokar commit
208
      <div class="input-blocks">
5aefd508   Виталий   tokar commit
209
210
          <?= $form->field($project, 'description')
                   ->widget(CKEditor::className()) ?>
37cb2820   Виталий   tokar commit
211
212
      </div>
  </div>
aa182b5c   Yarik   test
213
  
492ed7f7   Yarik   test
214
215
216
217
218
219
220
221
222
223
224
225
226
227
  <?php
  /* == Здесь епты == */
  ?>
  <div class="tender-file-wr">
      <?= $form->field($project, 'files[]')
               ->fileInput([ 'class' => 'multi', 'multiple' => 'multiple' ])
               ->label(false) ?>
      <a href="#" class="addfilemulti">Прикрепить файл</a>
      <div class="max-size">Максимальный размер<br/>файла 5 МБ</div>
  </div>
  <?php
  /* ==  .i. Конец епты .i. == */
  ?>
  
5aefd508   Виталий   tokar commit
228
229
230
231
232
233
234
  <div class="input-blocks-wrapper admin-project-file">
      <div class="input-blocks">
          <div style="position: absolute; float: left;top: 0; left: 0; z-index: 1; width: 100%; overflow: hidden">
              <div class="gen-admin-title">Присоединить файл</div>
              <div class="admin-project-file-btn">Загрузить</div>
              <div class="not-file-mb-adm">До 3 Мб файл</div>
          </div>
da52d7f3   Виталий   tokar commit
235
          <div style="opacity: 0; height: 54px; width: 100%; float: left;position: absolute; top: 0;left: 0; z-index: 2;-ms-filter: 'progid:DXImageTransform.Microsoft.Alpha(Opacity=0)'">
83b0052c   Yarik   test
236
237
              <?= $form->field($project, 'files[]')
                       ->fileInput([ 'multiple' => 'multiple' ]) ?>
5aefd508   Виталий   tokar commit
238
          </div>
aa182b5c   Yarik   test
239
  
5aefd508   Виталий   tokar commit
240
241
      </div>
  </div>
aa182b5c   Yarik   test
242
  
5aefd508   Виталий   tokar commit
243
244
  <div class="input-blocks-wrapper">
      <div class="input-blocks admin-project-list admin-currency-second">
492ed7f7   Yarik   test
245
246
247
248
249
250
          <?= $form->field($project, 'date_end')->widget(DatePicker::className(), ['dateFormat' => 'yyyy-MM-dd', 'clientOptions' => ['minDate' => 1]]) ?>
      </div>
  </div>
  
  <div class="input-blocks-wrapper">
      <div class="input-blocks admin-project-list admin-currency-second">
ce4a4468   Yarik   test
251
          <?= $form->field($project, 'hidden')->checkbox()->hint('Проект, снятый с тендера, будет добавлен в Архив (не доступен в поиске, но доступен по ссылке)') ?>
5aefd508   Виталий   tokar commit
252
253
      </div>
  </div>
aa182b5c   Yarik   test
254
  
3a1bbfcc   Yarik   test
255
  <div class="input-blocks-wrapper">
04b478b9   Виталий   tokar commit
256
      <div class="admin-save-btn skills-save-btn admin-add-remove-wr style">
06ec2844   Administrator   28.03.16
257
          <?= Html::submitButton($project->isNewRecord ? Yii::t('app', 'add') : 'Обновить', [ 'class' => 'input-blocks-wrapper button' ]) ?>
04b478b9   Виталий   tokar commit
258
259
260
          <div class="admin-remove-note">
              <?php
                  if(!$project->isNewRecord) {
06ec2844   Administrator   28.03.16
261
                      echo Html::a(Yii::t('app', 'delete'), [
04b478b9   Виталий   tokar commit
262
263
264
                          'accounts/projects-delete',
                          'id' => $project->project_id,
                      ], [
06ec2844   Administrator   28.03.16
265
266
267
                          'title'        => Yii::t('app', 'delete'),
                          'aria-label'   => Yii::t('app', 'delete'),
                          'data-confirm' =>  Yii::t('app', 'delete_confirm'),
04b478b9   Виталий   tokar commit
268
269
270
271
272
273
274
                          'data-method'  => 'post',
                          'data-pjax'    => 0,
                      ]);
                  }
              ?>
          </div>
          <div class="admin-back-note">
83b0052c   Yarik   test
275
              <?= Html::a('вернуться', Request::getIsLocal(\Yii::$app->request->referrer) ? \Yii::$app->request->referrer : [ 'accounts/projects' ]) ?>
04b478b9   Виталий   tokar commit
276
          </div>
3a1bbfcc   Yarik   test
277
278
      </div>
  </div>
aa182b5c   Yarik   test
279
280
281
282
  
  <?php
      $form->end();
  ?>
93e3bd31   Виталий   tokar commit
283
  <script>
83b0052c   Yarik   test
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
      $(document).ready(
          function()
          {
              $('.input-blocks.admin-currency-second select').change(
                  function()
                  {
                      $(this).blur()
                  }
              )
  
              if($('.admin-project-contractual input[type="checkbox"]').prop("checked"))
              {
                  $('.admin-project-list-two input, .admin-project-list-two select')
                  .attr('disabled', 'disabled')
              }
              $('.admin-project-contractual input[type="checkbox"]').change(
                  function()
                  {
                      if($(this).prop("checked"))
                      {
                          $('.admin-project-list-two input, .admin-project-list-two select')
                          .attr('disabled', 'disabled')
                      } else
                      {
                          $('.admin-project-list-two input, .admin-project-list-two select')
                          .removeAttr('disabled')
                      }
                  }
              )
5aefd508   Виталий   tokar commit
313
  
83b0052c   Yarik   test
314
315
316
317
318
              $('.admin-project-file input[type="file"]').change(
                  function()
                  {
                      var strInput = this.value
                      $('.admin-project-file .not-file-mb-adm').html(strInput.replace(/^.*\\/, ""))
5aefd508   Виталий   tokar commit
319
  
83b0052c   Yarik   test
320
321
                  }
              );
5aefd508   Виталий   tokar commit
322
  
83b0052c   Yarik   test
323
324
          }
      )
5aefd508   Виталий   tokar commit
325
  </script>