Browse Source

Refactoring/traduction vues backend/views/producer

dev
Guillaume Bourgeois 6 years ago
parent
commit
6a332cc360
3 changed files with 48 additions and 50 deletions
  1. +30
    -30
      backend/controllers/ProducerController.php
  2. +5
    -7
      backend/views/producer/billing.php
  3. +13
    -13
      backend/views/producer/update.php

backend/controllers/EtablissementController.php → backend/controllers/ProducerController.php View File

use yii\filters\VerbFilter; use yii\filters\VerbFilter;
use yii\filters\AccessControl; use yii\filters\AccessControl;
use common\helpers\Upload; use common\helpers\Upload;
use common\models\Etablissement;
use common\models\Facture;
use common\models\Producer;
use common\models\Invoice;


/** /**
* UserController implements the CRUD actions for User model. * UserController implements the CRUD actions for User model.
*/ */
class EtablissementController extends BackendController
class ProducerController extends BackendController
{ {


public $enableCsrfValidation = false; public $enableCsrfValidation = false;
'allow' => true, 'allow' => true,
'roles' => ['@'], 'roles' => ['@'],
'matchCallback' => function ($rule, $action) { 'matchCallback' => function ($rule, $action) {
return Yii::$app->user->identity->status == USER::STATUS_ADMIN
|| Yii::$app->user->identity->status == USER::STATUS_BOULANGER;
return User::hasAccessBackend();
} }
] ]
], ],
} }


/** /**
* Modifie un établissement.
* Modifie un producteur.
* *
* @return mixed * @return mixed
*/ */
public function actionUpdate() public function actionUpdate()
{ {
$request = Yii::$app->request; $request = Yii::$app->request;
$model = $this->findModel(Yii::$app->user->identity->id_etablissement);
$logo_filename_old = $model->logo;
$photo_filename_old = $model->photo;
$model = $this->findModel(Producer::getId());
$logoFilenameOld = $model->logo;
$photoFilenameOld = $model->photo;


if ($model->load(Yii::$app->request->post()) && $model->save()) { if ($model->load(Yii::$app->request->post()) && $model->save()) {
Upload::uploadFile($model, 'logo', $logo_filename_old);
Upload::uploadFile($model, 'photo', $photo_filename_old);
Upload::uploadFile($model, 'logo', $logoFilenameOld);
Upload::uploadFile($model, 'photo', $photoFilenameOld);


$delete_logo = $request->post('delete_logo', 0);
if ($delete_logo) {
$deleteLogo = $request->post('delete_logo', 0);
if ($deleteLogo) {
$model->logo = ''; $model->logo = '';
$model->save(); $model->save();
} }


$delete_photo = $request->post('delete_photo', 0);
if ($delete_photo) {
$deletePhoto = $request->post('delete_photo', 0);
if ($deletePhoto) {
$model->photo = ''; $model->photo = '';
$model->save(); $model->save();
} }
return $this->redirect(['update', 'id' => $model->id, 'edit_ok' => true]); return $this->redirect(['update', 'id' => $model->id, 'edit_ok' => true]);
} else { } else {
return $this->render('update', [ return $this->render('update', [
'model' => $model,
'model' => $model,
]); ]);
} }
} }
* *
* @return mixed * @return mixed
*/ */
public function actionFacturation()
public function actionBilling()
{ {
$datas_factures = new ActiveDataProvider([
'query' => Facture::find()
->where(['id_etablissement' => Yii::$app->user->identity->id_etablissement])
$datasInvoices = new ActiveDataProvider([
'query' => Invoice::find()
->where(['id_producer' => Producer::getId()])
->orderBy('reference DESC'), ->orderBy('reference DESC'),
'pagination' => [ 'pagination' => [
'pageSize' => 1000, 'pageSize' => 1000,
], ],
]); ]);


$etablissement = Etablissement::findOne(Yii::$app->user->identity->id_etablissement);
$producer = Producer::findOne(Producer::getId());


if ($etablissement->load(Yii::$app->request->post())) {
$etablissement->save();
if ($producer->load(Yii::$app->request->post())) {
$producer->save();


if (!is_null($etablissement->prix_libre))
$alert_prix_libre = true;
if (!is_null($producer->free_price)) {
$alertFreeprice = true;
}
} }


return $this->render('facturation', [
'datas_factures' => $datas_factures,
'etablissement' => $etablissement,
'alert_prix_libre' => (isset($alert_prix_libre)) ? true : false
return $this->render('billing', [
'datasInvoices' => $datasInvoices,
'producer' => $producer,
'alertFreePrice' => (isset($alertFreeprice)) ? true : false
]); ]);
} }


*/ */
protected function findModel($id) protected function findModel($id)
{ {
if (($model = Etablissement::findOne($id)) !== null) {
if (($model = Producer::findOne($id)) !== null) {
return $model; return $model;
} else { } else {
throw new NotFoundHttpException('The requested page does not exist.'); throw new NotFoundHttpException('The requested page does not exist.');

backend/views/etablissement/facturation.php → backend/views/producer/billing.php View File

use yii\helpers\Html; use yii\helpers\Html;
use yii\grid\GridView; use yii\grid\GridView;
use common\models\User ; use common\models\User ;
use common\models\Etablissement ;
use common\models\Producer ;
use yii\bootstrap\ActiveForm; use yii\bootstrap\ActiveForm;


$this->title = 'Mon abonnement'; $this->title = 'Mon abonnement';
C'est pourquoi le modèle économique est basé sur un prix libre facturé mensuellement.<br /> C'est pourquoi le modèle économique est basé sur un prix libre facturé mensuellement.<br />
</p> </p>


<div id="estimation-facture" class="">
<div id="free-price" class="">
<?php if($alert_prix_libre): ?> <?php if($alert_prix_libre): ?>
<div class="alert alert-success"> <div class="alert alert-success">
<!-- <!--
<h2>Dernières factures</h2> <h2>Dernières factures</h2>
<?= GridView::widget([ <?= GridView::widget([
'dataProvider' => $datas_factures,
'dataProvider' => $datasInvoices,
'columns' => [ 'columns' => [
[ [
'attribute' => 'reference', 'attribute' => 'reference',
'attribute' => 'montant_ht', 'attribute' => 'montant_ht',
'label' => 'Montant', 'label' => 'Montant',
'value' => function($model) { 'value' => function($model) {
return number_format($model->montant_ht,2).' €' ;
return number_format($model->amount_ht,2).' €' ;
} }
], ],
[ [
'label' => 'Payé', 'label' => 'Payé',
'format' => 'raw', 'format' => 'raw',
'value' => function($model) { 'value' => function($model) {
if($model->paye)
if($model->paid)
{ {
return '<span class="label label-success">Oui</span>' ; return '<span class="label label-success">Oui</span>' ;
} }

backend/views/etablissement/update.php → backend/views/producer/update.php View File

<div class="user-form"> <div class="user-form">
<?php $form = ActiveForm::begin(); ?> <?php $form = ActiveForm::begin(); ?>
<div class=""> <div class="">
<?= $form->field($model, 'actif')
<?= $form->field($model, 'active')
->dropDownList([ ->dropDownList([
0 => 'Non', 0 => 'Non',
1 => 'Oui' 1 => 'Oui'
], []) ], [])
->label('Activer le producteur') ->label('Activer le producteur')
->hint('Activez cette option pour rendre votre établissement visible à vos clients.') ; ?> ->hint('Activez cette option pour rendre votre établissement visible à vos clients.') ; ?>
<?= $form->field($model, 'nom') ?>
<?= $form->field($model, 'name') ?>
<?= $form->field($model, 'type') ?> <?= $form->field($model, 'type') ?>
<?= $form->field($model, 'description') <?= $form->field($model, 'description')
->textarea(['rows' => 6]) ->textarea(['rows' => 6])
->hint('Affiché sur la page d\'accueil') ?> ->hint('Affiché sur la page d\'accueil') ?>
<?= $form->field($model, 'code_postal') ?>
<?= $form->field($model, 'ville') ?>
<?= $form->field($model, 'postcode') ?>
<?= $form->field($model, 'city') ?>
<?= $form->field($model, 'code')->hint("Saisissez ce champs si vous souhaitez protéger l'accès à votre boutique par un code, sinon laissez-le vide.<br />" <?= $form->field($model, 'code')->hint("Saisissez ce champs si vous souhaitez protéger l'accès à votre boutique par un code, sinon laissez-le vide.<br />"
. "Ce code est à communiquer à vos client pour qu'ils puissent ajouter votre établissement à leur tableau de bord.<br />" . "Ce code est à communiquer à vos client pour qu'ils puissent ajouter votre établissement à leur tableau de bord.<br />"
. "<a href=\"".Yii::$app->urlManager->createUrl(['communiquer/index'])."\">Cliquez ici</a> pour télécharger un mode d'emploi comprenant ce code à distribuer à vos clients.") ?>
. "<a href=\"".Yii::$app->urlManager->createUrl(['communicate/index'])."\">Cliquez ici</a> pour télécharger un mode d'emploi comprenant ce code à distribuer à vos clients.") ?>


<?= $form->field($model, 'delai_commande')
<?= $form->field($model, 'order_delay')
->dropDownList([ ->dropDownList([
1 => '1 jour', 1 => '1 jour',
2 => '2 jours', 2 => '2 jours',
], []) ], [])
->hint('Si <strong>1 jour</strong> est sélectionné, le client pourra commander jusqu\'à la veille de la production.<br />' ->hint('Si <strong>1 jour</strong> est sélectionné, le client pourra commander jusqu\'à la veille de la production.<br />'
. 'Si <strong>2 jours</strong> est sélectionné, le client pourra commander jusqu\'à l\'avant-veille de la production, etc.') ; ?> . 'Si <strong>2 jours</strong> est sélectionné, le client pourra commander jusqu\'à l\'avant-veille de la production, etc.') ; ?>
<?= $form->field($model, 'heure_limite_commande')
<?= $form->field($model, 'order_deadline')
->dropDownList([ ->dropDownList([
24 => 'Minuit', 24 => 'Minuit',
23 => '23h', 23 => '23h',
. 'Par exemple, si <strong>2 jours</strong> est sélectionné dans le délai de commande, le client devra commander l\'avant-veille de la production avant l\'heure précisée ici.') ; ?> . 'Par exemple, si <strong>2 jours</strong> est sélectionné dans le délai de commande, le client devra commander l\'avant-veille de la production avant l\'heure précisée ici.') ; ?>
<?= $form->field($model, 'credit_pain')
<?= $form->field($model, 'credit')
->dropDownList([ ->dropDownList([
0 => 'Non', 0 => 'Non',
1 => 'Oui', 1 => 'Oui',
], []) ], [])
->label('Activer le système de Crédit Pain')
->hint('Le système de Crédit Pain permet à vos clients d\'avoir un compte prépayé sur le site <em>La boîte à pain</em>.<br />'
. 'Ils créditent leur compte en vous donnant la somme de leur choix et c\'est ensuite à vous de '.Html::a('mettre à jour', ['user/index']).' leur compte Crédit Pain en ligne.<br />'
. 'Ceci fait, les clients paient leur commande directement via leur compte Crédit Pain.') ; ?>
->label('Activer le système de Crédit')
->hint('Le système de Crédit permet à vos clients d\'avoir un compte prépayé sur le site <em>La boîte à pain</em>.<br />'
. 'Ils créditent leur compte en vous donnant la somme de leur choix et c\'est ensuite à vous de '.Html::a('mettre à jour', ['user/index']).' leur Crédit en ligne.<br />'
. 'Ceci fait, les clients paient leur commande directement via leur Crédit.') ; ?>
<?= $form->field($model, 'photo')->fileInput() ?> <?= $form->field($model, 'photo')->fileInput() ?>
<?php <?php
} }
?> ?>
<?= $form->field($model, 'infos_commande')
<?= $form->field($model, 'order_infos')
->textarea(['rows' => 6]) ->textarea(['rows' => 6])
->hint('Affichées au client lors de sa commande')?> ->hint('Affichées au client lors de sa commande')?>

Loading…
Cancel
Save