Browse Source

Témoignages producteurs #1112

feature/souke
Guillaume Bourgeois 1 year ago
parent
commit
39b8aa6034
12 changed files with 363 additions and 77 deletions
  1. +29
    -7
      backend/views/producer/update.php
  2. +5
    -0
      backend/web/js/vuejs/producer-update.js
  3. +7
    -3
      common/logic/Producer/Producer/Model/Producer.php
  4. +36
    -0
      common/logic/Producer/Producer/Repository/ProducerRepository.php
  5. +12
    -0
      common/logic/Producer/Producer/Repository/ProducerRepositoryQuery.php
  6. +28
    -0
      console/migrations/m230821_061757_producer_add_option_testimony.php
  7. +7
    -2
      frontend/controllers/SiteController.php
  8. +15
    -4
      frontend/views/site/_about_few_numbers.php
  9. +48
    -2
      frontend/views/site/about.php
  10. +101
    -59
      frontend/web/css/screen.css
  11. +30
    -0
      frontend/web/js/frontend.js
  12. +45
    -0
      frontend/web/sass/screen.scss

+ 29
- 7
backend/views/producer/update.php View File

Producer::BEHAVIOR_HOME_POINT_SALE_DAY_LIST_INCOMING_DISTRIBUTIONS => 'Distributions à venir', Producer::BEHAVIOR_HOME_POINT_SALE_DAY_LIST_INCOMING_DISTRIBUTIONS => 'Distributions à venir',
]); ?> ]); ?>
<?= $form->field($model, 'option_point_sale_wording') ?> <?= $form->field($model, 'option_point_sale_wording') ?>

<h4>Logiciel</h4>
<?= $form->field($model, 'option_display_message_new_opendistrib_version')
->dropDownList([
1 => 'Oui',
0 => 'Non'
], []); ?>
</div> </div>
</div> </div>


->textarea(['rows' => 15]) ?> ->textarea(['rows' => 15]) ?>
</div> </div>
</div> </div>

<div v-show="currentSection == 'software'" class="panel panel-default">
<div class="panel-body">
<h4>Opendistrib</h4>
<?= $form->field($model, 'option_testimony')
->textarea(['rows' => 7])
->hint("Écrivez ici votre témoignage concernant l'utilisation du logiciel. Il sera publié sur la page 'À propos' du site.") ; ?>
<?= $form->field($model, 'option_time_saved')
->dropDownList([
null => '--',
0.5 => '30 minutes',
1 => '1 heure',
2 => '2 heures',
3 => '3 heures',
4 => '4 heures',
5 => '5 heures',
6 => '6 heures',
7 => '7 heures',
8 => '8 heures',
])
->hint("Sélectionnez le temps que vous estimez gagner chaque semaine en utilisant ce logiciel. Cette donnée sera utilisée sur la page 'À propos' du site.") ; ?>
<?= $form->field($model, 'option_display_message_new_opendistrib_version')
->dropDownList([
1 => 'Oui',
0 => 'Non'
], []); ?>
</div>
</div>

<div class="form-group"> <div class="form-group">
<?= Html::submitButton('Mettre à jour', ['class' => $model->isNewRecord ? 'btn btn-success' : 'btn btn-primary']) ?> <?= Html::submitButton('Mettre à jour', ['class' => $model->isNewRecord ? 'btn btn-success' : 'btn btn-primary']) ?>
</div> </div>

+ 5
- 0
backend/web/js/vuejs/producer-update.js View File

name: 'logiciels-caisse', name: 'logiciels-caisse',
nameDisplay: 'Logiciels de caisse', nameDisplay: 'Logiciels de caisse',
isAdminSection: 0 isAdminSection: 0
},
{
name: 'software',
nameDisplay: 'Opendistrib',
isAdminSection: 0
} }
] ]
}, window.appInitValues); }, window.appInitValues);

+ 7
- 3
common/logic/Producer/Producer/Model/Producer.php View File

'option_tax_calculation_method', 'option_tax_calculation_method',
'latest_version_opendistrib', 'latest_version_opendistrib',
'option_csv_separator', 'option_csv_separator',
'option_point_sale_wording'
'option_point_sale_wording',
'option_testimony'
], ],
'string' 'string'
], ],
'credit_limit', 'credit_limit',
'option_billing_permanent_transfer_amount', 'option_billing_permanent_transfer_amount',
'latitude', 'latitude',
'longitude'
'longitude',
'option_time_saved'
], 'double'], ], 'double'],
[ [
'free_price', 'free_price',
'option_billing_permanent_transfer_amount' => 'Virement permanent : montant', 'option_billing_permanent_transfer_amount' => 'Virement permanent : montant',
'option_point_sale_wording' => 'Libellé points de vente', 'option_point_sale_wording' => 'Libellé points de vente',
'latitude' => 'Latitude', 'latitude' => 'Latitude',
'longitude' => 'Longitude'
'longitude' => 'Longitude',
'option_testimony' => 'Témoignage',
'option_time_saved' => 'Temps gagné / semaine',
]; ];
} }



+ 36
- 0
common/logic/Producer/Producer/Repository/ProducerRepository.php View File

{ {
return $this->createQuery()->find(); return $this->createQuery()->find();
} }

public function findProducersWithTestimonials(): array
{
return $this->queryProducersActive()
->filterHasOptionTestimony()
->find();
}

public function findProducersWithTimeSaved(): array
{
return $this->queryProducersActive()
->filterHasOptionTimeSaved()
->find();
}

public function countProducersWithTimeSaved(): int
{
return count($this->findProducersWithTimeSaved());
}

public function getTimeSavedByProducersAverage(): int
{
$producersWithTimeSavedArray = $this->findProducersWithTimeSaved();
$countProducersWithOptionTimeSaved = count($producersWithTimeSavedArray);

if($countProducersWithOptionTimeSaved) {
$sumTimeSaved = 0;
foreach($producersWithTimeSavedArray as $producerWithTimeSaved) {
$sumTimeSaved += $producerWithTimeSaved->option_time_saved;
}

return round($sumTimeSaved / $countProducersWithOptionTimeSaved);
}

return 0;
}
} }

+ 12
- 0
common/logic/Producer/Producer/Repository/ProducerRepositoryQuery.php View File

$this->andWhere('name LIKE \'Démo\''); $this->andWhere('name LIKE \'Démo\'');
return $this; return $this;
} }

public function filterHasOptionTestimony(): self
{
$this->andWhere('option_testimony IS NOT NULL AND option_testimony != ""');
return $this;
}

public function filterHasOptionTimeSaved(): self
{
$this->andWhere('producer.option_time_saved > 0');
return $this;
}
} }

+ 28
- 0
console/migrations/m230821_061757_producer_add_option_testimony.php View File

<?php

use yii\db\Migration;
use yii\db\Schema;

/**
* Class m230821_061757_producer_add_option_testimony
*/
class m230821_061757_producer_add_option_testimony extends Migration
{
/**
* {@inheritdoc}
*/
public function safeUp()
{
$this->addColumn('producer', 'option_testimony', Schema::TYPE_TEXT);
$this->addColumn('producer', 'option_time_saved', Schema::TYPE_FLOAT);
}

/**
* {@inheritdoc}
*/
public function safeDown()
{
$this->dropColumn('producer', 'option_testimony');
$this->dropColumn('producer', 'option_time_saved');
}
}

+ 7
- 2
frontend/controllers/SiteController.php View File



public function actionAbout() public function actionAbout()
{ {
$aboutFewNumbers = Yii::$app->cache->getOrSet('about_few_numbers4', function () {
$aboutFewNumbers = Yii::$app->cache->getOrSet('about_few_numbers7', function () {
$producerManager = $this->getProducerManager(); $producerManager = $this->getProducerManager();
$pointSaleManager = $this->getPointSaleManager(); $pointSaleManager = $this->getPointSaleManager();
$userManager = $this->getUserManager(); $userManager = $this->getUserManager();
$orderManager = $this->getOrderManager(); $orderManager = $this->getOrderManager();


$countProducersActive = $producerManager->countProducersActiveWithTurnover(); $countProducersActive = $producerManager->countProducersActiveWithTurnover();
$timeSavedByProducersAverage = $producerManager->getTimeSavedByProducersAverage();
$countProducersWithOptionTimeSaved = $producerManager->countProducersWithTimeSaved();
$countPointSalesActive = $pointSaleManager->countPointSalesActiveLastThreeMonths(); $countPointSalesActive = $pointSaleManager->countPointSalesActiveLastThreeMonths();
$countUsersActive = $userManager->countUsersActiveLastThreeMonths(); $countUsersActive = $userManager->countUsersActiveLastThreeMonths();
$averageOrdersPerDay = $orderManager->countGlobalUserOrdersAverageLastSevenDays(); $averageOrdersPerDay = $orderManager->countGlobalUserOrdersAverageLastSevenDays();
'countUsersActive' => $countUsersActive, 'countUsersActive' => $countUsersActive,
'averageOrdersPerDay' => $averageOrdersPerDay, 'averageOrdersPerDay' => $averageOrdersPerDay,
'averageTurnover' => $averageTurnover, 'averageTurnover' => $averageTurnover,
'numberVisitsMonth' => $numberVisitsMonth
'numberVisitsMonth' => $numberVisitsMonth,
'timeSavedByProducersAverage' => $timeSavedByProducersAverage,
'countProducersWithOptionTimeSaved' => $countProducersWithOptionTimeSaved
]); ]);
}, 60 * 60 * 24); }, 60 * 60 * 24);




return $this->render('about', [ return $this->render('about', [
'countProducers' => $producerManager->countProducersActiveWithTurnover(), 'countProducers' => $producerManager->countProducersActiveWithTurnover(),
'producersWithTestimonials' => $producerManager->findProducersWithTestimonials(),
'aboutFewNumbers' => $aboutFewNumbers 'aboutFewNumbers' => $aboutFewNumbers
]); ]);
} }

+ 15
- 4
frontend/views/site/_about_few_numbers.php View File

</h2> </h2>
</div> </div>
<div class="panel-body"> <div class="panel-body">
<?= few_numbers_item($countProducersActive, 'Producteurs', 'actifs sur les 3 derniers mois'); ?>
<?= few_numbers_item(few_numbers_format_number($countUsersActive), 'Clients', 'actifs sur les 3 derniers mois'); ?>
<?= few_numbers_item(few_numbers_format_number($countPointSalesActive), 'Points de vente', 'actifs sur les 3 derniers mois'); ?>
<?= few_numbers_item(few_numbers_format_number($averageOrdersPerDay), 'Commandes clients / jour', 'en moyenne sur les 7 derniers jours'); ?>
<div class="row">
<?= few_numbers_item($countProducersActive, 'Producteurs', 'actifs sur les 3 derniers mois'); ?>
<?= few_numbers_item(few_numbers_format_number($countUsersActive), 'Clients', 'actifs sur les 3 derniers mois'); ?>
</div>
<div class="row">
<?= few_numbers_item(few_numbers_format_number($countPointSalesActive), 'Points de vente', 'actifs sur les 3 derniers mois'); ?>
<?= few_numbers_item(few_numbers_format_number($averageOrdersPerDay), 'Commandes clients / jour', 'en moyenne sur les 7 derniers jours'); ?>
</div>
<div class="row">
<?= few_numbers_item(few_numbers_format_number($averageTurnover).' €', 'CA producteurs / mois', 'moyenne sur les 3 derniers mois'); ?> <?= few_numbers_item(few_numbers_format_number($averageTurnover).' €', 'CA producteurs / mois', 'moyenne sur les 3 derniers mois'); ?>
<?= few_numbers_item(few_numbers_format_number($numberVisitsMonth), 'Visiteurs', 'le mois dernier'); ?> <?= few_numbers_item(few_numbers_format_number($numberVisitsMonth), 'Visiteurs', 'le mois dernier'); ?>
</div>
<?php if($countProducersWithOptionTimeSaved): ?>
<div class="row">
<?= few_numbers_item($timeSavedByProducersAverage.' h', 'Heures gagnées par semaine', 'moyenne sur '.$countProducersWithOptionTimeSaved.' producteur'.(($countProducersWithOptionTimeSaved) ? 's' : '')); ?>
</div>
<?php endif; ?>
</div> </div>
</div> </div>



+ 48
- 2
frontend/views/site/about.php View File

cet cet
outil. Majoritairement utilisé par des boulangeries produisant du pain au levain naturel, outil. Majoritairement utilisé par des boulangeries produisant du pain au levain naturel,
Opendistrib fonctionne également très bien pour tous types de production locale.</p> Opendistrib fonctionne également très bien pour tous types de production locale.</p>
<p>La première version du logiciel est née en 2016 à l'occasion de la création de la boulangerie
<p>La première version du logiciel est née en 2015 à l'occasion de la création de la boulangerie
Le Chat des Noisettes à Déservillers, en Franche-Comté. Le site a ensuite été progressivement Le Chat des Noisettes à Déservillers, en Franche-Comté. Le site a ensuite été progressivement
ouvert à d'autres producteurs un peu partout en France pour arriver à un total de ouvert à d'autres producteurs un peu partout en France pour arriver à un total de
<?= $countProducers ?> producteurs actifs à l'heure actuelle.</p> <?= $countProducers ?> producteurs actifs à l'heure actuelle.</p>
également conscient des enjeux sociétaux et environnementaux actuels, je me suis au fil des années également conscient des enjeux sociétaux et environnementaux actuels, je me suis au fil des années
intéressé et spécialisé dans le développement de logiciels dédiés à la distribution de produits intéressé et spécialisé dans le développement de logiciels dédiés à la distribution de produits
locaux en circuits courts dont Opendistrib fait partie.</p> locaux en circuits courts dont Opendistrib fait partie.</p>
<p>Depuis 2016, j'assure donc le développement, la maintenance et le support d'Opendistrib.
<p>Depuis 2015, j'assure donc le développement, la maintenance et le support d'Opendistrib.
Unique interlocuteur, j'offre aux producteurs une relation directe avec une personne impliquée Unique interlocuteur, j'offre aux producteurs une relation directe avec une personne impliquée
ayant une vue globale sur tous les aspects du logiciel. Technicien et pédagogue, j'aime être à ayant une vue globale sur tous les aspects du logiciel. Technicien et pédagogue, j'aime être à
l'écoute des besoins des producteurs et leur apporter des solutions simples et adaptées.</p> l'écoute des besoins des producteurs et leur apporter des solutions simples et adaptées.</p>
</div> </div>
</div> </div>

<?php
$countProducersWithTestimony = count($producersWithTestimonials);
if($countProducersWithTestimony):
?>
<div class="panel panel-primary">
<div class="panel-body">
<h2>Témoignages des producteurs</h2>
<div id="carousel-producers-testimonials" class="carousel slide" data-ride="carousel">
<ol class="carousel-indicators">
<?php for($i = 0; $i < $countProducersWithTestimony; $i++): ?>
<li data-target="#carousel-producers-testimonials" data-slide-to="<?= $i ?>" <?php if($i == 0): ?>class="active"<?php endif; ?>></li>
<?php endfor; ?>
</ol>

<div class="carousel-inner" role="listbox">
<?php foreach($producersWithTestimonials as $key => $producerWithTestimony): ?>
<div class="item<?php if($key == 0): ?> active<?php endif; ?>">
<div class="carousel-caption">
<div class="carousel-caption-inner">
<img src="<?= Yii::$app->urlManagerProducer->getHostInfo() . '/' . Yii::$app->urlManagerProducer->baseUrl; ?>/uploads/<?= $producerWithTestimony->logo; ?>" alt="Logo <?= Html::encode($producerWithTestimony->name) ?>"/>
<div class="producer-testimony">
<?= nl2br(Html::encode($producerWithTestimony->option_testimony)); ?>
</div>
<div class="producer-details">
<?= Html::encode($producerWithTestimony->name); ?> à <?= Html::encode($producerWithTestimony->city); ?> (<?= Html::encode($producerWithTestimony->postcode); ?>)
</div>
</div>
</div>
</div>
<?php endforeach; ?>
</div>

<a class="left carousel-control" href="#carousel-producers-testimonials" role="button" data-slide="prev">
<span class="glyphicon glyphicon-chevron-left" aria-hidden="true"></span>
<span class="sr-only">Previous</span>
</a>
<a class="right carousel-control" href="#carousel-producers-testimonials" role="button" data-slide="next">
<span class="glyphicon glyphicon-chevron-right" aria-hidden="true"></span>
<span class="sr-only">Next</span>
</a>
</div>
</div>
</div>
<?php endif; ?>

</div> </div>
<div class="col-md-4" id="few-numbers"> <div class="col-md-4" id="few-numbers">
<?= $aboutFewNumbers; ?> <?= $aboutFewNumbers; ?>

+ 101
- 59
frontend/web/css/screen.css View File

#content .site-about #few-numbers .item .detail { #content .site-about #few-numbers .item .detail {
color: gray; color: gray;
} }
/* line 977, ../sass/screen.scss */
#content .site-about #carousel-producers-testimonials {
transition: all 0.4s;
}
/* line 980, ../sass/screen.scss */
#content .site-about #carousel-producers-testimonials .item, #content .site-about #carousel-producers-testimonials .carousel-caption {
transition: all 0.4s;
}
/* line 984, ../sass/screen.scss */
#content .site-about #carousel-producers-testimonials .carousel-indicators {
display: none;
}
/* line 988, ../sass/screen.scss */
#content .site-about #carousel-producers-testimonials .carousel-control {
background: none;
}
/* line 991, ../sass/screen.scss */
#content .site-about #carousel-producers-testimonials .carousel-control span.glyphicon {
top: 50px;
}
/* line 997, ../sass/screen.scss */
#content .site-about #carousel-producers-testimonials .item .carousel-caption {
top: 20px;
color: #323232;
text-shadow: none;
padding: 0px;
}
/* line 1003, ../sass/screen.scss */
#content .site-about #carousel-producers-testimonials .item .carousel-caption img {
display: block;
width: 150px;
height: auto;
margin: 0px auto 15px auto;
}
/* line 1011, ../sass/screen.scss */
#content .site-about #carousel-producers-testimonials .item .carousel-caption .producer-testimony {
margin-bottom: 12px;
}
/* line 1015, ../sass/screen.scss */
#content .site-about #carousel-producers-testimonials .item .carousel-caption .producer-details {
font-style: italic;
}


/* line 978, ../sass/screen.scss */
/* line 1023, ../sass/screen.scss */
#content #mentions { #content #mentions {
padding-top: 20px; padding-top: 20px;
} }
/* line 981, ../sass/screen.scss */
/* line 1026, ../sass/screen.scss */
#content #mentions div.content { #content #mentions div.content {
width: 60%; width: 60%;
font-size: 90%; font-size: 90%;
} }
/* line 986, ../sass/screen.scss */
/* line 1031, ../sass/screen.scss */
#content #mentions p { #content #mentions p {
padding-bottom: 15px; padding-bottom: 15px;
} }
/* line 990, ../sass/screen.scss */
/* line 1035, ../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 998, ../sass/screen.scss */
/* line 1043, ../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 1013, ../sass/screen.scss */
/* line 1058, ../sass/screen.scss */
.vegas-loading { .vegas-loading {
display: none; display: none;
} }


/* line 1020, ../sass/screen.scss */
/* line 1065, ../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 1024, ../sass/screen.scss */
/* line 1069, ../sass/screen.scss */
#profil-user .form-group label { #profil-user .form-group label {
cursor: pointer; cursor: pointer;
} }
/* line 1029, ../sass/screen.scss */
/* line 1074, ../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 1033, ../sass/screen.scss */
/* line 1078, ../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 1039, ../sass/screen.scss */
/* line 1084, ../sass/screen.scss */
#profil-user p.strong { #profil-user p.strong {
font-weight: bold; font-weight: bold;
} }
/* line 1043, ../sass/screen.scss */
/* line 1088, ../sass/screen.scss */
#profil-user h2 { #profil-user h2 {
text-transform: none; text-transform: none;
font-size: 25px; font-size: 25px;
} }
/* line 1047, ../sass/screen.scss */
/* line 1092, ../sass/screen.scss */
#profil-user h2:first-child { #profil-user h2:first-child {
margin-top: 0px; margin-top: 0px;
} }


/* login */ /* login */
/* line 1058, ../sass/screen.scss */
/* line 1103, ../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 1065, ../sass/screen.scss */
/* line 1110, ../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 1075, ../sass/screen.scss */
/* line 1120, ../sass/screen.scss */
.modal-backdrop { .modal-backdrop {
z-index: 999; z-index: 999;
} }


/* line 1080, ../sass/screen.scss */
/* line 1125, ../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 1090, ../sass/screen.scss */
/* line 1135, ../sass/screen.scss */
#modal-cgv .modal-body h2 { #modal-cgv .modal-body h2 {
margin-bottom: 5px; margin-bottom: 5px;
padding-bottom: 0px; padding-bottom: 0px;
margin-top: 0px; margin-top: 0px;
} }


/* line 1100, ../sass/screen.scss */
/* line 1145, ../sass/screen.scss */
#form-signup #user-producer { #form-signup #user-producer {
margin-bottom: 30px; margin-bottom: 30px;
} }
/* line 1105, ../sass/screen.scss */
/* line 1150, ../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 1111, ../sass/screen.scss */
/* line 1156, ../sass/screen.scss */
#form-signup #champs-producer { #form-signup #champs-producer {
display: none; display: none;
} }
/* line 1115, ../sass/screen.scss */
/* line 1160, ../sass/screen.scss */
#form-signup #buttons-signup { #form-signup #buttons-signup {
margin-top: 30px; margin-top: 30px;
} }
/* line 1119, ../sass/screen.scss */
/* line 1164, ../sass/screen.scss */
#form-signup .field-signupform-is_test { #form-signup .field-signupform-is_test {
display: none; display: none;
} }


/* line 1124, ../sass/screen.scss */
/* line 1169, ../sass/screen.scss */
#col-left { #col-left {
padding: 0px; padding: 0px;
z-index: 15; z-index: 15;
} }
/* line 1128, ../sass/screen.scss */
/* line 1173, ../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 1135, ../sass/screen.scss */
/* line 1180, ../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: white; background-color: white;
} }
/* line 1143, ../sass/screen.scss */
/* line 1188, ../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 1149, ../sass/screen.scss */
/* line 1194, ../sass/screen.scss */
#col-left #link-home .text { #col-left #link-home .text {
padding-left: 62px; padding-left: 62px;
} }
/* line 1152, ../sass/screen.scss */
/* line 1197, ../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 1157, ../sass/screen.scss */
/* line 1202, ../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: #F2B84B; color: #F2B84B;
} }
/* line 1165, ../sass/screen.scss */
/* line 1210, ../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 1173, ../sass/screen.scss */
/* line 1218, ../sass/screen.scss */
#col-left #links { #col-left #links {
background-color: white; background-color: white;
margin-bottom: 20px; margin-bottom: 20px;
} }
/* line 1179, ../sass/screen.scss */
/* line 1224, ../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 1183, ../sass/screen.scss */
/* line 1228, ../sass/screen.scss */
#col-left #links ul li a:hover { #col-left #links ul li a:hover {
background-color: #F2B84B; background-color: #F2B84B;
color: white; color: white;
} }
/* line 1189, ../sass/screen.scss */
/* line 1234, ../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 1199, ../sass/screen.scss */
/* line 1244, ../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 1205, ../sass/screen.scss */
/* line 1250, ../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: #F2B84B; background-color: #F2B84B;
position: relative; position: relative;
color: white; color: white;
} }
/* line 1210, ../sass/screen.scss */
/* line 1255, ../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 1229, ../sass/screen.scss */
/* line 1274, ../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 1234, ../sass/screen.scss */
/* line 1279, ../sass/screen.scss */
#col-left ul li { #col-left ul li {
margin: 0px; margin: 0px;
padding: 0px; padding: 0px;
} }
/* line 1238, ../sass/screen.scss */
/* line 1283, ../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 1248, ../sass/screen.scss */
/* line 1293, ../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 1255, ../sass/screen.scss */
/* line 1300, ../sass/screen.scss */
#col-left p { #col-left p {
padding: 20px; padding: 20px;
padding-top: 0px; padding-top: 0px;
color: gray; color: gray;
} }


/* line 1263, ../sass/screen.scss */
/* line 1308, ../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 1275, ../sass/screen.scss */
/* line 1320, ../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 1283, ../sass/screen.scss */
/* line 1328, ../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 1294, ../sass/screen.scss */
/* line 1339, ../sass/screen.scss */
.header-producer { .header-producer {
z-index: 1; z-index: 1;
} }
/* line 1297, ../sass/screen.scss */
/* line 1342, ../sass/screen.scss */
.header-producer #block-main-img { .header-producer #block-main-img {
height: 144px; height: 144px;
overflow: hidden; overflow: hidden;
} }
/* line 1301, ../sass/screen.scss */
/* line 1346, ../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 1310, ../sass/screen.scss */
/* line 1355, ../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 1317, ../sass/screen.scss */
/* line 1362, ../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 1328, ../sass/screen.scss */
/* line 1373, ../sass/screen.scss */
nav#menu-producer { nav#menu-producer {
border-bottom: solid 1px #e0e0e0; border-bottom: solid 1px #e0e0e0;
} }
/* line 1332, ../sass/screen.scss */
/* line 1377, ../sass/screen.scss */
nav#menu-producer ul li { nav#menu-producer ul li {
padding: 0px; padding: 0px;
margin: 0px; margin: 0px;
} }
/* line 1336, ../sass/screen.scss */
/* line 1381, ../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 1341, ../sass/screen.scss */
/* line 1386, ../sass/screen.scss */
nav#menu-producer ul li a:hover { nav#menu-producer ul li a:hover {
background-color: #F2B84B; background-color: #F2B84B;
color: white; color: white;
} }


/* line 1351, ../sass/screen.scss */
/* line 1396, ../sass/screen.scss */
.site-contact .col-lg-5 { .site-contact .col-lg-5 {
margin: 0px auto; margin: 0px auto;
float: none; float: none;
} }
/* line 1356, ../sass/screen.scss */
/* line 1401, ../sass/screen.scss */
.site-contact .form-group.submit { .site-contact .form-group.submit {
text-align: center; text-align: center;
} }


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


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

+ 30
- 0
frontend/web/js/frontend.js View File

$(document).ready(function () { $(document).ready(function () {
opendistrib_signup(); opendistrib_signup();
producersModule.init(); producersModule.init();
aboutProducersTestimonialsCarousel.init();
}); });


var UrlManager = { var UrlManager = {
} }
}; };


var aboutProducersTestimonialsCarousel = {
getBlock: function(childElementSelector) {
var selector = '#carousel-producers-testimonials';
if(childElementSelector) {
return $(selector).find(childElementSelector);
}

return $(selector);
},
init: function() {
var app = this;
$block = app.getBlock();

// init carousel
$block.carousel();

// event on slide : init height
app.eventSlide();
$block.on('slid.bs.carousel', function () { app.eventSlide();});
},
eventSlide: function() {
var heightCurrentItem = this.getBlock('.item.active .carousel-caption-inner').height() + 50;

this.getBlock().height(heightCurrentItem);
this.getBlock('.item.active').height(heightCurrentItem);
this.getBlock('.item.active .carousel-caption').height(heightCurrentItem);
}
};

var producersModule = { var producersModule = {
map: null, map: null,
mapMarkers: [], mapMarkers: [],

+ 45
- 0
frontend/web/sass/screen.scss View File

} }
} }
} }

#carousel-producers-testimonials {

transition: all 0.4s;
.item, .carousel-caption {
transition: all 0.4s;
}

.carousel-indicators {
display: none;
}

.carousel-control {
background: none;

span.glyphicon {
top: 50px;
}
}

.item {
.carousel-caption {
top: 20px;
color: $courant;
@include text-shadow(none);
padding: 0px;

img {
display: block;
$width-logo-carousel: 150px;
width: $width-logo-carousel;
height: auto;
margin: 0px auto 15px auto;
}

.producer-testimony {
margin-bottom: 12px;
}

.producer-details {
font-style: italic;
}
}
}
}
} }


#content #mentions { #content #mentions {

Loading…
Cancel
Save