use app\models\Bookings;
use app\models\CustomFields;
?>
<div class="col-sm-12">
	<div class="panel panel-default">
		<div class="panel-heading">
			<?php 
echo Html::tag('h4', $model->date);
?>
		</div>
		<div class="panel-body">
			<h5 >Booked places</h5>
			<?php 
echo GridView::widget(['dataProvider' => new ActiveDataProvider(['query' => Bookings::find()->where([Bookings::FIELD_TOUR_DATE_ID => $model->tour_date_id])]), 'columns' => [Bookings::FIELD_NAME, Bookings::FIELD_ADULTS, Bookings::FIELD_CHILDREN, Bookings::FIELD_BABIES, ['class' => DataColumn::className(), 'format' => 'html', 'attribute' => Bookings::FIELD_CUSTOM_FIELDS, 'value' => function ($model) {
    /* @var $model Bookings */
    $result = 'Not set';
    if (isset($model->custom_fields)) {
        $result = null;
        $custom_fields = unserialize($model->custom_fields);
        foreach ($custom_fields as $key => $value) {
            $custom_field = CustomFields::findOne($key);
            $result .= '<b>' . $custom_field->label . ': </b>' . $value . '<br>';
        }
    }
    return $result;
}]]]);
?>
		</div>
	</div>
</div>
Пример #2
0
 public function actionDeleteCustomField($custom_field_id)
 {
     $custom_field = CustomFields::findOne($custom_field_id);
     if ($bookings = Bookings::findAll([Bookings::FIELD_TOUR_DATE_ID => $custom_field->tour_id])) {
         Yii::$app->session->setFlash('danger', 'This custom field can not delete because it contains in reserved places records');
         return $this->redirect(['edit-tour', Tours::FIELD_TOUR_ID => $custom_field->tour_id]);
     }
     $custom_field->delete();
     Yii::$app->session->setFlash('success', 'Tours date successful deleted');
     return $this->redirect(['edit-tour', Tours::FIELD_TOUR_ID => $custom_field->tour_id]);
 }