Blame view

backend/views/project/product-create.php 2.97 KB
cc658b4c   Yarik   Big commit
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
  <?php
      
      use common\models\ProductToProject;
      use common\models\Project;
      use common\modules\product\models\Product;
      use yii\helpers\Html;
      use yii\web\View;
      use yii\widgets\ActiveForm;
      
      /**
       * @var View             $this
       * @var Project          $project
       * @var Product[]        $products
       * @var ProductToProject $model
       * @var array            $variants
       */
93c267f7   Yarik   Multilanguage big...
17
      $this->title = \Yii::t('app', 'Create product to project');
cc658b4c   Yarik   Big commit
18
      $this->params[ 'breadcrumbs' ][] = [
93c267f7   Yarik   Multilanguage big...
19
          'label' => \Yii::t('app', 'Products to project'),
cc658b4c   Yarik   Big commit
20
21
22
23
24
25
26
27
28
29
30
31
          'url'   => [
              'product',
              'id' => $project->project_id,
          ],
      ];
      $this->params[ 'breadcrumbs' ][] = $this->title;
  ?>
  <div class="articles-create">
      <h1><?= Html::encode($this->title) ?></h1>
      <?php
          $form = ActiveForm::begin();
          echo $form->field($model, 'product_id')
93c267f7   Yarik   Multilanguage big...
32
                    ->dropDownList($products, [ 'prompt' => \Yii::t('app', 'Выберите коллекцию')]);
cc658b4c   Yarik   Big commit
33
34
35
36
      ?>
      <div class="<?php echo( !empty( $variants ) ? '' : 'hidden' ); ?> product_variant_container">
          <?php
              echo $form->field($model, 'product_variant_id')
93c267f7   Yarik   Multilanguage big...
37
                        ->dropDownList($variants, [ 'prompt' => \Yii::t('app', 'Выберите товар')]);
cc658b4c   Yarik   Big commit
38
39
40
          ?>
      </div>
      <?php
93c267f7   Yarik   Multilanguage big...
41
          echo Html::submitInput(($model->isNewRecord?\Yii::t('app', 'Добавить'):\Yii::t('app', 'Обновить')), [ 'class' => 'btn btn-success' ]);
cc658b4c   Yarik   Big commit
42
43
44
          $form::end();
      ?>
  </div>
93c267f7   Yarik   Multilanguage big...
45
46
47
  <?php
  $this->registerJs("
            $(document).on(
cc658b4c   Yarik   Big commit
48
49
50
51
52
                  'change', '#producttoproject-product_id', function(e)
                  {
                      var value = parseInt($(this).val());
                      var dropDown = $('#producttoproject-product_variant_id');
                      var container = $(dropDown).parents('.product_variant_container');
93c267f7   Yarik   Multilanguage big...
53
                      $(dropDown).find('option[value!=\"\"]').remove();
cc658b4c   Yarik   Big commit
54
55
56
57
58
59
60
61
62
63
64
65
                      $(container).addClass('hidden');
                      if(value)
                      {
                          $.get(
                              '/admin/project/get-variants?product_id=' + value, function(data)
                              {
                                  if(data.length > 0)
                                  {
                                      $.each(
                                          data, function(key, value)
                                          {
                                              $(dropDown)
93c267f7   Yarik   Multilanguage big...
66
                                              .append('<option value=\"' + value.product_variant_id + '\">' + value.product_variant_id + '</option>');
cc658b4c   Yarik   Big commit
67
68
69
70
71
72
73
74
75
76
                                          }
                                      );
                                      console.log('hiodde');
                                      $(container).removeClass('hidden');
                                  }
                              }
                          );
                      }
                  }
              );
93c267f7   Yarik   Multilanguage big...
77
78
  ");
  ?>