getPointSaleModule();
$sharedPointSaleModule = $this->getSharedPointSaleModule();
$featureChecker = $this->getFeatureModule()->getChecker();
$this->setTitle('Points de vente');
$this->addBreadcrumb($this->getTitle());
$this->addButton(
[
'label' => 'Nouveau point de vente ',
'url' => 'point-sale/create',
'class' => 'btn btn-primary'
]
);
?>
= GridView::widget([
'filterModel' => $searchModel,
'dataProvider' => $dataProvider,
'columns' => [
[
'attribute' => 'name',
'label' => 'Nom',
'format' => 'raw',
'contentOptions' => ['class' => 'column-name'],
'value' => function ($model) use ($featureChecker, $sharedPointSaleModule) {
$html = '';
$html .= '
';
$html .= $model->name;
if ($model->is_bread_box) {
$html .= ' Boîte à pain ';
}
$html .= '
';
if($featureChecker->isEnabled(Feature::ALIAS_SHARED_POINT_SALE)) {
if($sharedPointSaleModule->getResolver()->countPointsSaleSharedWithPointSale($model)) {
$html .= '
';
$html .= $sharedPointSaleModule->getResolver()->getProducersSharingPointSaleAsString($model);
$html .= '
';
}
}
return $html;
}
],
[
'attribute' => 'locality',
'headerOptions' => ['class' => 'column-hide-on-mobile'],
'filterOptions' => ['class' => 'column-hide-on-mobile'],
'contentOptions' => ['class' => 'column-hide-on-mobile'],
],
[
'attribute' => 'delivery',
'label' => 'Livraison',
'filter' => [
'monday' => 'Lundi',
'tuesday' => 'Mardi',
'wednesday' => 'Mercredi',
'thursday' => 'Jeudi',
'friday' => 'Vendredi',
'saturday' => 'Samedi',
'sunday' => 'Dimanche',
],
'value' => function ($model) use ($pointSaleModule) {
return $pointSaleModule->getStrDeliveryDays($model);
}
],
[
'attribute' => 'access_type',
'label' => 'Accès',
'filter' => [
'open' => 'Ouvert',
'code' => 'Code',
'restricted_access' => 'Accès restreint'
],
'format' => 'raw',
'headerOptions' => ['class' => 'column-hide-on-mobile'],
'filterOptions' => ['class' => 'column-hide-on-mobile'],
'contentOptions' => ['class' => 'column-hide-on-mobile'],
'value' => function ($model) {
$count = UserPointSale::find()->where(
['id_point_sale' => $model->id]
)->count();
$html = '';
if ($model->restricted_access) {
$html .= '
';
if ($count == 1) {
$html .= '1 utilisateur';
} else {
$html .= $count . ' utilisateurs';
}
}
if (strlen($model->code)) {
if (strlen($html)) {
$html .= '
';
}
$html .= 'Code :
' . Html::encode(
$model->code
) . '';
}
return $html;
}
],
[
'label' => 'Modes de paiement',
'format' => 'raw',
'headerOptions' => ['class' => 'column-hide-on-mobile'],
'filterOptions' => ['class' => 'column-hide-on-mobile'],
'contentOptions' => ['class' => 'column-hide-on-mobile column-payment-method'],
'value' => function ($model) {
$html = '
';
if($model->payment_method_onsite) {
$html .= '- Sur place
';
}
if ($model->payment_method_credit && isset(Producer::$creditFunctioningArray[$model->credit_functioning])) {
$html .= '- Cagnotte ('. strtolower(Producer::$creditFunctioningArray[$model->credit_functioning]).')
';
}
if ($model->payment_method_online) {
$html .= '- Paiement en ligne
';
}
$html .= '
';
return $html;
}
],
[
'attribute' => 'default',
'label' => 'Par défaut',
'format' => 'raw',
'headerOptions' => ['class' => 'column-hide-on-mobile'],
'filterOptions' => ['class' => 'column-hide-on-mobile'],
'contentOptions' => ['class' => 'td-default column-hide-on-mobile'],
'value' => function ($model) {
if ($model->default) {
return Html::a(
'
',
['point-sale/default', 'id' => $model->id],
[
'title' => 'Point de vente par défaut',
'class' => 'btn btn-default'
]
);
} else {
return Html::a(
'
',
['point-sale/default', 'id' => $model->id],
[
'title' => 'Point de vente par défaut',
'class' => 'btn btn-default'
]
);
}
}
],
[
//'visible' => $featureChecker->isEnabled(Feature::ALIAS_SHARED_POINT_SALE),
'visible' => false,
'label' => 'Partages',
'format' => 'raw',
'headerOptions' => ['class' => 'column-hide-on-mobile'],
'filterOptions' => ['class' => 'column-hide-on-mobile'],
'contentOptions' => ['class' => 'td-shared-point-sale column-hide-on-mobile'],
'value' => function ($pointSale) use ($sharedPointSaleModule) {
$countPointsSaleSharedWithPointSale = $sharedPointSaleModule->getResolver()->countPointsSaleSharedWithPointSale($pointSale);
return '
'.$countPointsSaleSharedWithPointSale.' ';
}
],
[
'class' => 'yii\grid\ActionColumn',
'template' => '{update} {delete}',
'headerOptions' => ['class' => 'column-actions'],
'contentOptions' => ['class' => 'column-actions'],
'buttons' => [
'update' => function ($url, $model) {
return Html::a(
'
',
$url,
[
'title' => 'Modifier',
'class' => 'btn btn-default'
]
);
},
'delete' => function ($url, $model) {
return Html::a(
'
',
$url,
[
'title' => 'Supprimer',
'class' => 'btn btn-default'
]
);
}
],
],
],
]); ?>