Advertisement
slo_nik

view

Oct 29th, 2017
230
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 6.46 KB | None | 0 0
  1. <?php
  2.  
  3. use yii\helpers\Html;
  4. use yii\helpers\Url;
  5. use yii\widgets\ActiveForm;
  6.  
  7. use app\modules\proposal\models\frontend\CalculateForm;
  8. use app\modules\routes\models\RoutesCities;
  9.  
  10. /**
  11.  * @var $model
  12.  * @var $dimensions
  13.  * @var $idForm
  14.  */
  15.  
  16. $form = ActiveForm::begin([
  17.     'id' => $idForm,
  18.     'enableAjaxValidation' => true,
  19.     'validationUrl' => Url::toRoute(['/proposal/default/ajax-validate']),
  20.     //'action' => ['/proposal/default/calc-form'],
  21.     'options' => [
  22.         'class' => 'b-calc1 j-calcFORM',
  23.         'data' => [
  24.             'params' => 'calc-form'
  25.         ]
  26.     ]
  27. ]);
  28.  
  29. ?>
  30. <h3 id="calc1" class="b-calcHeader">Расчитайте стоимость онлайн!</h3>
  31. <div class="b-calc1Body">
  32.     <div class="b-calcColumn">
  33.         <div class="b-calcColumnHeader">Откуда</div>
  34.         <?= $form->field($model, 'from')->dropDownList(RoutesCities::getAutocompleteList(),[
  35.             //'id' => $from_city,
  36.             'class' => 'autocomplete b-calcInput city-from',
  37.             'prompt'=> 'Выбрать...',
  38.         ])->label(false) ?>
  39.         <?= Html::hiddenInput('from[]','',['id' => 'from-city']) ?>
  40.         <div class="b-calcColumnHeader">Информация о грузе</div>
  41.         <?= $form->field($model, 'cargoData')->dropDownList(CalculateForm::getInfoCargo(), ['class' => 'b-calcInput cargo-data'])->label(false) ?>
  42.     </div>
  43.     <div class="b-calcColumn">
  44.         <div class="b-calcColumnHeader">Куда</div>
  45.         <?= $form->field($model, 'to')->dropDownList(RoutesCities::getAutocompleteList(),[
  46.             //'id' => $to_city,
  47.             'class' => 'autocomplete b-calcInput city-to',
  48.             'prompt'=> 'Выбрать...',
  49.         ])->label(false) ?>
  50.         <?= Html::hiddenInput('from[]','',['id' => 'to-city']) ?>
  51.         <!-- Для веса до 1кг и при полном незнании параметров груза -->
  52.         <div class="b-defaultComment">
  53.             <div class="b-calcColumnHeader">Комментарий</div>
  54.             <?= $form->field($model, 'message', ['validateOnType' => true])->textInput([
  55.                 'class' => 'b-calcInput',
  56.                 'placeholder' => 'Опишите груз или особые условия доставки'])->label(false) ?>
  57.         </div>
  58.  
  59.         <!-- масса-объем -->
  60.         <div class="b-cargoMassBlock" style="display: none;">
  61.             <div class="b-cargoMass">
  62.                 <div class="b-calcColumnHeader">Масса (кг)</div>
  63.                 <?= $form->field($model, 'mass', ['validateOnType' => true])->textInput([
  64.                     "class" => "b-calcInput",
  65.                     "placeholder" => "кг",
  66.                     /*"pattern" => $model->pattern*/])->label(false) ?>
  67.             </div>
  68.             <div class="b-cargoMass">
  69.                 <div class="b-calcColumnHeader">Объем (м<sup>3</sup>)</div>
  70.                 <?= $form->field($model, 'capacity', ['validateOnType' => true])->textInput([
  71.                     'class' => 'b-calcInput cargo-volume',
  72.                     'placeholder' => 'm3',
  73.                     //'pattern' => $model->pattern,
  74.                     ])->label(false) ?>
  75.             </div>
  76.         </div>
  77.         <?php
  78.          //print_r($geometry); exit();
  79.         ?>
  80.         <!-- габаритики -->
  81.         <div class="b-cargoSizes" style="display: none;">
  82.             <?php
  83.                foreach($dimensions as $key => $dimension){
  84.             ?>
  85.                    <div class="b-cargoSize">
  86.                        <div class="b-calcColumnHeader">Длина (см)</div>
  87.                        <?= $form->field($dimension, "[$key]length")->textInput([
  88.                             'class' => 'b-calcInput',
  89.                             'placeholder' => 'см',
  90.                             'pattern' => $model->pattern,
  91.                             ])->label(false) ?>
  92.                    </div>
  93.                    <div class="b-cargoSize">
  94.                        <div class="b-calcColumnHeader">Ширина (см)</div>
  95.                        <?= $form->field($dimension, "[$key]width")->textInput([
  96.                     'class' => 'b-calcInput',
  97.                     'placeholder' => 'см',
  98.                     'pattern' => $model->pattern,
  99.                     ])->label(false) ?>
  100.                    </div>
  101.                    <div class="b-cargoSize">
  102.                        <div class="b-calcColumnHeader">Высота (см)</div>
  103.                        <?= $form->field($dimension, "[$key]height")->textInput([
  104.                     'class' => 'b-calcInput',
  105.                     'placeholder' => 'см',
  106.                     'pattern' => $model->pattern,
  107.                     ])->label(false) ?>
  108.                    </div>
  109.                    <div class="b-cargoSize">
  110.                        <div class="b-calcColumnHeader">Масса (кг)</div>
  111.                        <?= $form->field($dimension, "[$key]mass")->textInput([
  112.                     'class' => 'b-calcInput',
  113.                     'placeholder' => 'кг',
  114.                     'pattern' => $model->pattern,
  115.                     ])->label(false) ?>
  116.                    </div>
  117.                    <div class="b-cargoSize">
  118.                        <div class="b-calcColumnHeader">Кол-во (шт)</div>
  119.                        <div class="b-numberInput">
  120.                        <div class="b-numberInput__plus"></div>
  121.                        <div class="b-numberInput__minus"></div>
  122.                        <?= $form->field($dimension, "[$key]qty")->textInput([
  123.                         'class' => 'b-calcInput j-numMask',
  124.                         'placeholder' => 'шт',
  125.                         'pattern' => '^[ 0-9]+$',
  126.                         ])->label(false) ?>
  127.                        </div>
  128.                    </div>
  129.             <?php
  130.                }
  131.             ?>
  132.             <div class="b-cargoSize">
  133.                 <?php
  134.                 echo Html::button('- Удалить', ['class' => 'j-addFields b-removeFields', 'style' => 'display:none;']);
  135.                 echo Html::button('+ Ещё груз', ['class' => 'j-addFields b-addFields'])
  136.                 ?>
  137.             </div>
  138.         </div>
  139.         <!-- габариты -->
  140.     </div>
  141.     <?= Html::submitButton('Получить расчёт', ['class' => 'b-btn b-calcBtn rising-popup', 'style' => 'margin-top:20px;']) ?>
  142.     <div title="Поменять местами" class="b-calcChange j-calcChange"></div>
  143. </div>
  144. <?php
  145. ActiveForm::end();
  146. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement