Всем здрасте, нужна помощь! Делаю рабочий график клиента, во VIEW в форме есть div и я пытаюсь с помощью jquery прятать определенные блоки: Выходные - то прячется все и остается только кнопки сохранить или отмена, или наоборот когда стоит Рабочий день то выбирается рабочие время и еще с низу можно поставить чекбокс и выбрать перерыв, и после нажатия на чекбокс появляется div блок с выбором времени на перерыв.
Внешний вид рабочего графика
Рабочий вариант первой формы
тут срабатывает скрипт, прячется время
тут тоже срабатывает скрипт, когда нажал на чекбокс, то появляется выбор времени для перерыва
Другая форма и не работет сам скрипт
Сам jquery
$(function () {
$('#hidden_work_time').show();
$('#type').change(function () {
if ($('#type').val() == '2') {
$('#hidden_work_time').hide();
} else {
$('#hidden_work_time').show();
}
});
и сам вид во view
<table class="table">
<tr>
<td>День</td>
<td>Время работы</td>
<td>Перерыв</td>
<td></td>
</tr>
<?php foreach ($weeks as $k => $v) : ?>
<?php $form = ActiveForm::begin(); ?>
<tr>
<td><?= $v ?></td>
<td>
<?php foreach ($workGraph as $item): ?>
<?= $item->week == $v ? $item->work_start . ' - ' . $item->work_end : false; ?>
<?php endforeach; ?>
</td>
<td>
<?php foreach ($workGraph as $item): ?>
<?= $item->week == $v ? $item->break_start . ' - ' . $item->break_end : false ?>
<?php endforeach; ?>
</td>
<td>
<?php Modal::begin([
'size' => 'modal-sm',
'toggleButton' => [
//'tag' => 'a',
'label' => 'Редактировать',
//'href' => '#lfake_id',
//'data-target' => '#lfake_id'
],
]);
?>
<div class="col-md-12">
<?= $form->field($model, 'status_week')->dropDownList(Profile::$days, ['id' => 'type'])->label(false); ?>
</div>
<div id="hidden_work_time">
<div class="col-md-6">
<?= $form->field($model, '[$k]work_start')->widget(TimePicker::classname(),
[
'value' => '00:00',
'pluginOptions' => [
'showMeridian' => false,
]
])->label('');
?>
</div>
<div class="col-md-6">
<?= $form->field($model, "[$k]work_end")->widget(TimePicker::classname(),
[
'value' => '00:00',
'pluginOptions' => [
'showMeridian' => false,
]
])->label('');
?>
</div>
<div class="col-md-12">
<?= $form->field($model, '[$k]has_break')->checkbox(['onchange' => 'showBreakTime(this.checked)']) ?>
</div>
<div id="hidden_break_time" style="display: none">
<div class="col-md-6">
<?= $form->field($model, "break_start")->widget(TimePicker::classname(),
[
'value' => '00:00',
'pluginOptions' => [
'showMeridian' => false,
]
])->label('');
?>
</div>
<div class="col-md-6">
<?= $form->field($model, "[$k]break_end")->widget(TimePicker::classname(),
[
'value' => '00:00',
'pluginOptions' => [
'showMeridian' => false,
]
])->label('');
?>
</div>
</div>
</div>
<div class="clear"></div>
<?= Html::submitButton('Сохранить', ['class' => 'btn btn-success']); ?>
<?= Html::submitButton('Отмена', ['class' => 'btn btn-danger', 'data-dismiss' => 'modal', 'aria-hidden' => 'true']); ?>
<?php Modal::end(); ?>
</td>
</tr>
<?php $form = ActiveForm::end() ?>
<?php endforeach; ?>
И еще такой вопрос дни недели я раскладываю foreach, и получается что для каждого дня есть свое время и перерыв field($model, '[$k]work_start'), вот только я не могу понять как получить сам массив что бы сохранить в бд [$k]work_start - ПН|09:00, принимаю в контроллере и в модели происходит сам updateProfile.
Сама БД
'id' => 1,
'week' => 'ПН',
'start_time' => '08.00',
'end_time' => '17.00',
'break_start' => '12.00',
'break_start' => '13.00',
is_weekend' => false,
Заранее спасибо!