Blame view

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