Browse Source

Merge branch 'develop'

master
Guillaume Bourgeois 6 months ago
parent
commit
b0044470a9
21 changed files with 327 additions and 186 deletions
  1. +11
    -9
      backend/controllers/DistributionController.php
  2. +1
    -1
      backend/controllers/DocumentController.php
  3. +1
    -1
      backend/controllers/ProductController.php
  4. +1
    -1
      backend/views/layouts/left.php
  5. +12
    -1
      backend/views/user/_form.php
  6. +14
    -1
      backend/views/user/view.php
  7. +3
    -1
      common/config/params.php
  8. +26
    -0
      common/versions/24.5.C.php
  9. +41
    -0
      console/migrations/m240508_093106_create_indexes_performance.php
  10. +2
    -0
      domain/Product/Product/Product.php
  11. +4
    -4
      domain/User/User/User.php
  12. +1
    -1
      domain/User/UserProducer/UserProducerRepository.php
  13. +5
    -3
      frontend/forms/SignupForm.php
  14. +8
    -1
      frontend/views/site/producer.php
  15. +12
    -1
      frontend/views/site/signup.php
  16. +1
    -1
      frontend/views/site/signup_confirm.php
  17. +5
    -2
      frontend/views/user/update.php
  18. +151
    -140
      frontend/web/css/screen.css
  19. +11
    -2
      frontend/web/sass/screen.scss
  20. +9
    -15
      producer/views/order/order.php
  21. +8
    -1
      producer/web/js/vuejs/order-order.js

+ 11
- 9
backend/controllers/DistributionController.php View File

$productOrderModule = $this->getProductOrderModule(); $productOrderModule = $this->getProductOrderModule();
$userProducerModule = $this->getUserProducerModule(); $userProducerModule = $this->getUserProducerModule();




if ($ordersArray) { if ($ordersArray) {
foreach ($ordersArray as &$order) { foreach ($ordersArray as &$order) {


'productOrder' => $productOrderArray, 'productOrder' => $productOrderArray,
'paymentsArray' => $paymentArray, 'paymentsArray' => $paymentArray,
'oneProductUnactivated' => $oneProductUnactivated, 'oneProductUnactivated' => $oneProductUnactivated,
'isLinkedToValidDocument' => $orderModule->isLinkedToValidDocument($order),
'isLinkedToValidInvoice' => $orderModule->isLinkedToValidInvoice($order),
'isCreditAutoPayment' => $orderModule->isCreditAutoPayment($order),
'isCreditContext' => $orderModule->isCreditContext($order),
'isPaid' => $orderModule->isOrderPaid($order),
'isPaidViaInvoice' => $orderModule->isOrderPaidViaInvoice($order),
'paymentLabelShort' => $orderModule->getPaymentLabelShort($order),
'isCreditFunctioningMandatory' => $orderModule->isOrderCreditFunctioningMandatory($order),
'isCreditFunctioningUser' => $orderModule->isOrderCreditFunctioningUser($order),
'isLinkedToValidDocument' => $orderModule->getSolver()->isLinkedToValidDocument($order),
'isLinkedToValidInvoice' => $orderModule->getSolver()->isLinkedToValidInvoice($order),
'isCreditAutoPayment' => $orderModule->getRepository()->isCreditAutoPayment($order),
'isCreditContext' => $orderModule->getRepository()->isCreditContext($order),
'isPaid' => $orderModule->getRepository()->isOrderPaid($order),
'isPaidViaInvoice' => $orderModule->getRepository()->isOrderPaidViaInvoice($order),
'paymentLabelShort' => $orderModule->getRepository()->getPaymentLabelShort($order),
'isCreditFunctioningMandatory' => $orderModule->getRepository()->isOrderCreditFunctioningMandatory($order),
'isCreditFunctioningUser' => $orderModule->getRepository()->isOrderCreditFunctioningUser($order),
'debitCredit' => false, 'debitCredit' => false,
'deliveryNote' => $order->deliveryNote ? $order->deliveryNote->getAttributes() : null 'deliveryNote' => $order->deliveryNote ? $order->deliveryNote->getAttributes() : null
]); ]);

+ 1
- 1
backend/controllers/DocumentController.php View File



if ($document) { if ($document) {
$ordersArray = []; $ordersArray = [];
$productsArray = $productModule->findProducts(false);
$productsArray = $productModule->getRepository()->findProducts(true);


foreach ($document->orders as $order) { foreach ($document->orders as $order) {
$orderModule->initOrder($order); $orderModule->initOrder($order);

+ 1
- 1
backend/controllers/ProductController.php View File

$orderArray = json_decode(stripslashes($array)); $orderArray = json_decode(stripslashes($array));


foreach ($orderArray as $id => $order) { foreach ($orderArray as $id => $order) {
$product = $this->findModel($id);
$product = $this->findModel((int) $id);
$product->order = $order; $product->order = $order;
$product->save(); $product->save();
} }

+ 1
- 1
backend/views/layouts/left.php View File

], ],
[ [
'label' => 'Producteurs', 'label' => 'Producteurs',
'icon' => 'th-list',
'icon' => 'bookmark',
'url' => ['/producer-admin/index'], 'url' => ['/producer-admin/index'],
'visible' => $isUserCurrentGrantedAsAdministrator 'visible' => $isUserCurrentGrantedAsAdministrator
], ],

+ 12
- 1
backend/views/user/_form.php View File

<div class="panel-heading"> <div class="panel-heading">
<h3 class="panel-title"> <h3 class="panel-title">
<i class="fa fa-paper-plane"></i> <i class="fa fa-paper-plane"></i>
Bulletin d'information
Infolettres
</h3> </h3>
</div> </div>
<div class="panel-body"> <div class="panel-body">
], ],
] ]
); ?> ); ?>
<?php if($userModule->getAuthorizationChecker()->isGrantedAsAdministrator($userCurrent)): ?>
<?= $form->field($model, 'newsletter_souke')->widget(Toggle::class,
[
'options' => [
'data-id' => $model->id,
'data-on' => 'Oui',
'data-off' => 'Non',
],
]
); ?>
<?php endif; ?>
</div> </div>
</div> </div>



+ 14
- 1
backend/views/user/view.php View File

termes. termes.
*/ */


use common\helpers\GlobalParam;
use common\helpers\Price; use common\helpers\Price;
use domain\Order\Order\OrderModule; use domain\Order\Order\OrderModule;
use domain\User\User\UserModule; use domain\User\User\UserModule;
use yii\helpers\Html; use yii\helpers\Html;
use yii\widgets\ActiveForm; use yii\widgets\ActiveForm;


$userCurrent = GlobalParam::getCurrentUser();
$orderModule = OrderModule::getInstance(); $orderModule = OrderModule::getInstance();
$userModule = UserModule::getInstance(); $userModule = UserModule::getInstance();
$userProducerModule = UserProducerModule::getInstance(); $userProducerModule = UserProducerModule::getInstance();
</li> </li>
<?php endif; ?> <?php endif; ?>
<li class="list-group-item"> <li class="list-group-item">
<strong>Bulletin d'information</strong>
<strong>Infolettre</strong>
<span class="pull-right"> <span class="pull-right">
<?php $isUserSubscribedNewsletter = $userModule->getNewsletterManager()->isUserSubscribedNewsletter($model); ?> <?php $isUserSubscribedNewsletter = $userModule->getNewsletterManager()->isUserSubscribedNewsletter($model); ?>
<span class="label label-<?= $isUserSubscribedNewsletter ? 'success' : 'default' ?>"> <span class="label label-<?= $isUserSubscribedNewsletter ? 'success' : 'default' ?>">
</span> </span>
</span> </span>
</li> </li>
<?php if($userModule->getAuthorizationChecker()->isGrantedAsAdministrator($userCurrent)): ?>
<li class="list-group-item">
<strong>Infolettre Souke</strong>
<span class="pull-right">
<?php $isUserSubscribedNewsletterSouke = $model->newsletter_souke; ?>
<span class="label label-<?= $isUserSubscribedNewsletterSouke ? 'success' : 'default' ?>">
<?= $isUserSubscribedNewsletterSouke ? 'Oui' : 'Non' ?>
</span>
</span>
</li>
<?php endif; ?>
<?php if($model->userPointSale): ?> <?php if($model->userPointSale): ?>
<li class="list-group-item"> <li class="list-group-item">
<strong>Points de vente</strong> <strong>Points de vente</strong>

+ 3
- 1
common/config/params.php View File

*/ */


return [ return [
'version' => '24.5.B',
'version' => '24.5.C',
'maintenanceMode' => false, 'maintenanceMode' => false,
'siteName' => 'Souke', 'siteName' => 'Souke',
'tinyMcePlugins' => 'preview searchreplace autolink autosave save directionality code visualblocks visualchars fullscreen image link lists wordcount help', 'tinyMcePlugins' => 'preview searchreplace autolink autosave save directionality code visualblocks visualchars fullscreen image link lists wordcount help',
'adminEmail' => 'contact@souke.fr', 'adminEmail' => 'contact@souke.fr',
'supportEmail' => 'contact@souke.fr', 'supportEmail' => 'contact@souke.fr',
'newsletterProducerDescription' => "Pour recevoir les emails de prise de commande et d'information",
'newsletterSoukeDescription' => "Pour suivre l'actualité de la plateforme",
'user.passwordResetTokenExpire' => 3600, 'user.passwordResetTokenExpire' => 3600,
'producer' => false, 'producer' => false,
'orderStatus' => [ 'orderStatus' => [

+ 26
- 0
common/versions/24.5.C.php View File

<?php

require_once dirname(__FILE__).'/_macros.php';

version(
'13/05/2024',
[
[
],
[
"[Administration] Distributions : optimisation du chargement des jours de distribution",
"[Administration] Documents : correctif bug nom produit non affiché et TVA en NaN",
"[Site] Inscription : ajout description infolettres",
]
],
[
[
],
[

]
],
$userCurrent
);

?>

+ 41
- 0
console/migrations/m240508_093106_create_indexes_performance.php View File

<?php

use yii\db\Migration;

/**
* Class m240508_093106_create_indexes_performance
*/
class m240508_093106_create_indexes_performance extends Migration
{
/**
* {@inheritdoc}
*/
public function safeUp()
{
$this->createIndex('id_user', 'user_producer', 'id_user');
$this->createIndex('id_producer', 'user_producer', 'id_producer');
$this->createIndex('id_product', 'product_price', 'id_product');
$this->createIndex('status', 'user', 'status');
$this->createIndex('email', 'user', 'email');
$this->createIndex('type', 'user', 'type');
$this->createIndex('id_producer', 'user', 'id_producer');
$this->createIndex('date', 'distribution', 'date');
$this->createIndex('id_producer', 'distribution', 'id_producer');
}

/**
* {@inheritdoc}
*/
public function safeDown()
{
$this->dropIndex('id_user', 'user_producer');
$this->dropIndex('id_producer', 'user_producer');
$this->dropIndex('id_product', 'product_prices');
$this->dropIndex('status', 'user');
$this->dropIndex('email', 'user');
$this->dropIndex('type', 'user');
$this->dropIndex('id_producer', 'user');
$this->dropIndex('date', 'distribution');
$this->dropIndex('id_producer', 'distribution');
}
}

+ 2
- 0
domain/Product/Product/Product.php View File



public function afterFind() public function afterFind()
{ {
// @TODO : à optimiser en rendant obligatoire le champs taxrate au niveau des produits pour ne pas avoir à la
// charger depuis le producteur si elle n'est pas définie
if ($this->taxRate == null) { if ($this->taxRate == null) {
if(GlobalParam::getCurrentProducerId() && $this->id_producer == GlobalParam::getCurrentProducerId()) { if(GlobalParam::getCurrentProducerId() && $this->id_producer == GlobalParam::getCurrentProducerId()) {
$producer = GlobalParam::getCurrentProducer(); $producer = GlobalParam::getCurrentProducer();

+ 4
- 4
domain/User/User/User.php View File

'product_price_percent' => 'Prix produits : pourcentage', 'product_price_percent' => 'Prix produits : pourcentage',
'user_groups' => "Groupes d'utilisateurs", 'user_groups' => "Groupes d'utilisateurs",
'evoliz_code' => 'Code client Evoliz', 'evoliz_code' => 'Code client Evoliz',
'newsletter' => "Inscrit au bulletin d'information",
'newsletter' => "Inscrit à l'infolettre",
'exclude_export_shopping_cart_labels' => "Exclure de l'export d'étiquettes", 'exclude_export_shopping_cart_labels' => "Exclure de l'export d'étiquettes",
'send_mail_welcome' => "Envoyer un email de bienvenue", 'send_mail_welcome' => "Envoyer un email de bienvenue",
'email_sending_invoicing_documents' => 'Email facturation', 'email_sending_invoicing_documents' => 'Email facturation',
'trust_alert' => 'Alerte confiance', 'trust_alert' => 'Alerte confiance',
'trust_alert_comment' => 'Commentaire', 'trust_alert_comment' => 'Commentaire',
'newsletter_souke' => 'Infolettre Souke'
'newsletter_souke' => "S'abonner à l'infolettre de Souke"
]; ];
} }


public function verifyEmail($attribute, $params) public function verifyEmail($attribute, $params)
{ {
if ($this->id) { if ($this->id) {
$user = User::find()->where("email LIKE :email AND type != :guest AND id != :id")->params(array(':email' => '%' . $this->email . '%', ':id' => $this->id, ':guest' => 'guest'))->one();
$user = User::find()->where("email LIKE :email AND type != :guest AND id != :id")->params(array(':email' => $this->email, ':id' => $this->id, ':guest' => 'guest'))->one();
} else { } else {
$user = User::find()->where("email LIKE :email AND type != :guest")->params(array(':email' => '%' . $this->email . '%', ':guest' => 'guest'))->one();
$user = User::find()->where("email LIKE :email AND type != :guest")->params(array(':email' => $this->email, ':guest' => 'guest'))->one();
} }


if ($user) { if ($user) {

+ 1
- 1
domain/User/UserProducer/UserProducerRepository.php View File

public function getDefaultOptionsSearch(): array public function getDefaultOptionsSearch(): array
{ {
return [ return [
self::WITH => ['producer'],
self::WITH => [],
self::JOIN_WITH => [], self::JOIN_WITH => [],
self::ORDER_BY => '', self::ORDER_BY => '',
self::ATTRIBUTE_ID_PRODUCER => 'user_producer.id_producer' self::ATTRIBUTE_ID_PRODUCER => 'user_producer.id_producer'

+ 5
- 3
frontend/forms/SignupForm.php View File

public $verifyCode; public $verifyCode;
public $is_test; public $is_test;
public $newsletter = false; public $newsletter = false;
public $newsletter_souke = false;


/** /**
* @inheritdoc * @inheritdoc
return !$model->signup_producer_only; return !$model->signup_producer_only;
}], }],
['password', 'string', 'min' => 6, 'tooShort' => 'Votre mot de passe doit contenir au moins 6 caractères'], ['password', 'string', 'min' => 6, 'tooShort' => 'Votre mot de passe doit contenir au moins 6 caractères'],
[['is_producer', 'newsletter'], 'boolean'],
[['is_producer', 'newsletter', 'newsletter_souke'], 'boolean'],
['cgv', 'boolean'], ['cgv', 'boolean'],
['cgv', function ($attribute, $params) { ['cgv', function ($attribute, $params) {
$cgv = $this->$attribute; $cgv = $this->$attribute;
'city' => 'Commune', 'city' => 'Commune',
'id_producer' => 'Producteur', 'id_producer' => 'Producteur',
'type' => 'Type de producteur', 'type' => 'Type de producteur',
// 'free_price' => 'Prix libre',
'id_tax_rate_default' => 'TVA par défaut', 'id_tax_rate_default' => 'TVA par défaut',
'verifyCode' => 'Code de vérification', 'verifyCode' => 'Code de vérification',
'newsletter' => "S'abonner au bulletin d'information de ce producteur"
'newsletter' => "S'abonner à l'infolettre de ce producteur",
'newsletter_souke' => "S'abonner à l'infolettre de Souke",
]; ];
} }


$user->name = $this->name; $user->name = $this->name;
$user->lastname = $this->lastname; $user->lastname = $this->lastname;
$user->phone = $this->phone; $user->phone = $this->phone;
$user->newsletter_souke = $this->newsletter_souke;
} }


public function populateProducer($producer) public function populateProducer($producer)

+ 8
- 1
frontend/views/site/producer.php View File

<?= $form->field($signupForm, 'lastname') ?> <?= $form->field($signupForm, 'lastname') ?>
<?= $form->field($signupForm, 'name') ?> <?= $form->field($signupForm, 'name') ?>
<?= $form->field($signupForm, 'phone') ?> <?= $form->field($signupForm, 'phone') ?>
<?= $form->field($signupForm, 'newsletter')->checkbox() ?>
<?php if(strlen($producer->code)): ?> <?php if(strlen($producer->code)): ?>
<?= $form->field($signupForm, 'code',[ <?= $form->field($signupForm, 'code',[
'inputTemplate' => '<div class="input-group"><span class="input-group-addon"><span class="glyphicon glyphicon-lock"></span></span>{input}</div>', 'inputTemplate' => '<div class="input-group"><span class="input-group-addon"><span class="glyphicon glyphicon-lock"></span></span>{input}</div>',
->label('Code du producteur') ->label('Code du producteur')
->hint('Renseignez-vous auprès de votre producteur pour qu\'il vous fournisse le code d\'accès') ; ?> ->hint('Renseignez-vous auprès de votre producteur pour qu\'il vous fournisse le code d\'accès') ; ?>
<?php endif; ?> <?php endif; ?>
<div class="block-newsletter">
<?= $form->field($signupForm, 'newsletter')
->hint(Yii::$app->parameterBag->get('newsletterProducerDescription'))
->checkbox() ?>
<?= $form->field($signupForm, 'newsletter_souke')
->hint(Yii::$app->parameterBag->get('newsletterSoukeDescription'))
->checkbox() ?>
</div>
<?= $form->field($signupForm, 'verifyCode')->widget(\yii\captcha\Captcha::className(), [ <?= $form->field($signupForm, 'verifyCode')->widget(\yii\captcha\Captcha::className(), [
'template' => '<div class="row"><div class="col-lg-3">{image}</div><div class="col-lg-6">{input}</div></div>', 'template' => '<div class="row"><div class="col-lg-3">{image}</div><div class="col-lg-6">{input}</div></div>',
]) ?> ]) ?>

+ 12
- 1
frontend/views/site/signup.php View File

<div id="fields-user"> <div id="fields-user">
<?= $form->field($model, 'id_producer') <?= $form->field($model, 'id_producer')
->dropDownList($dataProducers, ['prompt' => '--','encode' => false,'options' => $optionsProducers]) ?> ->dropDownList($dataProducers, ['prompt' => '--','encode' => false,'options' => $optionsProducers]) ?>
<?= $form->field($model, 'newsletter')->checkbox() ?>
<div id="bloc-code-acces"> <div id="bloc-code-acces">
<?= $form->field($model, 'code',[ <?= $form->field($model, 'code',[
'inputTemplate' => '<div class="input-group"><span class="input-group-addon"><span class="glyphicon glyphicon-lock"></span></span>{input}</div>', 'inputTemplate' => '<div class="input-group"><span class="input-group-addon"><span class="glyphicon glyphicon-lock"></span></span>{input}</div>',
->label('Code') ->label('Code')
->hint('Renseignez-vous auprès de votre producteur pour qu\'il vous fournisse le code d\'accès') ; ?> ->hint('Renseignez-vous auprès de votre producteur pour qu\'il vous fournisse le code d\'accès') ; ?>
</div> </div>

<div class="block-newsletter">
<?= $form->field($model, 'newsletter')
->hint(Yii::$app->parameterBag->get('newsletterProducerDescription'))
->checkbox() ?>
</div>
</div>

<div class="block-newsletter">
<?= $form->field($model, 'newsletter_souke')
->hint(Yii::$app->parameterBag->get('newsletterSoukeDescription'))
->checkbox() ?>
</div> </div>


<?= $form->field($model, 'verifyCode')->widget(\yii\captcha\Captcha::className(), [ <?= $form->field($model, 'verifyCode')->widget(\yii\captcha\Captcha::className(), [

+ 1
- 1
frontend/views/site/signup_confirm.php View File

} }
elseif($producerRedirect) { elseif($producerRedirect) {
$urlRedirect = $this->getUrlManagerProducer()->createAbsoluteUrl(['site/index', 'slug_producer' => $producerRedirect->slug]); $urlRedirect = $this->getUrlManagerProducer()->createAbsoluteUrl(['site/index', 'slug_producer' => $producerRedirect->slug]);
$redirectLabel = "Redirection vers l'espace de votre producteur ...";
$redirectLabel = "Redirection vers la boutique de votre producteur ...";
} }


?> ?>

+ 5
- 2
frontend/views/user/update.php View File

<?= $form->field($model, 'phone')->textInput() ?> <?= $form->field($model, 'phone')->textInput() ?>
<?= $form->field($model, 'email')->textInput(); ?> <?= $form->field($model, 'email')->textInput(); ?>
<?= $form->field($model, 'address')->textarea() ?> <?= $form->field($model, 'address')->textarea() ?>
<div class="block-newsletter">
<?= $form->field($model, 'newsletter_souke')
->hint(Yii::$app->parameterBag->get('newsletterSoukeDescription'))
->checkbox() ?>
</div>


<h2>Mot de passe</h2> <h2>Mot de passe</h2>
<p>Renseignez les champs ci-dessous si vous souhaitez modifier votre mot de passe.</p> <p>Renseignez les champs ci-dessous si vous souhaitez modifier votre mot de passe.</p>
<?= $form->field($model, 'password_new')->passwordInput() ?> <?= $form->field($model, 'password_new')->passwordInput() ?>
<?= $form->field($model, 'password_new_confirm')->passwordInput() ?> <?= $form->field($model, 'password_new_confirm')->passwordInput() ?>



<div class="clr"></div> <div class="clr"></div>

<div class="form-group form-buttons"> <div class="form-group form-buttons">
<?= Html::submitButton('<i class="bi bi-pencil"></i> Modifier', ['class' => $model->isNewRecord ? 'btn btn-success' : 'btn btn-primary', 'name' => 'user-profile-button']) ?> <?= Html::submitButton('<i class="bi bi-pencil"></i> Modifier', ['class' => $model->isNewRecord ? 'btn btn-success' : 'btn btn-primary', 'name' => 'user-profile-button']) ?>
</div> </div>

+ 151
- 140
frontend/web/css/screen.css View File

#content #row-functionalities-rates .block-points-sale-products img { #content #row-functionalities-rates .block-points-sale-products img {
width: 40px; width: 40px;
} }
/* line 540, ../sass/screen.scss */
/* line 539, ../sass/screen.scss */
#content #block-services .panel-body .panel-default { #content #block-services .panel-body .panel-default {
-moz-box-shadow: none; -moz-box-shadow: none;
-webkit-box-shadow: none; -webkit-box-shadow: none;
box-shadow: none; box-shadow: none;
} }
/* line 543, ../sass/screen.scss */
/* line 542, ../sass/screen.scss */
#content #block-services .panel-body .panel-default .panel-body { #content #block-services .panel-body .panel-default .panel-body {
padding: 5px; padding: 5px;
} }
/* line 546, ../sass/screen.scss */
/* line 545, ../sass/screen.scss */
#content #block-services .panel-body .panel-default .panel-body h3 { #content #block-services .panel-body .panel-default .panel-body h3 {
margin-top: 0px; margin-top: 0px;
color: black; color: black;
font-size: 1.2rem; font-size: 1.2rem;
} }
/* line 558, ../sass/screen.scss */
/* line 556, ../sass/screen.scss */
#content #block-rates .panel-default { #content #block-rates .panel-default {
-moz-box-shadow: none; -moz-box-shadow: none;
-webkit-box-shadow: none; -webkit-box-shadow: none;
box-shadow: none; box-shadow: none;
} }
/* line 560, ../sass/screen.scss */
/* line 558, ../sass/screen.scss */
#content #block-rates .panel-default .panel-heading { #content #block-rates .panel-default .panel-heading {
padding: 0px; padding: 0px;
margin-bottom: 20px; margin-bottom: 20px;
} }
/* line 564, ../sass/screen.scss */
/* line 562, ../sass/screen.scss */
#content #block-rates .panel-default .panel-body { #content #block-rates .panel-default .panel-body {
padding: 0px; padding: 0px;
} }
/* line 570, ../sass/screen.scss */
/* line 568, ../sass/screen.scss */
#content #block-rates table th { #content #block-rates table th {
font-weight: bold; font-weight: bold;
font-size: 14px; font-size: 14px;
} }
/* line 578, ../sass/screen.scss */
/* line 576, ../sass/screen.scss */
#content #btn-demo:hover, #content #btn-demo:focus, #content #btn-demo:active { #content #btn-demo:hover, #content #btn-demo:focus, #content #btn-demo:active {
color: black; color: black;
} }


/* line 588, ../sass/screen.scss */
/* line 586, ../sass/screen.scss */
#content #contact { #content #contact {
display: none; display: none;
} }
/* line 592, ../sass/screen.scss */
/* line 590, ../sass/screen.scss */
#content #contact .icon { #content #contact .icon {
width: 55px; width: 55px;
top: -15px; top: -15px;
margin-left: -70px; margin-left: -70px;
} }
/* line 598, ../sass/screen.scss */
/* line 596, ../sass/screen.scss */
#content #contact .form-control:focus { #content #contact .form-control:focus {
/*@include box-shadow(0 1px 1px rgba(0, 0, 0, 0.075) inset, 0 0 8px $jaune) ; /*@include box-shadow(0 1px 1px rgba(0, 0, 0, 0.075) inset, 0 0 8px $jaune) ;
border-color: $jaune ;*/ border-color: $jaune ;*/
} }
/* line 603, ../sass/screen.scss */
/* line 601, ../sass/screen.scss */
#content #contact .form-group { #content #contact .form-group {
text-align: center; text-align: center;
} }
/* line 607, ../sass/screen.scss */
/* line 605, ../sass/screen.scss */
#content #contact .img-right { #content #contact .img-right {
float: right; float: right;
} }
/* line 610, ../sass/screen.scss */
/* line 608, ../sass/screen.scss */
#content #contact .img-right img { #content #contact .img-right img {
width: 300px; width: 300px;
} }


/* line 616, ../sass/screen.scss */
/* line 614, ../sass/screen.scss */
#bookmarked-producers { #bookmarked-producers {
padding: 0px; padding: 0px;
padding-top: 15px; padding-top: 15px;
border-bottom: solid 1px #e0e0e0; border-bottom: solid 1px #e0e0e0;
background-color: white; background-color: white;
} }
/* line 624, ../sass/screen.scss */
/* line 622, ../sass/screen.scss */
#bookmarked-producers h2 { #bookmarked-producers h2 {
float: left; float: left;
font-family: 'highvoltageregular'; font-family: 'highvoltageregular';
padding: 0px; padding: 0px;
color: black; color: black;
} }
/* line 635, ../sass/screen.scss */
/* line 633, ../sass/screen.scss */
#bookmarked-producers #producers { #bookmarked-producers #producers {
position: relative; position: relative;
top: -5px; top: -5px;
left: 5px; left: 5px;
} }
/* line 641, ../sass/screen.scss */
/* line 639, ../sass/screen.scss */
#bookmarked-producers #discover { #bookmarked-producers #discover {
padding-bottom: 20px; padding-bottom: 20px;
text-align: center; text-align: center;
} }
/* line 645, ../sass/screen.scss */
/* line 643, ../sass/screen.scss */
#bookmarked-producers #discover p { #bookmarked-producers #discover p {
padding-bottom: 0px; padding-bottom: 0px;
color: #e4ac07; color: #e4ac07;
} }
/* line 650, ../sass/screen.scss */
/* line 648, ../sass/screen.scss */
#bookmarked-producers #discover .btn { #bookmarked-producers #discover .btn {
background-color: #e4ac07; background-color: #e4ac07;
color: #ee6f42; color: #ee6f42;
border: solid 1px #e4ac07; border: solid 1px #e4ac07;
} }


/* line 659, ../sass/screen.scss */
/* line 657, ../sass/screen.scss */
#footer { #footer {
position: absolute; position: absolute;
bottom: 0px; bottom: 0px;
border-top: 0px none; border-top: 0px none;
color: white; color: white;
} }
/* line 670, ../sass/screen.scss */
/* line 668, ../sass/screen.scss */
#footer a { #footer a {
color: white; color: white;
font-family: 'worksans_light'; font-family: 'worksans_light';
border-right: solid 1px white; border-right: solid 1px white;
border: 0px none; border: 0px none;
} }
/* line 680, ../sass/screen.scss */
/* line 678, ../sass/screen.scss */
#footer a:hover { #footer a:hover {
text-decoration: underline; text-decoration: underline;
} }
/* line 684, ../sass/screen.scss */
/* line 682, ../sass/screen.scss */
#footer a:last-child { #footer a:last-child {
border: 0px none; border: 0px none;
} }


/* line 692, ../sass/screen.scss */
/* line 690, ../sass/screen.scss */
.site-iamproducer .panel { .site-iamproducer .panel {
text-align: center; text-align: center;
} }
/* line 696, ../sass/screen.scss */
/* line 694, ../sass/screen.scss */
.site-iamproducer .word-animate { .site-iamproducer .word-animate {
margin-top: 40px; margin-top: 40px;
margin-bottom: 60px; margin-bottom: 60px;
height: auto; height: auto;
} }
/* line 701, ../sass/screen.scss */
/* line 699, ../sass/screen.scss */
.site-iamproducer .word-animate span.functionality { .site-iamproducer .word-animate span.functionality {
display: inline-block; display: inline-block;
-moz-border-radius: 15px; -moz-border-radius: 15px;
color: black; color: black;
padding: 15px 30px; padding: 15px 30px;
} }
/* line 708, ../sass/screen.scss */
/* line 706, ../sass/screen.scss */
.site-iamproducer .word-animate span.functionality .glyphicon { .site-iamproducer .word-animate span.functionality .glyphicon {
position: relative; position: relative;
top: 4px; top: 4px;
right: 6px; right: 6px;
} }
/* line 716, ../sass/screen.scss */
/* line 714, ../sass/screen.scss */
.site-iamproducer .hook { .site-iamproducer .hook {
font-size: 23px; font-size: 23px;
line-height: 28px; line-height: 28px;
margin-bottom: 30px; margin-bottom: 30px;
} }


/* line 727, ../sass/screen.scss */
/* line 725, ../sass/screen.scss */
.site-producers #producers-list #producer-search { .site-producers #producers-list #producer-search {
margin-bottom: 40px; margin-bottom: 40px;
-moz-box-shadow: 0px 0px 15px #d5d5d5; -moz-box-shadow: 0px 0px 15px #d5d5d5;
-webkit-box-shadow: 0px 0px 15px #d5d5d5; -webkit-box-shadow: 0px 0px 15px #d5d5d5;
box-shadow: 0px 0px 15px #d5d5d5; box-shadow: 0px 0px 15px #d5d5d5;
} }
/* line 731, ../sass/screen.scss */
/* line 729, ../sass/screen.scss */
.site-producers #producers-list #producer-search .input-group-text { .site-producers #producers-list #producer-search .input-group-text {
padding: 20px; padding: 20px;
background-color: #f4efe8; background-color: #f4efe8;
-webkit-box-shadow: -30px 0px 15px -15px #ece4d8 inset; -webkit-box-shadow: -30px 0px 15px -15px #ece4d8 inset;
box-shadow: -30px 0px 15px -15px #ece4d8 inset; box-shadow: -30px 0px 15px -15px #ece4d8 inset;
} }
/* line 741, ../sass/screen.scss */
/* line 739, ../sass/screen.scss */
.site-producers #producers-list #producer-search .form-control { .site-producers #producers-list #producer-search .form-control {
border: 0px none; border: 0px none;
-moz-border-radius: 0px; -moz-border-radius: 0px;
padding: 10px 20px; padding: 10px 20px;
color: black; color: black;
} }
/* line 749, ../sass/screen.scss */
/* line 747, ../sass/screen.scss */
.site-producers #producers-list #producer-search .form-control:focus { .site-producers #producers-list #producer-search .form-control:focus {
-moz-box-shadow: none !important; -moz-box-shadow: none !important;
-webkit-box-shadow: none !important; -webkit-box-shadow: none !important;
box-shadow: none !important; box-shadow: none !important;
} }
/* line 753, ../sass/screen.scss */
/* line 751, ../sass/screen.scss */
.site-producers #producers-list #producer-search .form-control::placeholder { .site-producers #producers-list #producer-search .form-control::placeholder {
color: gray; color: gray;
} }
/* line 759, ../sass/screen.scss */
/* line 757, ../sass/screen.scss */
.site-producers #producers-list .alert-no-results { .site-producers #producers-list .alert-no-results {
display: none; display: none;
} }
/* line 763, ../sass/screen.scss */
/* line 761, ../sass/screen.scss */
.site-producers #producers-list .panel { .site-producers #producers-list .panel {
margin-bottom: 40px; margin-bottom: 40px;
} }
/* line 766, ../sass/screen.scss */
/* line 764, ../sass/screen.scss */
.site-producers #producers-list .panel .panel-body { .site-producers #producers-list .panel .panel-body {
border: 0px none; border: 0px none;
overflow: hidden; overflow: hidden;
} }
/* line 770, ../sass/screen.scss */
/* line 768, ../sass/screen.scss */
.site-producers #producers-list .panel .panel-body h2 { .site-producers #producers-list .panel .panel-body h2 {
margin-top: 0px; margin-top: 0px;
margin-bottom: 10px; margin-bottom: 10px;
padding-bottom: 0px; padding-bottom: 0px;
} }
/* line 775, ../sass/screen.scss */
/* line 773, ../sass/screen.scss */
.site-producers #producers-list .panel .panel-body h2 a.producer-link { .site-producers #producers-list .panel .panel-body h2 a.producer-link {
color: #e4ac07; color: #e4ac07;
text-decoration: none; text-decoration: none;
} }
/* line 780, ../sass/screen.scss */
/* line 778, ../sass/screen.scss */
.site-producers #producers-list .panel .panel-body h2 .btn-bookmark { .site-producers #producers-list .panel .panel-body h2 .btn-bookmark {
position: relative; position: relative;
top: 0px; top: 0px;
font-size: 1.3rem; font-size: 1.3rem;
color: gray; color: gray;
} }
/* line 788, ../sass/screen.scss */
/* line 786, ../sass/screen.scss */
.site-producers #producers-list .panel .panel-body p { .site-producers #producers-list .panel .panel-body p {
padding-bottom: 0px; padding-bottom: 0px;
} }
/* line 792, ../sass/screen.scss */
/* line 790, ../sass/screen.scss */
.site-producers #producers-list .panel .panel-body .producer-type { .site-producers #producers-list .panel .panel-body .producer-type {
font-family: 'worksans_regular'; font-family: 'worksans_regular';
font-size: 1.05rem; font-size: 1.05rem;
text-transform: uppercase; text-transform: uppercase;
margin-bottom: 10px; margin-bottom: 10px;
} }
/* line 800, ../sass/screen.scss */
/* line 798, ../sass/screen.scss */
.site-producers #producers-list .panel .panel-footer { .site-producers #producers-list .panel .panel-footer {
border: 0px none; border: 0px none;
padding: 0px; padding: 0px;
} }
/* line 804, ../sass/screen.scss */
/* line 802, ../sass/screen.scss */
.site-producers #producers-list .panel .panel-footer a { .site-producers #producers-list .panel .panel-footer a {
display: block; display: block;
width: 100%; width: 100%;
padding-bottom: 0px; padding-bottom: 0px;
margin: 0px; margin: 0px;
} }
/* line 814, ../sass/screen.scss */
/* line 812, ../sass/screen.scss */
.site-producers #producers-list .panel .panel-footer a.btn-secondary { .site-producers #producers-list .panel .panel-footer a.btn-secondary {
color: #e4ac07; color: #e4ac07;
background-color: white; background-color: white;
-webkit-box-shadow: -30px 0px 15px -15px #ece4d8 inset; -webkit-box-shadow: -30px 0px 15px -15px #ece4d8 inset;
box-shadow: -30px 0px 15px -15px #ece4d8 inset; box-shadow: -30px 0px 15px -15px #ece4d8 inset;
} }
/* line 820, ../sass/screen.scss */
/* line 818, ../sass/screen.scss */
.site-producers #producers-list .panel .panel-footer a.btn-secondary:hover { .site-producers #producers-list .panel .panel-footer a.btn-secondary:hover {
background-color: #f4efe8; background-color: #f4efe8;
border: solid 1px #f4efe8; border: solid 1px #f4efe8;
-webkit-box-shadow: none; -webkit-box-shadow: none;
box-shadow: none; box-shadow: none;
} }
/* line 836, ../sass/screen.scss */
/* line 834, ../sass/screen.scss */
.site-producers #producers-list .panel .logo { .site-producers #producers-list .panel .logo {
float: right; float: right;
position: relative; position: relative;
text-align: right; text-align: right;
overflow: hidden; overflow: hidden;
} }
/* line 847, ../sass/screen.scss */
/* line 845, ../sass/screen.scss */
.site-producers #producers-list .panel .logo .img-logo { .site-producers #producers-list .panel .logo .img-logo {
position: absolute; position: absolute;
top: 50%; top: 50%;
max-width: 90px; max-width: 90px;
max-height: 90px; max-height: 90px;
} }
/* line 859, ../sass/screen.scss */
/* line 857, ../sass/screen.scss */
.site-producers #wrapper-producers-map { .site-producers #wrapper-producers-map {
z-index: 10; z-index: 10;
} }
/* line 862, ../sass/screen.scss */
/* line 860, ../sass/screen.scss */
.site-producers #wrapper-producers-map #producers-map { .site-producers #wrapper-producers-map #producers-map {
height: 750px; height: 750px;
border: solid 1px #e0e0e0; border: solid 1px #e0e0e0;
} }
/* line 866, ../sass/screen.scss */
/* line 864, ../sass/screen.scss */
.site-producers #wrapper-producers-map #producers-map.fixed { .site-producers #wrapper-producers-map #producers-map.fixed {
position: fixed !important; position: fixed !important;
top: 20px; top: 20px;
width: 300px; width: 300px;
height: 750px; height: 750px;
} }
/* line 874, ../sass/screen.scss */
/* line 872, ../sass/screen.scss */
.site-producers #wrapper-producers-map #producers-map a { .site-producers #wrapper-producers-map #producers-map a {
text-decoration: none; text-decoration: none;
} }
/* line 878, ../sass/screen.scss */
/* line 876, ../sass/screen.scss */
.site-producers #wrapper-producers-map #producers-map .popup-producer { .site-producers #wrapper-producers-map #producers-map .popup-producer {
font-size: 14px; font-size: 14px;
color: #505050; color: #505050;
} }
/* line 882, ../sass/screen.scss */
/* line 880, ../sass/screen.scss */
.site-producers #wrapper-producers-map #producers-map .popup-producer .name { .site-producers #wrapper-producers-map #producers-map .popup-producer .name {
font-family: 'worksans_bold'; font-family: 'worksans_bold';
color: #e4ac07; color: #e4ac07;
font-size: 23px; font-size: 23px;
margin-bottom: 2px; margin-bottom: 2px;
} }
/* line 889, ../sass/screen.scss */
/* line 887, ../sass/screen.scss */
.site-producers #wrapper-producers-map #producers-map .popup-producer .type { .site-producers #wrapper-producers-map #producers-map .popup-producer .type {
font-family: 'worksans_regular'; font-family: 'worksans_regular';
text-transform: uppercase; text-transform: uppercase;
font-size: 16px; font-size: 16px;
margin-bottom: 5px; margin-bottom: 5px;
} }
/* line 896, ../sass/screen.scss */
/* line 894, ../sass/screen.scss */
.site-producers #wrapper-producers-map #producers-map .popup-producer .address { .site-producers #wrapper-producers-map #producers-map .popup-producer .address {
font-family: 'worksans_regular'; font-family: 'worksans_regular';
margin-bottom: 14px; margin-bottom: 14px;
color: gray; color: gray;
} }
/* line 902, ../sass/screen.scss */
/* line 900, ../sass/screen.scss */
.site-producers #wrapper-producers-map #producers-map .popup-producer .link { .site-producers #wrapper-producers-map #producers-map .popup-producer .link {
color: white; color: white;
text-align: right; text-align: right;
} }


/* line 914, ../sass/screen.scss */
/* line 912, ../sass/screen.scss */
#content .site-about .panel .panel-heading h2 { #content .site-about .panel .panel-heading h2 {
margin: 0px; margin: 0px;
padding: 0px; padding: 0px;
} }
/* line 921, ../sass/screen.scss */
/* line 919, ../sass/screen.scss */
#content .site-about .panel .panel-body h2 { #content .site-about .panel .panel-body h2 {
margin-bottom: 20px; margin-bottom: 20px;
padding-bottom: 0px; padding-bottom: 0px;
margin-top: 0px; margin-top: 0px;
} }
/* line 927, ../sass/screen.scss */
/* line 925, ../sass/screen.scss */
#content .site-about .panel .panel-body p:last-child { #content .site-about .panel .panel-body p:last-child {
margin-bottom: 0px; margin-bottom: 0px;
padding-bottom: 5px; padding-bottom: 5px;
} }
/* line 936, ../sass/screen.scss */
/* line 934, ../sass/screen.scss */
#content .site-about #few-numbers .panel-body { #content .site-about #few-numbers .panel-body {
padding: 0px 20px 20px 20px; padding: 0px 20px 20px 20px;
} }
/* line 940, ../sass/screen.scss */
/* line 938, ../sass/screen.scss */
#content .site-about #few-numbers .item { #content .site-about #few-numbers .item {
text-align: center; text-align: center;
padding-top: 20px; padding-top: 20px;
padding-bottom: 10px; padding-bottom: 10px;
} }
/* line 945, ../sass/screen.scss */
/* line 943, ../sass/screen.scss */
#content .site-about #few-numbers .item .number { #content .site-about #few-numbers .item .number {
font-family: 'worksans_bold'; font-family: 'worksans_bold';
font-weight: bold; font-weight: bold;
font-size: 35px; font-size: 35px;
color: #ee6f42; color: #ee6f42;
} }
/* line 952, ../sass/screen.scss */
/* line 950, ../sass/screen.scss */
#content .site-about #few-numbers .item .description { #content .site-about #few-numbers .item .description {
font-size: 16px; font-size: 16px;
line-height: 20px; line-height: 20px;
font-family: 'worksans_medium'; font-family: 'worksans_medium';
text-transform: uppercase; text-transform: uppercase;
} }
/* line 960, ../sass/screen.scss */
/* line 958, ../sass/screen.scss */
#content .site-about #few-numbers .item .detail { #content .site-about #few-numbers .item .detail {
color: gray; color: gray;
} }
/* line 966, ../sass/screen.scss */
/* line 964, ../sass/screen.scss */
#content .site-about #carousel-producers-testimonials { #content .site-about #carousel-producers-testimonials {
transition: all 0.4s; transition: all 0.4s;
} }
/* line 969, ../sass/screen.scss */
/* line 967, ../sass/screen.scss */
#content .site-about #carousel-producers-testimonials .item, #content .site-about #carousel-producers-testimonials .carousel-caption { #content .site-about #carousel-producers-testimonials .item, #content .site-about #carousel-producers-testimonials .carousel-caption {
transition: all 0.4s; transition: all 0.4s;
} }
/* line 973, ../sass/screen.scss */
/* line 971, ../sass/screen.scss */
#content .site-about #carousel-producers-testimonials .carousel-indicators { #content .site-about #carousel-producers-testimonials .carousel-indicators {
display: none; display: none;
} }
/* line 977, ../sass/screen.scss */
/* line 975, ../sass/screen.scss */
#content .site-about #carousel-producers-testimonials .carousel-control-next, #content .site-about #carousel-producers-testimonials .carousel-control-next,
#content .site-about #carousel-producers-testimonials .carousel-control-prev { #content .site-about #carousel-producers-testimonials .carousel-control-prev {
background: none; background: none;
} }
/* line 982, ../sass/screen.scss */
/* line 980, ../sass/screen.scss */
#content .site-about #carousel-producers-testimonials .carousel-control-next .bi, #content .site-about #carousel-producers-testimonials .carousel-control-next .bi,
#content .site-about #carousel-producers-testimonials .carousel-control-prev .bi { #content .site-about #carousel-producers-testimonials .carousel-control-prev .bi {
position: absolute; position: absolute;
font-size: 35px; font-size: 35px;
color: black; color: black;
} }
/* line 989, ../sass/screen.scss */
/* line 987, ../sass/screen.scss */
#content .site-about #carousel-producers-testimonials .carousel-control-next.carousel-control-next .bi, #content .site-about #carousel-producers-testimonials .carousel-control-next.carousel-control-next .bi,
#content .site-about #carousel-producers-testimonials .carousel-control-prev.carousel-control-next .bi { #content .site-about #carousel-producers-testimonials .carousel-control-prev.carousel-control-next .bi {
right: 0px; right: 0px;
} }
/* line 993, ../sass/screen.scss */
/* line 991, ../sass/screen.scss */
#content .site-about #carousel-producers-testimonials .carousel-control-next.carousel-control-prev .bi, #content .site-about #carousel-producers-testimonials .carousel-control-next.carousel-control-prev .bi,
#content .site-about #carousel-producers-testimonials .carousel-control-prev.carousel-control-prev .bi { #content .site-about #carousel-producers-testimonials .carousel-control-prev.carousel-control-prev .bi {
left: 0px; left: 0px;
} }
/* line 999, ../sass/screen.scss */
/* line 997, ../sass/screen.scss */
#content .site-about #carousel-producers-testimonials .carousel-item .carousel-caption { #content .site-about #carousel-producers-testimonials .carousel-item .carousel-caption {
top: 20px; top: 20px;
color: black; color: black;
text-shadow: none; text-shadow: none;
padding: 0px; padding: 0px;
} }
/* line 1005, ../sass/screen.scss */
/* line 1003, ../sass/screen.scss */
#content .site-about #carousel-producers-testimonials .carousel-item .carousel-caption img { #content .site-about #carousel-producers-testimonials .carousel-item .carousel-caption img {
display: block; display: block;
width: 150px; width: 150px;
height: auto; height: auto;
margin: 0px auto 15px auto; margin: 0px auto 15px auto;
} }
/* line 1013, ../sass/screen.scss */
/* line 1011, ../sass/screen.scss */
#content .site-about #carousel-producers-testimonials .carousel-item .carousel-caption .producer-testimony { #content .site-about #carousel-producers-testimonials .carousel-item .carousel-caption .producer-testimony {
margin-bottom: 12px; margin-bottom: 12px;
} }
/* line 1017, ../sass/screen.scss */
/* line 1015, ../sass/screen.scss */
#content .site-about #carousel-producers-testimonials .carousel-item .carousel-caption .producer-details { #content .site-about #carousel-producers-testimonials .carousel-item .carousel-caption .producer-details {
font-style: italic; font-style: italic;
color: gray; color: gray;
} }
/* line 1021, ../sass/screen.scss */
/* line 1019, ../sass/screen.scss */
#content .site-about #carousel-producers-testimonials .carousel-item .carousel-caption .producer-details .producer-name { #content .site-about #carousel-producers-testimonials .carousel-item .carousel-caption .producer-details .producer-name {
color: #ee6f42; color: #ee6f42;
} }


/* line 1031, ../sass/screen.scss */
/* line 1029, ../sass/screen.scss */
#content .site-service #panel-go-further { #content .site-service #panel-go-further {
text-align: center; text-align: center;
} }


/* line 1036, ../sass/screen.scss */
/* line 1034, ../sass/screen.scss */
#content #mentions { #content #mentions {
padding-top: 20px; padding-top: 20px;
} }
/* line 1039, ../sass/screen.scss */
/* line 1037, ../sass/screen.scss */
#content #mentions div.content { #content #mentions div.content {
width: 60%; width: 60%;
font-size: 90%; font-size: 90%;
} }
/* line 1044, ../sass/screen.scss */
/* line 1042, ../sass/screen.scss */
#content #mentions p { #content #mentions p {
padding-bottom: 15px; padding-bottom: 15px;
} }
/* line 1048, ../sass/screen.scss */
/* line 1046, ../sass/screen.scss */
#content #mentions h2 { #content #mentions h2 {
color: black; color: black;
padding-bottom: 40px; padding-bottom: 40px;
line-height: 35px; line-height: 35px;
font-family: 'highvoltageregular'; font-family: 'highvoltageregular';
} }
/* line 1056, ../sass/screen.scss */
/* line 1054, ../sass/screen.scss */
#content #mentions h3 { #content #mentions h3 {
font-family: "highvoltageregular"; font-family: "highvoltageregular";
font-size: 18px; font-size: 18px;
color: black; color: black;
} }


/* line 1071, ../sass/screen.scss */
/* line 1069, ../sass/screen.scss */
.vegas-loading { .vegas-loading {
display: none; display: none;
} }


/* line 1078, ../sass/screen.scss */
/* line 1076, ../sass/screen.scss */
#profil-user .form-group.field-user-no_mail label { #profil-user .form-group.field-user-no_mail label {
font-weight: normal; font-weight: normal;
} }
/* line 1082, ../sass/screen.scss */
/* line 1080, ../sass/screen.scss */
#profil-user .form-group label { #profil-user .form-group label {
cursor: pointer; cursor: pointer;
} }
/* line 1087, ../sass/screen.scss */
/* line 1085, ../sass/screen.scss */
#profil-user #mails-days-distribution .form-group { #profil-user #mails-days-distribution .form-group {
float: left; float: left;
margin-right: 15px; margin-right: 15px;
} }
/* line 1091, ../sass/screen.scss */
/* line 1089, ../sass/screen.scss */
#profil-user #mails-days-distribution .form-group label { #profil-user #mails-days-distribution .form-group label {
font-weight: normal; font-weight: normal;
} }
/* line 1097, ../sass/screen.scss */
/* line 1095, ../sass/screen.scss */
#profil-user p.strong { #profil-user p.strong {
font-weight: bold; font-weight: bold;
} }
/* line 1101, ../sass/screen.scss */
/* line 1099, ../sass/screen.scss */
#profil-user h2 { #profil-user h2 {
text-transform: none; text-transform: none;
font-size: 25px; font-size: 25px;
} }
/* line 1105, ../sass/screen.scss */
/* line 1103, ../sass/screen.scss */
#profil-user h2:first-child { #profil-user h2:first-child {
margin-top: 0px; margin-top: 0px;
} }


/* login */ /* login */
/* line 1116, ../sass/screen.scss */
/* line 1114, ../sass/screen.scss */
.back-white, .site-login .col-lg-5, .site-signup .col-lg-5 { .back-white, .site-login .col-lg-5, .site-signup .col-lg-5 {
background-color: white; background-color: white;
padding: 30px; padding: 30px;
border-radius: 5px; border-radius: 5px;
} }


/* line 1123, ../sass/screen.scss */
/* line 1121, ../sass/screen.scss */
.site-login .col-lg-5 { .site-login .col-lg-5 {
margin: 0px auto; margin: 0px auto;
float: none; float: none;
} }


/* signup */ /* signup */
/* line 1133, ../sass/screen.scss */
/* line 1132, ../sass/screen.scss */
form .block-newsletter .help-block-error {
display: none;
}
/* line 1135, ../sass/screen.scss */
form .block-newsletter .help-block {
margin-top: 3px;
padding-left: 20px;
color: gray;
}

/* line 1142, ../sass/screen.scss */
.modal-backdrop { .modal-backdrop {
z-index: 999; z-index: 999;
} }


/* line 1138, ../sass/screen.scss */
/* line 1147, ../sass/screen.scss */
.site-signup .col-lg-5 { .site-signup .col-lg-5 {
margin: 0px auto; margin: 0px auto;
float: none; float: none;
max-width: 500px; max-width: 500px;
} }


/* line 1151, ../sass/screen.scss */
/* line 1160, ../sass/screen.scss */
#form-signup #user-producer { #form-signup #user-producer {
margin-bottom: 30px; margin-bottom: 30px;
} }
/* line 1156, ../sass/screen.scss */
/* line 1165, ../sass/screen.scss */
#form-signup #signupform-id_producer option:disabled { #form-signup #signupform-id_producer option:disabled {
font-weight: bold; font-weight: bold;
color: black; color: black;
} }
/* line 1162, ../sass/screen.scss */
/* line 1171, ../sass/screen.scss */
#form-signup #champs-producer { #form-signup #champs-producer {
display: none; display: none;
} }
/* line 1166, ../sass/screen.scss */
/* line 1175, ../sass/screen.scss */
#form-signup #buttons-signup { #form-signup #buttons-signup {
margin-top: 30px; margin-top: 30px;
} }
/* line 1170, ../sass/screen.scss */
/* line 1179, ../sass/screen.scss */
#form-signup .field-signupform-is_test { #form-signup .field-signupform-is_test {
display: none; display: none;
} }


/* line 1175, ../sass/screen.scss */
/* line 1184, ../sass/screen.scss */
#col-left { #col-left {
padding: 0px; padding: 0px;
z-index: 15; z-index: 15;
} }
/* line 1179, ../sass/screen.scss */
/* line 1188, ../sass/screen.scss */
#col-left .affix { #col-left .affix {
width: 25%; width: 25%;
border-right: solid 1px #e0e0e0; border-right: solid 1px #e0e0e0;
background-color: #FAFAFA; background-color: #FAFAFA;
height: 100%; height: 100%;
} }
/* line 1186, ../sass/screen.scss */
/* line 1195, ../sass/screen.scss */
#col-left #link-home { #col-left #link-home {
text-decoration: none; text-decoration: none;
font-size: 22px; font-size: 22px;
padding: 10px; padding: 10px;
background-color: #e4ac07; background-color: #e4ac07;
} }
/* line 1194, ../sass/screen.scss */
/* line 1203, ../sass/screen.scss */
#col-left #link-home img { #col-left #link-home img {
height: 50px; height: 50px;
margin-bottom: 5px; margin-bottom: 5px;
float: left; float: left;
} }
/* line 1200, ../sass/screen.scss */
/* line 1209, ../sass/screen.scss */
#col-left #link-home .text { #col-left #link-home .text {
padding-left: 62px; padding-left: 62px;
} }
/* line 1203, ../sass/screen.scss */
/* line 1212, ../sass/screen.scss */
#col-left #link-home .text .bap { #col-left #link-home .text .bap {
font-family: "comfortaalight"; font-family: "comfortaalight";
font-size: 24px; font-size: 24px;
} }
/* line 1208, ../sass/screen.scss */
/* line 1217, ../sass/screen.scss */
#col-left #link-home .text .plateforme { #col-left #link-home .text .plateforme {
font-size: 17px; font-size: 17px;
font-family: "myriadpro-light"; font-family: "myriadpro-light";
color: #ee6f42; color: #ee6f42;
} }
/* line 1216, ../sass/screen.scss */
/* line 1225, ../sass/screen.scss */
#col-left h2 { #col-left h2 {
font-family: 'myriadpro-regular'; font-family: 'myriadpro-regular';
color: black; color: black;
margin-bottom: 10px; margin-bottom: 10px;
padding: 15px 0px 5px 15px; padding: 15px 0px 5px 15px;
} }
/* line 1224, ../sass/screen.scss */
/* line 1233, ../sass/screen.scss */
#col-left #links { #col-left #links {
background-color: white; background-color: white;
margin-bottom: 20px; margin-bottom: 20px;
} }
/* line 1230, ../sass/screen.scss */
/* line 1239, ../sass/screen.scss */
#col-left #links ul li a { #col-left #links ul li a {
text-align: center; text-align: center;
border-right: solid 1px #e0e0e0; border-right: solid 1px #e0e0e0;
} }
/* line 1234, ../sass/screen.scss */
/* line 1243, ../sass/screen.scss */
#col-left #links ul li a:hover { #col-left #links ul li a:hover {
background-color: #ee6f42; background-color: #ee6f42;
color: white; color: white;
} }
/* line 1240, ../sass/screen.scss */
/* line 1249, ../sass/screen.scss */
#col-left #links ul li:last-child a { #col-left #links ul li:last-child a {
border-right: 0px none; border-right: 0px none;
} }
/* line 1250, ../sass/screen.scss */
/* line 1259, ../sass/screen.scss */
#col-left #producers nav.nav-producers ul li a { #col-left #producers nav.nav-producers ul li a {
padding-left: 50px; padding-left: 50px;
height: 40px; height: 40px;
} }
/* line 1256, ../sass/screen.scss */
/* line 1265, ../sass/screen.scss */
#col-left #producers nav.nav-producers ul li.active a { #col-left #producers nav.nav-producers ul li.active a {
background-color: #ee6f42; background-color: #ee6f42;
position: relative; position: relative;
color: white; color: white;
} }
/* line 1261, ../sass/screen.scss */
/* line 1270, ../sass/screen.scss */
#col-left #producers nav.nav-producers ul li.active a:after { #col-left #producers nav.nav-producers ul li.active a:after {
right: -40px; right: -40px;
top: 50%; top: 50%;
border-width: 20px; border-width: 20px;
margin-top: -20px; margin-top: -20px;
} }
/* line 1280, ../sass/screen.scss */
/* line 1289, ../sass/screen.scss */
#col-left ul { #col-left ul {
list-style-type: none; list-style-type: none;
margin: 0px; margin: 0px;
padding: 0px; padding: 0px;
} }
/* line 1285, ../sass/screen.scss */
/* line 1294, ../sass/screen.scss */
#col-left ul li { #col-left ul li {
margin: 0px; margin: 0px;
padding: 0px; padding: 0px;
} }
/* line 1289, ../sass/screen.scss */
/* line 1298, ../sass/screen.scss */
#col-left ul li a { #col-left ul li a {
text-decoration: none; text-decoration: none;
font-family: 'comfortaaregular'; font-family: 'comfortaaregular';
display: block; display: block;
color: black; color: black;
} }
/* line 1299, ../sass/screen.scss */
/* line 1308, ../sass/screen.scss */
#col-left ul li a span.name, #col-left ul li a span.wording { #col-left ul li a span.name, #col-left ul li a span.wording {
display: none; display: none;
} }
/* line 1306, ../sass/screen.scss */
/* line 1315, ../sass/screen.scss */
#col-left p { #col-left p {
padding: 20px; padding: 20px;
padding-top: 0px; padding-top: 0px;
color: gray; color: gray;
} }


/* line 1314, ../sass/screen.scss */
/* line 1323, ../sass/screen.scss */
#content .header-title { #content .header-title {
height: 79px; height: 79px;
padding: 20px 20px; padding: 20px 20px;
-webkit-box-shadow: 0px 0px 8px #e0e0e0; -webkit-box-shadow: 0px 0px 8px #e0e0e0;
box-shadow: 0px 0px 8px #e0e0e0; box-shadow: 0px 0px 8px #e0e0e0;
} }
/* line 1326, ../sass/screen.scss */
/* line 1335, ../sass/screen.scss */
#content .header-title h1 { #content .header-title h1 {
color: black; color: black;
font-family: 'myriadpro-regular'; font-family: 'myriadpro-regular';
font-size: 25px; font-size: 25px;
text-transform: uppercase; text-transform: uppercase;
} }
/* line 1334, ../sass/screen.scss */
/* line 1343, ../sass/screen.scss */
#content .header-title h2 { #content .header-title h2 {
color: gray; color: gray;
text-transform: none; text-transform: none;
line-height: 20px; line-height: 20px;
} }


/* line 1345, ../sass/screen.scss */
/* line 1354, ../sass/screen.scss */
.header-producer { .header-producer {
z-index: 1; z-index: 1;
} }
/* line 1348, ../sass/screen.scss */
/* line 1357, ../sass/screen.scss */
.header-producer #block-main-img { .header-producer #block-main-img {
height: 144px; height: 144px;
overflow: hidden; overflow: hidden;
} }
/* line 1352, ../sass/screen.scss */
/* line 1361, ../sass/screen.scss */
.header-producer #block-main-img #main-img { .header-producer #block-main-img #main-img {
width: 100%; width: 100%;
height: auto; height: auto;
-webkit-border-radius: 0px; -webkit-border-radius: 0px;
border-radius: 0px; border-radius: 0px;
} }
/* line 1361, ../sass/screen.scss */
/* line 1370, ../sass/screen.scss */
.header-producer h1 { .header-producer h1 {
font-family: 'comfortaaregular'; font-family: 'comfortaaregular';
text-align: center; text-align: center;
top: 30px; top: 30px;
left: 40px; left: 40px;
} }
/* line 1368, ../sass/screen.scss */
/* line 1377, ../sass/screen.scss */
.header-producer h1 span { .header-producer h1 span {
background-color: rgba(255, 255, 255, 0.8); background-color: rgba(255, 255, 255, 0.8);
padding: 10px 30px; padding: 10px 30px;
border: dotted 1px black; border: dotted 1px black;
} }


/* line 1379, ../sass/screen.scss */
/* line 1388, ../sass/screen.scss */
nav#menu-producer { nav#menu-producer {
border-bottom: solid 1px #e0e0e0; border-bottom: solid 1px #e0e0e0;
} }
/* line 1383, ../sass/screen.scss */
/* line 1392, ../sass/screen.scss */
nav#menu-producer ul li { nav#menu-producer ul li {
padding: 0px; padding: 0px;
margin: 0px; margin: 0px;
} }
/* line 1387, ../sass/screen.scss */
/* line 1396, ../sass/screen.scss */
nav#menu-producer ul li a { nav#menu-producer ul li a {
border-right: solid 1px #e0e0e0; border-right: solid 1px #e0e0e0;
text-decoration: none; text-decoration: none;
-webkit-border-radius: 0px; -webkit-border-radius: 0px;
border-radius: 0px; border-radius: 0px;
} }
/* line 1392, ../sass/screen.scss */
/* line 1401, ../sass/screen.scss */
nav#menu-producer ul li a:hover { nav#menu-producer ul li a:hover {
background-color: #ee6f42; background-color: #ee6f42;
color: white; color: white;
} }


/* line 1402, ../sass/screen.scss */
/* line 1411, ../sass/screen.scss */
.site-contact .col-lg-6 { .site-contact .col-lg-6 {
margin: 0px auto; margin: 0px auto;
float: none; float: none;
} }
/* line 1407, ../sass/screen.scss */
/* line 1416, ../sass/screen.scss */
.site-contact .form-group.submit { .site-contact .form-group.submit {
text-align: right; text-align: right;
} }


/* line 1413, ../sass/screen.scss */
/* line 1422, ../sass/screen.scss */
.site-opinion .col-lg-6 { .site-opinion .col-lg-6 {
margin: 0px auto; margin: 0px auto;
float: none; float: none;
} }
/* line 1418, ../sass/screen.scss */
/* line 1427, ../sass/screen.scss */
.site-opinion .field-opinionform-istest { .site-opinion .field-opinionform-istest {
display: none; display: none;
} }
/* line 1422, ../sass/screen.scss */
/* line 1431, ../sass/screen.scss */
.site-opinion .form-group.submit { .site-opinion .form-group.submit {
text-align: center; text-align: center;
} }


/* line 1429, ../sass/screen.scss */
/* line 1438, ../sass/screen.scss */
#site-prices .panel p { #site-prices .panel p {
padding-bottom: 0px; padding-bottom: 0px;
} }


/* line 1436, ../sass/screen.scss */
/* line 1445, ../sass/screen.scss */
#contact-form .field-contactform-istest { #contact-form .field-contactform-istest {
display: none; display: none;
} }


/* line 1442, ../sass/screen.scss */
/* line 1451, ../sass/screen.scss */
.site-request-password-reset .col-lg-6 { .site-request-password-reset .col-lg-6 {
margin: 0px auto; margin: 0px auto;
} }

+ 11
- 2
frontend/web/sass/screen.scss View File



#block-services { #block-services {
.panel-body { .panel-body {

.panel-default { .panel-default {
@include box-shadow(none); @include box-shadow(none);


} }


#block-rates { #block-rates {

.panel-default { .panel-default {
@include box-shadow(none); @include box-shadow(none);
.panel-heading { .panel-heading {


/* signup */ /* signup */


form .block-newsletter {
.help-block-error {
display: none;
}
.help-block {
margin-top: 3px;
padding-left: 20px;
color: gray;
}
}

.modal-backdrop { .modal-backdrop {
z-index: 999; z-index: 999;
} }

+ 9
- 15
producer/views/order/order.php View File

</div> </div>
</div> </div>
<div class="wrapper"> <div class="wrapper">
<div v-if="!loadingInit && distributions.length == 0" class="alert alert-warning">
<div v-if="!loadingInit && !pointSaleActive && distributions.length == 0" class="alert alert-warning">
Aucune distribution à venir chez ce producteur. Aucune distribution à venir chez ce producteur.
</div> </div>
<div v-else> <div v-else>
{{ countProductOrdered() }} produit{{ (countProductOrdered() > 1) ? 's' : '' }} {{ countProductOrdered() }} produit{{ (countProductOrdered() > 1) ? 's' : '' }}
</div> </div>
</li> </li>
<!--<li id="step-payment" :class="'col-md-3 '+((step == 'payment') ? 'active' : '')">
<button @click="changeStep('payment')"
:class="'btn '+ (step == 'payment' ? 'btn-primary' : 'btn-secondary')"
:disabled="step == 'date' || step == 'point-sale' || step == 'products'">
<span class="button-content"><span
class="glyphicon glyphicon-ok"></span> Confirmation</span>
</button>
</li>-->
</ul> </ul>
<div class="clr"></div> <div class="clr"></div>
</div> </div>
<div class="content"> <div class="content">
<div v-if="order" class="alert alert-warning alert-edit-order">
<div v-if="order && date" class="alert alert-warning alert-edit-order">
<div class="glyphicon glyphicon-pencil"></div> <div class="glyphicon glyphicon-pencil"></div>
Attention, vous êtes en train de modifier votre commande du <strong>{{ dateFormat }}</strong>. Attention, vous êtes en train de modifier votre commande du <strong>{{ dateFormat }}</strong>.
</div> </div>
</div> </div>
<transition name="slide"> <transition name="slide">
<div id="content-step-date" v-if="step == 'date'"> <div id="content-step-date" v-if="step == 'date'">
<div v-if="!loading">
<div v-if="!loading && pointSaleActive && distributions.length == 0" class="alert alert-warning">
Aucune distribution à venir sur ce point de vente.
</div>
<div v-else-if="!loading">
<?php if ($producer->behavior_order_select_distribution == Producer::BEHAVIOR_ORDER_SELECT_DISTRIBUTION_LIST): ?> <?php if ($producer->behavior_order_select_distribution == Producer::BEHAVIOR_ORDER_SELECT_DISTRIBUTION_LIST): ?>
<div style="display:none ;"> <div style="display:none ;">
<?php endif; ?> <?php endif; ?>
<div id="legend"> <div id="legend">
<div><span id="distribution-date-color"></span> Prochains jours de distribution
</div>
<div><span id="distribution-date-color"></span> Prochains jours de distribution</div>
<div><span id="order-date-color"></span> Vos commandes déjà enregistrées</div> <div><span id="order-date-color"></span> Vos commandes déjà enregistrées</div>
</div> </div>
<div id="calendar"> <div id="calendar">
</label> </label>
</div> </div>
<div class="col-md-4" v-if="isPaymentMethodCreditActive()"> <div class="col-md-4" v-if="isPaymentMethodCreditActive()">
<template v-if="user && (pointSaleActive.credit_functioning == 'mandatory' || (pointSaleActive.credit_functioning == 'user' && user.credit_active)) && !checkCreditLimit(order) ">
<template v-if="errorCreditMandatoryAndLimit()">
<div class="alert alert-danger"> <div class="alert alert-danger">
<i class="bi bi-piggy-bank"></i> <i class="bi bi-piggy-bank"></i>
Vous devez Vous devez
</div> </div>
</div> </div>
<div class="block-actions"> <div class="block-actions">
<button class="btn btn-primary" disabled="disabled" v-if="disableConfirmButton || !oneProductOrdered()">
<button class="btn btn-primary" disabled="disabled" v-if="disableConfirmButton || errorCreditMandatoryAndLimit() || !oneProductOrdered()">
<span v-if="disableConfirmButton" class="spinner-border spinner-border-sm" role="status" aria-hidden="true"></span> <span v-if="disableConfirmButton" class="spinner-border spinner-border-sm" role="status" aria-hidden="true"></span>
Je confirme ma commande Je confirme ma commande
</button> </button>

+ 8
- 1
producer/web/js/vuejs/order-order.js View File

app.calendar.availableDates = []; app.calendar.availableDates = [];


var distributions = response.data.distributions; var distributions = response.data.distributions;
app.distributions = distributions;
if (distributions.length) { if (distributions.length) {
app.distributions = distributions;
var arrayDate; var arrayDate;
var highlightStyle = { var highlightStyle = {
style: { style: {
&& !this.isPaymentMethodCreditActiveFunctioningUser(true) && !this.isPaymentMethodCreditActiveFunctioningUser(true)
&& !this.isPaymentMethodCreditActiveFunctioningMandatory() && !this.isPaymentMethodCreditActiveFunctioningMandatory()
}, },
errorCreditMandatoryAndLimit: function() {
return this.user && (
this.pointSaleActive.credit_functioning == 'mandatory'
|| (this.pointSaleActive.credit_functioning == 'user' && user.credit_active)
)
&& !this.checkCreditLimit(this.order);
},
confirmClick: function() { confirmClick: function() {


var app = this ; var app = this ;

Loading…
Cancel
Save