Bladeren bron

[backend] Mise en avant de la fonction d'envoi d'emails dans la section "Communiquer"

refactoring
Guillaume Bourgeois 5 jaren geleden
bovenliggende
commit
0a2f711b6a
7 gewijzigde bestanden met toevoegingen van 118 en 76 verwijderingen
  1. +3
    -1
      backend/controllers/CommunicateController.php
  2. +29
    -3
      backend/views/communicate/index.php
  3. +4
    -4
      backend/views/user/_menu.php
  4. +2
    -2
      backend/views/user/emails.php
  5. +1
    -1
      backend/views/user/index.php
  6. +68
    -62
      backend/web/css/screen.css
  7. +11
    -3
      backend/web/sass/screen.scss

+ 3
- 1
backend/controllers/CommunicateController.php Bestand weergeven

@@ -79,9 +79,11 @@ class CommunicateController extends BackendController
public function actionIndex()
{
$producer = Producer::searchOne() ;

$pointsSaleArray = PointSale::searchAll() ;
return $this->render('index', [
'producer' => $producer,
'pointsSaleArray' => $pointsSaleArray,
]);
}


+ 29
- 3
backend/views/communicate/index.php Bestand weergeven

@@ -43,7 +43,33 @@ $this->addBreadcrumb('Communiquer') ;

?>

<p>Imprimez ce petit encart pour expliquer à vos clients comment passer leurs commandes.</p>
<?php echo $this->render('instructions', ['producer' => $producer]) ; ?>
<p><?php echo Html::a('<span class="glyphicon glyphicon-download-alt"></span> Télécharger', ['communicate/instructions'], ['class'=>'btn btn-primary']) ?></p>
<div class="col-md-6">
<div id="email" class="panel panel-default" v-if="date">
<div class="panel-heading">
<h3 class="panel-title">Envoyer un email</h3>
</div>
<div class="panel-body">
<p>Choisissez à quels utilisateurs vous souhaitez envoyer un email :</p>
<div>
<?= Html::a('Tous',['user/mail', 'idPointSale' => 0], ['class' => 'btn btn-default btn-point-sale']); ?>
<?php foreach($pointsSaleArray as $pointSale): ?>
<?= Html::a(Html::encode($pointSale->name), ['user/mail', 'idPointSale' => $pointSale->id], ['class' => 'btn btn-default btn-point-sale']); ?>
<?php endforeach; ?>
</div>
</div>
</div>
</div>

<div class="col-md-6">
<div id="paper" class="panel panel-default" v-if="date">
<div class="panel-heading">
<h3 class="panel-title">Communiquer par papier</h3>
</div>
<div class="panel-body">
<p>Imprimez ce petit encart pour indiquer à vos clients l'adresse internet leur permettant de passer leurs commandes.</p>
<?php echo $this->render('instructions', ['producer' => $producer]) ; ?>
<p><?php echo Html::a('<span class="glyphicon glyphicon-download-alt"></span> Télécharger', ['communicate/instructions'], ['class'=>'btn btn-primary']) ?></p>
</div>
</div>
</div>


+ 4
- 4
backend/views/user/_menu.php Bestand weergeven

@@ -40,11 +40,11 @@ termes.

<div id="menu-users">
<div id="nav-points-sale">
<a class="btn <?php if(!$idPointSaleActive && !$sectionInactiveUsers): ?>btn-primary<?php else: ?>btn-default<?php endif; ?>" href="<?= Yii::$app->urlManager->createUrl(['user/index']); ?>">
<a class="btn <?php if(!$idPointSaleActive && !$sectionInactiveUsers): ?>btn-primary<?php else: ?>btn-default<?php endif; ?>" href="<?= Yii::$app->urlManager->createUrl(['user/'.$section]); ?>">
Tous <span class="glyphicon glyphicon-triangle-bottom"></span>
</a>
<?php foreach($pointsSaleArray as $pointSale): ?>
<a class="btn <?php if($idPointSaleActive == $pointSale->id): ?>btn-primary<?php else: ?>btn-default<?php endif; ?>" href="<?= Yii::$app->urlManager->createUrl(['user/index','idPointSale' => $pointSale->id]); ?>">
<a class="btn <?php if($idPointSaleActive == $pointSale->id): ?>btn-primary<?php else: ?>btn-default<?php endif; ?>" href="<?= Yii::$app->urlManager->createUrl(['user/'.$section,'idPointSale' => $pointSale->id]); ?>">
<?= Html::encode($pointSale->name) ?>
<span class="glyphicon glyphicon-triangle-bottom"></span>
</a>
@@ -57,10 +57,10 @@ termes.
</div>

<div id="submenu">
<a class="btn btn-xs <?php if($section == 'list'): ?>btn-primary<?php else: ?>btn-default<?php endif; ?>" href="<?= Yii::$app->urlManager->createUrl(['user/index','idPointSale' => $idPointSaleActive]); ?>">
<a class="btn btn-xs <?php if($section == 'index'): ?>btn-primary<?php else: ?>btn-default<?php endif; ?>" href="<?= Yii::$app->urlManager->createUrl(['user/index','idPointSale' => $idPointSaleActive]); ?>">
<span class="glyphicon glyphicon-th-list"></span> Liste
</a>
<a class="btn btn-xs <?php if($section == 'sendmail'): ?>btn-primary<?php else: ?>btn-default<?php endif; ?>" href="<?= Yii::$app->urlManager->createUrl(['user/mail','idPointSale' => $idPointSaleActive]); ?>">
<a class="btn btn-xs <?php if($section == 'mail'): ?>btn-primary<?php else: ?>btn-default<?php endif; ?>" href="<?= Yii::$app->urlManager->createUrl(['user/mail','idPointSale' => $idPointSaleActive]); ?>">
<span class="glyphicon glyphicon-envelope"></span> Envoyer un email
</a>
</div>

+ 2
- 2
backend/views/user/emails.php Bestand weergeven

@@ -39,7 +39,7 @@ termes.
use yii\helpers\Html ;
use yii\widgets\ActiveForm;

$this->setTitle('Liste des emails') ;
$this->setTitle('Envoyer un email') ;
$this->addBreadcrumb(['label' => 'Utilisateurs', 'url' => ['user/index']]) ;
$this->addBreadcrumb($this->getTitle()) ;

@@ -51,7 +51,7 @@ $this->render('_menu',[
'idPointSaleActive' => $idPointSaleActive,
'sectionInactiveUsers' => isset($sectionInactiveUsers) ? $sectionInactiveUsers : null,
'pointsSaleArray' => $pointsSaleArray,
'section' => 'sendmail'
'section' => 'mail'
]) ;

?>

+ 1
- 1
backend/views/user/index.php Bestand weergeven

@@ -53,7 +53,7 @@ $this->render('_menu',[
'idPointSaleActive' => $idPointSaleActive,
'sectionInactiveUsers' => $sectionInactiveUsers,
'pointsSaleArray' => $pointsSaleArray,
'section' => 'list'
'section' => 'index'
]) ;

?>

+ 68
- 62
backend/web/css/screen.css Bestand weergeven

@@ -1004,7 +1004,13 @@ a.btn.btn-primary .glyphicon-triangle-bottom, button.btn.btn-primary .glyphicon-
}

/* communiquer */
/* line 978, ../sass/screen.scss */
/* line 980, ../sass/screen.scss */
.communicate-index #email .btn-point-sale {
margin-bottom: 8px;
margin-right: 5px;
}

/* line 987, ../sass/screen.scss */
.communicate-instructions {
border: solid 1px #e0e0e0;
padding: 10px;
@@ -1014,7 +1020,7 @@ a.btn.btn-primary .glyphicon-triangle-bottom, button.btn.btn-primary .glyphicon-
margin-bottom: 30px;
font-family: "Arial";
}
/* line 987, ../sass/screen.scss */
/* line 996, ../sass/screen.scss */
.communicate-instructions .header .logo {
display: none;
float: left;
@@ -1022,15 +1028,15 @@ a.btn.btn-primary .glyphicon-triangle-bottom, button.btn.btn-primary .glyphicon-
padding-right: 20px;
padding-top: 10px;
}
/* line 994, ../sass/screen.scss */
/* line 1003, ../sass/screen.scss */
.communicate-instructions .header .logo img {
width: 75px;
}
/* line 1000, ../sass/screen.scss */
/* line 1009, ../sass/screen.scss */
.communicate-instructions h1, .communicate-instructions h2, .communicate-instructions h3, .communicate-instructions h4 {
text-align: center;
}
/* line 1004, ../sass/screen.scss */
/* line 1013, ../sass/screen.scss */
.communicate-instructions h1 {
font-family: "highvoltageregular";
font-size: 40px;
@@ -1039,7 +1045,7 @@ a.btn.btn-primary .glyphicon-triangle-bottom, button.btn.btn-primary .glyphicon-
margin-bottom: 0px;
font-weight: normal;
}
/* line 1013, ../sass/screen.scss */
/* line 1022, ../sass/screen.scss */
.communicate-instructions h2 {
margin-top: 0px;
font-family: "capsuularegular";
@@ -1049,7 +1055,7 @@ a.btn.btn-primary .glyphicon-triangle-bottom, button.btn.btn-primary .glyphicon-
left: 2px;
font-weight: normal;
}
/* line 1023, ../sass/screen.scss */
/* line 1032, ../sass/screen.scss */
.communicate-instructions h3 {
font-size: 18px;
color: #FF7F00;
@@ -1058,58 +1064,58 @@ a.btn.btn-primary .glyphicon-triangle-bottom, button.btn.btn-primary .glyphicon-
line-height: 20px;
font-family: "capsuularegular";
}
/* line 1032, ../sass/screen.scss */
/* line 1041, ../sass/screen.scss */
.communicate-instructions h4 {
font-size: 16px;
margin-top: 8px;
font-weight: normal;
font-family: "capsuularegular";
}
/* line 1038, ../sass/screen.scss */
/* line 1047, ../sass/screen.scss */
.communicate-instructions h4 span {
border-bottom: dotted 1px black;
}

/* line 1046, ../sass/screen.scss */
/* line 1054, ../sass/screen.scss */
.communicate-instructions-inset {
width: 420px;
width: auto;
margin-top: 20px;
}
/* line 1050, ../sass/screen.scss */
/* line 1058, ../sass/screen.scss */
.communicate-instructions-inset .header .logo {
width: 60px;
margin-right: 20px;
padding-top: 5px;
}
/* line 1055, ../sass/screen.scss */
/* line 1063, ../sass/screen.scss */
.communicate-instructions-inset .header .logo img {
width: 60px;
}
/* line 1061, ../sass/screen.scss */
/* line 1069, ../sass/screen.scss */
.communicate-instructions-inset .header h1 {
margin-bottom: 3px;
}
/* line 1067, ../sass/screen.scss */
/* line 1075, ../sass/screen.scss */
.communicate-instructions-inset h3 {
margin-top: 15px;
margin-bottom: 0px;
font-size: 18px;
}

/* line 1078, ../sass/screen.scss */
/* line 1086, ../sass/screen.scss */
.block-instructions-pdf {
width: 49.9%;
float: left;
border-bottom: dotted 1px gray;
}

/* line 1084, ../sass/screen.scss */
/* line 1092, ../sass/screen.scss */
.block-instructions-border {
border-right: dotted 1px gray;
border-bottom: dotted 1px gray;
}

/* line 1089, ../sass/screen.scss */
/* line 1097, ../sass/screen.scss */
.communicate-instructions-pdf {
border: 0px none;
-moz-border-radius: 0px;
@@ -1118,118 +1124,118 @@ a.btn.btn-primary .glyphicon-triangle-bottom, button.btn.btn-primary .glyphicon-
margin-bottom: 0px;
padding: 20px 0px 20px 30px;
}
/* line 1097, ../sass/screen.scss */
/* line 1105, ../sass/screen.scss */
.communicate-instructions-pdf .header .logo {
float: left;
width: 55px;
padding-right: 15px;
padding-top: 10px;
}
/* line 1103, ../sass/screen.scss */
/* line 1111, ../sass/screen.scss */
.communicate-instructions-pdf .header .logo img {
width: 55px;
}
/* line 1107, ../sass/screen.scss */
/* line 1115, ../sass/screen.scss */
.communicate-instructions-pdf .header h1 {
font-size: 32px;
}
/* line 1110, ../sass/screen.scss */
/* line 1118, ../sass/screen.scss */
.communicate-instructions-pdf .header h2 {
font-size: 16px;
}
/* line 1115, ../sass/screen.scss */
/* line 1123, ../sass/screen.scss */
.communicate-instructions-pdf h3 {
font-weight: normal;
}

/* line 1120, ../sass/screen.scss */
/* line 1128, ../sass/screen.scss */
.block-instructions-bottom {
border-bottom: 0px none;
border-bottom: solid 1px white;
}

/* abonnements */
/* line 1130, ../sass/screen.scss */
/* line 1138, ../sass/screen.scss */
.subscription-form #block-select-user {
padding-left: 0px;
}
/* line 1134, ../sass/screen.scss */
/* line 1142, ../sass/screen.scss */
.subscription-form #or-user {
font-size: 20px;
text-align: center;
}
/* line 1137, ../sass/screen.scss */
/* line 1145, ../sass/screen.scss */
.subscription-form #or-user span {
position: relative;
top: 24px;
}
/* line 1143, ../sass/screen.scss */
/* line 1151, ../sass/screen.scss */
.subscription-form .field-subscriptionform-id_producer {
display: none;
}
/* line 1147, ../sass/screen.scss */
/* line 1155, ../sass/screen.scss */
.subscription-form .days .form-group {
float: left;
margin-right: 20px;
}
/* line 1154, ../sass/screen.scss */
/* line 1162, ../sass/screen.scss */
.subscription-form .products .table {
width: 500px;
}
/* line 1157, ../sass/screen.scss */
/* line 1165, ../sass/screen.scss */
.subscription-form .products .quantity {
text-align: center;
}

/* points de vente */
/* line 1166, ../sass/screen.scss */
/* line 1174, ../sass/screen.scss */
.point-sale-form #pointsale-users {
display: none;
height: 500px;
overflow-y: scroll;
}
/* line 1170, ../sass/screen.scss */
/* line 1178, ../sass/screen.scss */
.point-sale-form #pointsale-users label {
font-weight: normal;
display: block;
}
/* line 1174, ../sass/screen.scss */
/* line 1182, ../sass/screen.scss */
.point-sale-form #pointsale-users .comment {
display: none;
margin-left: 17px;
width: 200px;
}
/* line 1182, ../sass/screen.scss */
/* line 1190, ../sass/screen.scss */
.point-sale-form #delivery-days .form-group {
float: left;
margin-right: 15px;
}
/* line 1186, ../sass/screen.scss */
/* line 1194, ../sass/screen.scss */
.point-sale-form #delivery-days .form-group label {
font-weight: normal;
}

/* utilisateurs */
/* line 1196, ../sass/screen.scss */
/* line 1204, ../sass/screen.scss */
#menu-users #nav-points-sale {
margin-bottom: 30px;
}
/* line 1200, ../sass/screen.scss */
/* line 1208, ../sass/screen.scss */
#menu-users #submenu {
margin-bottom: 30px;
text-align: center;
text-align: left;
}

/* line 1207, ../sass/screen.scss */
/* line 1215, ../sass/screen.scss */
.user-index .input-group {
width: 180px;
}
/* line 1210, ../sass/screen.scss */
/* line 1218, ../sass/screen.scss */
.user-index .input-group .input-credit {
text-align: center;
}

/* line 1217, ../sass/screen.scss */
/* line 1225, ../sass/screen.scss */
.user-credit .the-credit {
float: right;
font-weight: bold;
@@ -1245,16 +1251,16 @@ a.btn.btn-primary .glyphicon-triangle-bottom, button.btn.btn-primary .glyphicon-
}

/* facturation */
/* line 1232, ../sass/screen.scss */
/* line 1240, ../sass/screen.scss */
#free-price {
padding: 20px;
background-color: #F9F9F9;
}
/* line 1236, ../sass/screen.scss */
/* line 1244, ../sass/screen.scss */
#free-price h2 {
font-family: "myriadpro-it";
}
/* line 1240, ../sass/screen.scss */
/* line 1248, ../sass/screen.scss */
#free-price .amount span {
font-size: 25px;
color: white;
@@ -1266,25 +1272,25 @@ a.btn.btn-primary .glyphicon-triangle-bottom, button.btn.btn-primary .glyphicon-
padding-top: 7px;
font-family: "myriadpro-regular";
}
/* line 1251, ../sass/screen.scss */
/* line 1259, ../sass/screen.scss */
#free-price label {
text-transform: uppercase;
font-family: "myriadpro-light";
font-size: 20px;
}
/* line 1256, ../sass/screen.scss */
/* line 1264, ../sass/screen.scss */
#free-price label span {
font-size: 16px;
}
/* line 1262, ../sass/screen.scss */
/* line 1270, ../sass/screen.scss */
#free-price .field-producer-free_price .input-group {
width: 200px;
}
/* line 1268, ../sass/screen.scss */
/* line 1276, ../sass/screen.scss */
#free-price .field-user-free_price label {
display: none;
}
/* line 1273, ../sass/screen.scss */
/* line 1281, ../sass/screen.scss */
#free-price #producer-free_price {
width: 100px;
height: 60px;
@@ -1293,37 +1299,37 @@ a.btn.btn-primary .glyphicon-triangle-bottom, button.btn.btn-primary .glyphicon-
text-align: center;
}

/* line 1283, ../sass/screen.scss */
/* line 1291, ../sass/screen.scss */
.development-index ul#tabs-status-developments {
margin-bottom: 30px;
border-bottom: solid 3px #FF7F00;
}
/* line 1287, ../sass/screen.scss */
/* line 1295, ../sass/screen.scss */
.development-index ul#tabs-status-developments a {
text-transform: uppercase;
}
/* line 1290, ../sass/screen.scss */
/* line 1298, ../sass/screen.scss */
.development-index ul#tabs-status-developments .active {
border: 0px none;
background: none;
}
/* line 1293, ../sass/screen.scss */
/* line 1301, ../sass/screen.scss */
.development-index ul#tabs-status-developments .active a {
background-color: #FF7F00;
color: white;
}
/* line 1301, ../sass/screen.scss */
/* line 1309, ../sass/screen.scss */
.development-index #tab-developments .btn-group-priority {
width: 100%;
margin-bottom: 5px;
}
/* line 1305, ../sass/screen.scss */
/* line 1313, ../sass/screen.scss */
.development-index #tab-developments .btn-group-priority .btn-priority {
display: block;
float: none;
width: 100%;
}
/* line 1312, ../sass/screen.scss */
/* line 1320, ../sass/screen.scss */
.development-index #tab-developments .label-priority {
display: block;
width: 100%;
@@ -1332,24 +1338,24 @@ a.btn.btn-primary .glyphicon-triangle-bottom, button.btn.btn-primary .glyphicon-
}

/* stats */
/* line 1325, ../sass/screen.scss */
/* line 1333, ../sass/screen.scss */
.stats-products #nav-year {
float: right;
}
/* line 1330, ../sass/screen.scss */
/* line 1338, ../sass/screen.scss */
.stats-products tr.month th {
text-align: center;
}
/* line 1335, ../sass/screen.scss */
/* line 1343, ../sass/screen.scss */
.stats-products tr.sub-head th {
font-weight: normal;
font-size: 12px;
}
/* line 1341, ../sass/screen.scss */
/* line 1349, ../sass/screen.scss */
.stats-products td.name {
text-transform: uppercase;
}
/* line 1345, ../sass/screen.scss */
/* line 1353, ../sass/screen.scss */
.stats-products td.align-center {
text-align: center;
}

+ 11
- 3
backend/web/sass/screen.scss Bestand weergeven

@@ -975,6 +975,15 @@ a.btn, button.btn {

/* communiquer */

.communicate-index {
#email {
.btn-point-sale {
margin-bottom: 8px ;
margin-right: 5px ;
}
}
}

.communicate-instructions {
border: solid 1px #e0e0e0 ;
@@ -1040,11 +1049,10 @@ a.btn, button.btn {
}
}
}

.communicate-instructions-inset {
width: 420px ;
width: auto ;
margin-top: 20px ;
.header {
.logo {
@@ -1199,7 +1207,7 @@ a.btn, button.btn {
#submenu {
margin-bottom: 30px ;
text-align: center ;
text-align: left ;
}
}


Laden…
Annuleren
Opslaan