Merge branch 'debrief_01' into develop
This commit is contained in:
commit
4c2ecadabc
26 changed files with 489 additions and 268 deletions
|
|
@ -61,7 +61,7 @@ class GammesController extends Controller
|
|||
if (!$gamme->saveOrFail()) {
|
||||
return redirect()->route('bo.gammes.edit', $gamme->id)->with('error', 'L\'actualité n\'a pas été créee');
|
||||
}
|
||||
return redirect()->route('bo.gammes.edit', $gamme->id)->with('success', 'Actualité créée !');
|
||||
return redirect()->route('bo.gammes.edit', $gamme->id)->with('success', 'Gamme créée !');
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -197,8 +197,10 @@ class ProductsController extends Controller
|
|||
if ($uploadfile) {
|
||||
$plus->url = Utils::storeImage($uploadfile, $product->getTable());
|
||||
} else {
|
||||
//reprise de l'ancienne valeur
|
||||
$plus->url = $dbplusproduit[$plus->id]->url;
|
||||
if (isset($dbplusproduit[$plus->id])) {
|
||||
//reprise de l'ancienne valeur
|
||||
$plus->url = $dbplusproduit[$plus->id]->url;
|
||||
}
|
||||
}
|
||||
}
|
||||
//encodage avant save
|
||||
|
|
|
|||
|
|
@ -44,8 +44,7 @@ class StorePostRequest extends FormRequest
|
|||
'date_start' => [
|
||||
'required',
|
||||
'date_format:Y-m-d H:i:s',
|
||||
'before:' . Carbon::now()->parse('2037-12-31'),
|
||||
'after:' . Carbon::now()->format('Y-m-d')
|
||||
'before:' . Carbon::now()->parse('2037-12-31')
|
||||
],
|
||||
'date_end' => [
|
||||
'required',
|
||||
|
|
|
|||
|
|
@ -50,8 +50,7 @@ class StoreSlideRequest extends FormRequest
|
|||
'date_start' => [
|
||||
'nullable',
|
||||
'date_format:Y-m-d H:i:s',
|
||||
'before:' . Carbon::now()->parse('2037-12-31'),
|
||||
'after:' . Carbon::now()->format('Y-m-d')
|
||||
'before:' . Carbon::now()->parse('2037-12-31')
|
||||
],
|
||||
'date_end' => [
|
||||
'nullable',
|
||||
|
|
|
|||
|
|
@ -35,14 +35,13 @@ class Gamme extends Model
|
|||
'alt_text_banner',
|
||||
];
|
||||
|
||||
|
||||
protected static function boot()
|
||||
{
|
||||
static::creating(function (Gamme $gamme) {
|
||||
if (is_a($gamme->picture,"SplFileInfo")) {
|
||||
if (is_a($gamme->picture, "SplFileInfo")) {
|
||||
$gamme->picture = Utils::storeImage($gamme->picture, $gamme->getTable());
|
||||
}
|
||||
if (is_a($gamme->banner,"SplFileInfo")) {
|
||||
if (is_a($gamme->banner, "SplFileInfo")) {
|
||||
$gamme->banner = Utils::storeImage($gamme->banner, $gamme->getTable());
|
||||
}
|
||||
|
||||
|
|
@ -53,10 +52,10 @@ class Gamme extends Model
|
|||
});
|
||||
|
||||
static::updating(function (Gamme $gamme) {
|
||||
if (is_a($gamme->picture,"SplFileInfo")) {
|
||||
if (is_a($gamme->picture, "SplFileInfo")) {
|
||||
$gamme->picture = Utils::storeImage($gamme->picture, $gamme->getTable());
|
||||
}
|
||||
if (is_a($gamme->banner,"SplFileInfo")) {
|
||||
if (is_a($gamme->banner, "SplFileInfo")) {
|
||||
$gamme->banner = Utils::storeImage($gamme->banner, $gamme->getTable());
|
||||
}
|
||||
if ($gamme->parent_gamme_id === null) {
|
||||
|
|
@ -118,7 +117,7 @@ class Gamme extends Model
|
|||
}
|
||||
list($r, $g, $b) = array_map("hexdec", str_split($color, (strlen($color) / 3)));
|
||||
|
||||
return "rgba($r,$g,$b,.8)";
|
||||
return "rgba($r,$g,$b,1)";
|
||||
}
|
||||
|
||||
public function childGammes()
|
||||
|
|
|
|||
BIN
public/assets/images/picto_halal.png
Normal file
BIN
public/assets/images/picto_halal.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 18 KiB |
123
public/css/preload-front.css
vendored
123
public/css/preload-front.css
vendored
|
|
@ -4176,9 +4176,9 @@ img{
|
|||
}
|
||||
|
||||
#search{
|
||||
width:28px;
|
||||
height:28px;
|
||||
margin-left:25px;
|
||||
width:24px;
|
||||
height:24px;
|
||||
margin-left:15px;
|
||||
}
|
||||
|
||||
.product ul.more li{
|
||||
|
|
@ -4193,6 +4193,25 @@ img{
|
|||
top:30px;
|
||||
}
|
||||
|
||||
.product .img-bloc{
|
||||
position:relative;
|
||||
}
|
||||
.product .img-bloc::after{
|
||||
content:"";
|
||||
display:none;
|
||||
background-image:url(/assets/images/picto_halal.png?5690b4b09d272bb18d472947f3baefc6);
|
||||
background-size:contain;
|
||||
background-repeat:no-repeat;
|
||||
position:absolute;
|
||||
right:0;
|
||||
bottom:0;
|
||||
width:25%;
|
||||
height:25%;
|
||||
}
|
||||
.product .img-bloc.view-halal::after{
|
||||
display:block;
|
||||
}
|
||||
|
||||
ul.more{
|
||||
margin-top:50px;
|
||||
}
|
||||
|
|
@ -4225,10 +4244,13 @@ ul.more li .label img{
|
|||
|
||||
ul.infos{
|
||||
display:flex;
|
||||
flex-direction:column;
|
||||
justify-content:center;
|
||||
align-items:center;
|
||||
}
|
||||
ul.infos li{
|
||||
justify-content:center;
|
||||
width:110px;
|
||||
padding:10px;
|
||||
text-align:center;
|
||||
color:#222f5c;
|
||||
font-family:"barlow-bold", arial, sans-serif;
|
||||
|
|
@ -4261,7 +4283,19 @@ ul.infos span{
|
|||
bottom:0;
|
||||
}
|
||||
|
||||
@media screen and (min-width: 480px){
|
||||
ul.infos{
|
||||
flex-direction:row;
|
||||
align-items:initial;
|
||||
}
|
||||
}
|
||||
@media screen and (min-width: 800px){
|
||||
#search{
|
||||
width:28px;
|
||||
height:28px;
|
||||
margin-left:25px;
|
||||
}
|
||||
|
||||
main{
|
||||
padding-top:100px;
|
||||
}
|
||||
|
|
@ -4287,10 +4321,16 @@ ul.infos span{
|
|||
}
|
||||
|
||||
.container{
|
||||
padding-top:60px;
|
||||
padding-bottom:60px;
|
||||
padding-top:30px;
|
||||
padding-bottom:30px;
|
||||
}
|
||||
|
||||
@media screen and (min-width: 768px){
|
||||
.container{
|
||||
padding-top:60px;
|
||||
padding-bottom:60px;
|
||||
}
|
||||
}
|
||||
@media screen and (min-width: 1200px){
|
||||
.wrapper,
|
||||
.wrapper-m{
|
||||
|
|
@ -4363,6 +4403,9 @@ ul.infos span{
|
|||
.is-flex.space-between{
|
||||
justify-content:space-between;
|
||||
}
|
||||
.is-flex.flex-center{
|
||||
justify-content:center;
|
||||
}
|
||||
.is-flex.flex-col{
|
||||
flex-direction:column;
|
||||
}
|
||||
|
|
@ -4431,7 +4474,7 @@ ul.infos span{
|
|||
margin-left:35px;
|
||||
}
|
||||
}
|
||||
@media screen and (max-width: 799px){
|
||||
@media screen and (max-width: 1024px){
|
||||
.is-flex{
|
||||
flex-direction:column;
|
||||
}
|
||||
|
|
@ -4450,7 +4493,8 @@ p{
|
|||
}
|
||||
|
||||
h1,
|
||||
.page-subtitle{
|
||||
.page-subtitle,
|
||||
.header-title{
|
||||
margin-bottom:25px;
|
||||
}
|
||||
|
||||
|
|
@ -4466,7 +4510,7 @@ h1,
|
|||
font-size:38px;
|
||||
}
|
||||
|
||||
h1:not(.maintitle):after,
|
||||
.header-title:after,
|
||||
.sectiontitle:after,
|
||||
.page-subtitle:after{
|
||||
content:"";
|
||||
|
|
@ -4481,6 +4525,10 @@ h1:not(.maintitle):after,
|
|||
background-color:#fccf1d;
|
||||
}
|
||||
|
||||
.header-title h1{
|
||||
margin-bottom:0;
|
||||
}
|
||||
|
||||
h1.blue-line:not(.maintitle):after,
|
||||
.sectiontitle.blue-line:after,
|
||||
.page-subtitle.blue-line:after{
|
||||
|
|
@ -4511,6 +4559,7 @@ h1:not(.maintitle){
|
|||
|
||||
.mascotte:before{
|
||||
content:url(/assets/images/coq.png?2c2ffbd44b298f35a5b6247e137d2593);
|
||||
display:none;
|
||||
position:absolute;
|
||||
left:-450px;
|
||||
bottom:0;
|
||||
|
|
@ -4538,6 +4587,11 @@ h3.product-card__title{
|
|||
font-family:"cocon-regular", arial, sans-serif;
|
||||
}
|
||||
|
||||
@media screen and (min-width: 1024px){
|
||||
.mascotte:before{
|
||||
display:block;
|
||||
}
|
||||
}
|
||||
@media screen and (min-width: 800px){
|
||||
h1:not(.title_page),
|
||||
.page-subtitle,
|
||||
|
|
@ -4678,6 +4732,9 @@ h3:not(.item__title, .product-card__title){
|
|||
.site-header nav a:hover{
|
||||
color:#ff0400;
|
||||
}
|
||||
.site-header nav a.menu__item--current{
|
||||
color:#ff0400;
|
||||
}
|
||||
.site-header .traduction{
|
||||
display:flex;
|
||||
}
|
||||
|
|
@ -4685,6 +4742,7 @@ h3:not(.item__title, .product-card__title){
|
|||
margin-right:15px;
|
||||
}
|
||||
.site-header .traduction li a{
|
||||
font-size:14px;
|
||||
color:#222f5c;
|
||||
text-transform:uppercase;
|
||||
text-decoration:none;
|
||||
|
|
@ -4695,8 +4753,17 @@ h3:not(.item__title, .product-card__title){
|
|||
.site-header .traduction li:last-of-type{
|
||||
margin-right:0;
|
||||
}
|
||||
.site-header.blue-bg .traduction li a{
|
||||
color:#fccf1d;
|
||||
}
|
||||
.site-header.blue-bg .traduction li.current a{
|
||||
color:#ff0400;
|
||||
}
|
||||
|
||||
@media screen and (min-width: 800px){
|
||||
.site-header .traduction li a{
|
||||
font-size:18px;
|
||||
}
|
||||
.site-header .wrapper{
|
||||
justify-content:space-between;
|
||||
height:100px;
|
||||
|
|
@ -5228,7 +5295,7 @@ input[type=text]{
|
|||
.gamme-card{
|
||||
display:flex;
|
||||
position:relative;
|
||||
height:375px;
|
||||
height:300px;
|
||||
margin-bottom:20px;
|
||||
overflow:hidden;
|
||||
}
|
||||
|
|
@ -5258,6 +5325,11 @@ input[type=text]{
|
|||
transition:bottom 0.4s;
|
||||
}
|
||||
|
||||
.product-card > img{
|
||||
-o-object-fit:contain;
|
||||
object-fit:contain;
|
||||
}
|
||||
|
||||
.product-card .product-card__title,
|
||||
.product-card a{
|
||||
position:absolute;
|
||||
|
|
@ -5301,6 +5373,7 @@ input[type=text]{
|
|||
color:#fff;
|
||||
font-size:30px;
|
||||
font-family:"barlow-bold", arial, sans-serif;
|
||||
padding-bottom:50px;
|
||||
}
|
||||
.gamme-card:hover .overlay{
|
||||
bottom:50px;
|
||||
|
|
@ -5311,7 +5384,7 @@ input[type=text]{
|
|||
}
|
||||
#list .title{
|
||||
color:#fff;
|
||||
font-size:calc(18px * 3.25);
|
||||
font-size:calc(18px * 2);
|
||||
}
|
||||
#list .is-flex{
|
||||
margin-bottom:60px;
|
||||
|
|
@ -5366,6 +5439,10 @@ input[type=text]{
|
|||
}
|
||||
|
||||
@media (min-width: 769px){
|
||||
#list .title{
|
||||
font-size:calc(18px * 3.25);
|
||||
}
|
||||
|
||||
.product-card{
|
||||
width:32%;
|
||||
max-width:32%;
|
||||
|
|
@ -5953,6 +6030,7 @@ input[type=text]{
|
|||
}
|
||||
.jumbotron .maintitle{
|
||||
position:absolute;
|
||||
max-width:100%;
|
||||
color:#fff;
|
||||
text-align:center;
|
||||
text-shadow:0 2px 8px rgba(12, 20, 23, 0.6);
|
||||
|
|
@ -6006,7 +6084,7 @@ input[type=text]{
|
|||
align-items:center;
|
||||
flex:1;
|
||||
margin-right:60px;
|
||||
transition:transform 0.2s;
|
||||
transition:transform 0.7s;
|
||||
}
|
||||
#products .product-item:last-child{
|
||||
margin-right:0;
|
||||
|
|
@ -6021,11 +6099,17 @@ input[type=text]{
|
|||
margin-top:20px;
|
||||
}
|
||||
|
||||
#product-food .sectiontitle:after{
|
||||
content:"";
|
||||
background-color:#0c1417;
|
||||
}
|
||||
|
||||
#values .sectiontitle:after{
|
||||
content:"";
|
||||
background-color:#0c1417;
|
||||
}
|
||||
#values .sectiontitle.white-line:after{
|
||||
#values .sectiontitle.white-line:after,
|
||||
#values .header-title.white-line:after{
|
||||
background-color:white;
|
||||
}
|
||||
#values > img{
|
||||
|
|
@ -6049,6 +6133,7 @@ input[type=text]{
|
|||
justify-content:center;
|
||||
align-items:center;
|
||||
flex:1;
|
||||
padding:10px;
|
||||
font-family:"barlow-bold", arial, sans-serif;
|
||||
}
|
||||
#values .values-list .item img{
|
||||
|
|
@ -6088,6 +6173,7 @@ input[type=text]{
|
|||
}
|
||||
|
||||
.cuisto{
|
||||
display:none;
|
||||
position:absolute;
|
||||
left:0;
|
||||
top:0;
|
||||
|
|
@ -6289,6 +6375,10 @@ input[type=text]{
|
|||
margin-top:50px;
|
||||
}
|
||||
|
||||
.desk-mb-50{
|
||||
margin-bottom:50px !important;
|
||||
}
|
||||
|
||||
.desk-mb-80{
|
||||
margin-bottom:80px !important;
|
||||
}
|
||||
|
|
@ -6320,6 +6410,11 @@ input[type=text]{
|
|||
margin-top:-100px;
|
||||
}
|
||||
}
|
||||
@media screen and (min-width: 1024px){
|
||||
.cuisto{
|
||||
display:block;
|
||||
}
|
||||
}
|
||||
@media screen and (min-width: 1200px){
|
||||
.best span:first-of-type{
|
||||
font-size:90px;
|
||||
|
|
@ -6330,7 +6425,7 @@ input[type=text]{
|
|||
}
|
||||
@media screen and (max-width: 799px){
|
||||
.jumbotron .maintitle{
|
||||
font-size:calc(18px * 1.8);
|
||||
font-size:calc(18px * 1.6);
|
||||
}
|
||||
|
||||
.blue > .menu .menu__item a{
|
||||
|
|
|
|||
Binary file not shown.
|
Before Width: | Height: | Size: 17 KiB After Width: | Height: | Size: 17 KiB |
106
public/js/preload-front.js
vendored
106
public/js/preload-front.js
vendored
|
|
@ -337,26 +337,20 @@ __webpack_require__.r(__webpack_exports__);
|
|||
/* harmony import */ var core_js_modules_web_dom_collections_for_each_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_web_dom_collections_for_each_js__WEBPACK_IMPORTED_MODULE_1__);
|
||||
|
||||
|
||||
// let isPass = false;
|
||||
// let heightOfsset = 0;
|
||||
// let heightElt = 0;
|
||||
var app = {
|
||||
init: function init() {
|
||||
window.onscroll = function () {
|
||||
app.scrollFunction();
|
||||
};
|
||||
|
||||
app.scroll();
|
||||
},
|
||||
scroll: function scroll() {
|
||||
document.getElementById("backtotop").addEventListener("click", function () {
|
||||
window.scrollTo({
|
||||
top: 0,
|
||||
behavior: "smooth"
|
||||
});
|
||||
});
|
||||
},
|
||||
scrollFunction: function scrollFunction() {
|
||||
function docReady(fn) {
|
||||
// see if DOM is already available
|
||||
if (document.readyState === "complete" || document.readyState === "interactive") {
|
||||
// call on next available tick
|
||||
setTimeout(fn, 1);
|
||||
} else {
|
||||
document.addEventListener("DOMContentLoaded", fn);
|
||||
}
|
||||
}
|
||||
|
||||
docReady(function () {
|
||||
// DOM is loaded and ready for manipulation here
|
||||
window.onscroll = function () {
|
||||
var imgZoom = document.querySelectorAll('.img-zoom');
|
||||
var index = 0;
|
||||
|
||||
|
|
@ -373,41 +367,57 @@ var app = {
|
|||
imgZoom[index].classList.remove('zoomed');
|
||||
}
|
||||
}
|
||||
}
|
||||
}; // FONCTION PERMETTANT DE FAIRE UN EFFET ANIMATION AU DEFILEMENT
|
||||
};
|
||||
|
||||
var ratio = 0.1; // 10% du div revelé pour rendre visible
|
||||
document.getElementById("backtotop").addEventListener("click", function () {
|
||||
window.scrollTo({
|
||||
top: 0,
|
||||
behavior: "smooth"
|
||||
});
|
||||
});
|
||||
var eltsTitle = document.getElementsByClassName("menu__link");
|
||||
|
||||
var options = {
|
||||
root: null,
|
||||
// Zone d'affichage : null = le viewport
|
||||
rootMargin: "0px",
|
||||
threshold: ratio
|
||||
};
|
||||
var animArray = ["bounce", "flash", "pulse", "rubberBand", "shakeX", "shakeY", "headShake", "swing", "tada", "wobble", "jello", "heartBeat", "backInDown", "backInLeft", "backInRight", "backInUp", "backOutDown", "backOutLeft", "backOutRight", "backOutUp", "bounceIn", "bounceInDown", "bounceInLeft", "bounceInRight", "bounceInUp", "bounceOut", "bounceOutDown", "bounceOutLeft", "bounceOutRight", "bounceOutUp", "fadeIn", "fadeInDown", "fadeInDownBig", "fadeInLeft", "fadeInLeftBig", "fadeInRight", "fadeInRightBig", "fadeInUp", "fadeInUpBig", "fadeInTopLeft", "fadeInTopRight", "fadeInBottomLeft", "fadeInBottomRight", "fadeOut", "fadeOutDown", "fadeOutDownBig", "fadeOutLeft", "fadeOutLeftBig", "fadeOutRight", "fadeOutRightBig", "fadeOutUp", "fadeOutUpBig", "fadeOutTopLeft", "fadeOutTopRight", "fadeOutBottomRight", "fadeOutBottomLeft", "flip", "flipInX", "flipInY", "flipOutX", "flipOutY", "lightSpeedInRight", "lightSpeedInLeft", "lightSpeedOutRight", "lightSpeedOutLeft", "rotateIn", "rotateInDownLeft", "rotateInDownRight", "rotateInUpLeft", "rotateInUpRight", "rotateOut", "rotateOutDownLeft", "rotateOutDownRight", "rotateOutUpLeft", "rotateOutUpRight", "hinge", "jackInTheBox", "rollIn", "rollOut", "zoomIn", "zoomInDown", "zoomInLeft", "zoomInRight", "zoomInUp", "zoomOut", "zoomOutDown", "zoomOutLeft", "zoomOutRight", "zoomOutUp", "slideInDown", "slideInLeft", "slideInRight", "slideInUp", "slideOutDown", "slideOutLeft", "slideOutRight", "slideOutUp"];
|
||||
/**
|
||||
*
|
||||
* @param {IntersectionObserverEntry[]} entries
|
||||
* @param {IntersectionObserver} observer
|
||||
*/
|
||||
for (var ii = 0; ii < eltsTitle.length; ii++) {
|
||||
// eltsTitle[ii].classList.remove('red-color');
|
||||
eltsTitle[ii].addEventListener("click", function () {
|
||||
this.classList.add('red-color');
|
||||
});
|
||||
} // FONCTION PERMETTANT DE FAIRE UN EFFET ANIMATION AU DEFILEMENT
|
||||
|
||||
var handleIntersect = function handleIntersect(entries, observer) {
|
||||
entries.forEach(function (entry) {
|
||||
if (entry.intersectionRatio > ratio) {
|
||||
for (var i = 0; i < animArray.length; i++) {
|
||||
if (entry.target.classList.contains(animArray[i])) {
|
||||
entry.target.classList.add("animate__" + animArray[i]);
|
||||
entry.target.classList.add("reveal-visible");
|
||||
observer.unobserve(entry.target);
|
||||
|
||||
var ratio = 0.1; // 10% du div revelé pour rendre visible
|
||||
|
||||
var options = {
|
||||
root: null,
|
||||
// Zone d'affichage : null = le viewport
|
||||
rootMargin: "0px",
|
||||
threshold: ratio
|
||||
};
|
||||
var animArray = ["bounce", "flash", "pulse", "rubberBand", "shakeX", "shakeY", "headShake", "swing", "tada", "wobble", "jello", "heartBeat", "backInDown", "backInLeft", "backInRight", "backInUp", "backOutDown", "backOutLeft", "backOutRight", "backOutUp", "bounceIn", "bounceInDown", "bounceInLeft", "bounceInRight", "bounceInUp", "bounceOut", "bounceOutDown", "bounceOutLeft", "bounceOutRight", "bounceOutUp", "fadeIn", "fadeInDown", "fadeInDownBig", "fadeInLeft", "fadeInLeftBig", "fadeInRight", "fadeInRightBig", "fadeInUp", "fadeInUpBig", "fadeInTopLeft", "fadeInTopRight", "fadeInBottomLeft", "fadeInBottomRight", "fadeOut", "fadeOutDown", "fadeOutDownBig", "fadeOutLeft", "fadeOutLeftBig", "fadeOutRight", "fadeOutRightBig", "fadeOutUp", "fadeOutUpBig", "fadeOutTopLeft", "fadeOutTopRight", "fadeOutBottomRight", "fadeOutBottomLeft", "flip", "flipInX", "flipInY", "flipOutX", "flipOutY", "lightSpeedInRight", "lightSpeedInLeft", "lightSpeedOutRight", "lightSpeedOutLeft", "rotateIn", "rotateInDownLeft", "rotateInDownRight", "rotateInUpLeft", "rotateInUpRight", "rotateOut", "rotateOutDownLeft", "rotateOutDownRight", "rotateOutUpLeft", "rotateOutUpRight", "hinge", "jackInTheBox", "rollIn", "rollOut", "zoomIn", "zoomInDown", "zoomInLeft", "zoomInRight", "zoomInUp", "zoomOut", "zoomOutDown", "zoomOutLeft", "zoomOutRight", "zoomOutUp", "slideInDown", "slideInLeft", "slideInRight", "slideInUp", "slideOutDown", "slideOutLeft", "slideOutRight", "slideOutUp"];
|
||||
/**
|
||||
*
|
||||
* @param {IntersectionObserverEntry[]} entries
|
||||
* @param {IntersectionObserver} observer
|
||||
*/
|
||||
|
||||
var handleIntersect = function handleIntersect(entries, observer) {
|
||||
entries.forEach(function (entry) {
|
||||
if (entry.intersectionRatio > ratio) {
|
||||
for (var i = 0; i < animArray.length; i++) {
|
||||
if (entry.target.classList.contains(animArray[i])) {
|
||||
entry.target.classList.add("animate__" + animArray[i]);
|
||||
entry.target.classList.add("reveal-visible");
|
||||
observer.unobserve(entry.target);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
};
|
||||
});
|
||||
};
|
||||
|
||||
var observer = new IntersectionObserver(handleIntersect, options);
|
||||
document.querySelectorAll(".animate__animated").forEach(function (r) {
|
||||
observer.observe(r);
|
||||
var observer = new IntersectionObserver(handleIntersect, options);
|
||||
document.querySelectorAll(".animate__animated").forEach(function (r) {
|
||||
observer.observe(r);
|
||||
});
|
||||
});
|
||||
|
||||
/***/ }),
|
||||
|
|
|
|||
BIN
resources/assets/images/picto_halal.png
Normal file
BIN
resources/assets/images/picto_halal.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 18 KiB |
305
resources/js/frontend/custom.js
vendored
305
resources/js/frontend/custom.js
vendored
|
|
@ -1,29 +1,17 @@
|
|||
// let isPass = false;
|
||||
// let heightOfsset = 0;
|
||||
// let heightElt = 0;
|
||||
function docReady(fn) {
|
||||
// see if DOM is already available
|
||||
if (document.readyState === "complete" || document.readyState === "interactive") {
|
||||
// call on next available tick
|
||||
setTimeout(fn, 1);
|
||||
} else {
|
||||
document.addEventListener("DOMContentLoaded", fn);
|
||||
}
|
||||
}
|
||||
|
||||
var app = {
|
||||
init: () => {
|
||||
window.onscroll = function () {
|
||||
app.scrollFunction();
|
||||
};
|
||||
docReady(function () {
|
||||
// DOM is loaded and ready for manipulation here
|
||||
|
||||
app.scroll();
|
||||
},
|
||||
|
||||
scroll: () => {
|
||||
|
||||
document
|
||||
.getElementById("backtotop")
|
||||
.addEventListener("click", function () {
|
||||
window.scrollTo({
|
||||
top: 0,
|
||||
behavior: "smooth",
|
||||
});
|
||||
});
|
||||
},
|
||||
|
||||
scrollFunction: () => {
|
||||
window.onscroll = function () {
|
||||
let imgZoom = document.querySelectorAll('.img-zoom');
|
||||
let index = 0;
|
||||
if (
|
||||
|
|
@ -40,134 +28,151 @@ var app = {
|
|||
imgZoom[index].classList.remove('zoomed');
|
||||
}
|
||||
}
|
||||
},
|
||||
};
|
||||
};
|
||||
|
||||
// FONCTION PERMETTANT DE FAIRE UN EFFET ANIMATION AU DEFILEMENT
|
||||
const ratio = 0.1; // 10% du div revelé pour rendre visible
|
||||
const options = {
|
||||
root: null, // Zone d'affichage : null = le viewport
|
||||
rootMargin: "0px",
|
||||
threshold: ratio,
|
||||
};
|
||||
var animArray = [
|
||||
"bounce",
|
||||
"flash",
|
||||
"pulse",
|
||||
"rubberBand",
|
||||
"shakeX",
|
||||
"shakeY",
|
||||
"headShake",
|
||||
"swing",
|
||||
"tada",
|
||||
"wobble",
|
||||
"jello",
|
||||
"heartBeat",
|
||||
"backInDown",
|
||||
"backInLeft",
|
||||
"backInRight",
|
||||
"backInUp",
|
||||
"backOutDown",
|
||||
"backOutLeft",
|
||||
"backOutRight",
|
||||
"backOutUp",
|
||||
"bounceIn",
|
||||
"bounceInDown",
|
||||
"bounceInLeft",
|
||||
"bounceInRight",
|
||||
"bounceInUp",
|
||||
"bounceOut",
|
||||
"bounceOutDown",
|
||||
"bounceOutLeft",
|
||||
"bounceOutRight",
|
||||
"bounceOutUp",
|
||||
"fadeIn",
|
||||
"fadeInDown",
|
||||
"fadeInDownBig",
|
||||
"fadeInLeft",
|
||||
"fadeInLeftBig",
|
||||
"fadeInRight",
|
||||
"fadeInRightBig",
|
||||
"fadeInUp",
|
||||
"fadeInUpBig",
|
||||
"fadeInTopLeft",
|
||||
"fadeInTopRight",
|
||||
"fadeInBottomLeft",
|
||||
"fadeInBottomRight",
|
||||
"fadeOut",
|
||||
"fadeOutDown",
|
||||
"fadeOutDownBig",
|
||||
"fadeOutLeft",
|
||||
"fadeOutLeftBig",
|
||||
"fadeOutRight",
|
||||
"fadeOutRightBig",
|
||||
"fadeOutUp",
|
||||
"fadeOutUpBig",
|
||||
"fadeOutTopLeft",
|
||||
"fadeOutTopRight",
|
||||
"fadeOutBottomRight",
|
||||
"fadeOutBottomLeft",
|
||||
"flip",
|
||||
"flipInX",
|
||||
"flipInY",
|
||||
"flipOutX",
|
||||
"flipOutY",
|
||||
"lightSpeedInRight",
|
||||
"lightSpeedInLeft",
|
||||
"lightSpeedOutRight",
|
||||
"lightSpeedOutLeft",
|
||||
"rotateIn",
|
||||
"rotateInDownLeft",
|
||||
"rotateInDownRight",
|
||||
"rotateInUpLeft",
|
||||
"rotateInUpRight",
|
||||
"rotateOut",
|
||||
"rotateOutDownLeft",
|
||||
"rotateOutDownRight",
|
||||
"rotateOutUpLeft",
|
||||
"rotateOutUpRight",
|
||||
"hinge",
|
||||
"jackInTheBox",
|
||||
"rollIn",
|
||||
"rollOut",
|
||||
"zoomIn",
|
||||
"zoomInDown",
|
||||
"zoomInLeft",
|
||||
"zoomInRight",
|
||||
"zoomInUp",
|
||||
"zoomOut",
|
||||
"zoomOutDown",
|
||||
"zoomOutLeft",
|
||||
"zoomOutRight",
|
||||
"zoomOutUp",
|
||||
"slideInDown",
|
||||
"slideInLeft",
|
||||
"slideInRight",
|
||||
"slideInUp",
|
||||
"slideOutDown",
|
||||
"slideOutLeft",
|
||||
"slideOutRight",
|
||||
"slideOutUp",
|
||||
];
|
||||
/**
|
||||
*
|
||||
* @param {IntersectionObserverEntry[]} entries
|
||||
* @param {IntersectionObserver} observer
|
||||
*/
|
||||
const handleIntersect = function (entries, observer) {
|
||||
entries.forEach(function (entry) {
|
||||
if (entry.intersectionRatio > ratio) {
|
||||
for (var i = 0; i < animArray.length; i++) {
|
||||
if (entry.target.classList.contains(animArray[i])) {
|
||||
entry.target.classList.add("animate__" + animArray[i]);
|
||||
entry.target.classList.add("reveal-visible");
|
||||
observer.unobserve(entry.target);
|
||||
document
|
||||
.getElementById("backtotop")
|
||||
.addEventListener("click", function () {
|
||||
window.scrollTo({
|
||||
top: 0,
|
||||
behavior: "smooth",
|
||||
});
|
||||
});
|
||||
|
||||
let eltsTitle = document.getElementsByClassName("menu__link");
|
||||
for (let ii = 0; ii < eltsTitle.length; ii++) {
|
||||
// eltsTitle[ii].classList.remove('red-color');
|
||||
eltsTitle[ii].addEventListener("click", function () {
|
||||
this.classList.add('red-color');
|
||||
});
|
||||
}
|
||||
|
||||
// FONCTION PERMETTANT DE FAIRE UN EFFET ANIMATION AU DEFILEMENT
|
||||
const ratio = 0.1; // 10% du div revelé pour rendre visible
|
||||
const options = {
|
||||
root: null, // Zone d'affichage : null = le viewport
|
||||
rootMargin: "0px",
|
||||
threshold: ratio,
|
||||
};
|
||||
var animArray = [
|
||||
"bounce",
|
||||
"flash",
|
||||
"pulse",
|
||||
"rubberBand",
|
||||
"shakeX",
|
||||
"shakeY",
|
||||
"headShake",
|
||||
"swing",
|
||||
"tada",
|
||||
"wobble",
|
||||
"jello",
|
||||
"heartBeat",
|
||||
"backInDown",
|
||||
"backInLeft",
|
||||
"backInRight",
|
||||
"backInUp",
|
||||
"backOutDown",
|
||||
"backOutLeft",
|
||||
"backOutRight",
|
||||
"backOutUp",
|
||||
"bounceIn",
|
||||
"bounceInDown",
|
||||
"bounceInLeft",
|
||||
"bounceInRight",
|
||||
"bounceInUp",
|
||||
"bounceOut",
|
||||
"bounceOutDown",
|
||||
"bounceOutLeft",
|
||||
"bounceOutRight",
|
||||
"bounceOutUp",
|
||||
"fadeIn",
|
||||
"fadeInDown",
|
||||
"fadeInDownBig",
|
||||
"fadeInLeft",
|
||||
"fadeInLeftBig",
|
||||
"fadeInRight",
|
||||
"fadeInRightBig",
|
||||
"fadeInUp",
|
||||
"fadeInUpBig",
|
||||
"fadeInTopLeft",
|
||||
"fadeInTopRight",
|
||||
"fadeInBottomLeft",
|
||||
"fadeInBottomRight",
|
||||
"fadeOut",
|
||||
"fadeOutDown",
|
||||
"fadeOutDownBig",
|
||||
"fadeOutLeft",
|
||||
"fadeOutLeftBig",
|
||||
"fadeOutRight",
|
||||
"fadeOutRightBig",
|
||||
"fadeOutUp",
|
||||
"fadeOutUpBig",
|
||||
"fadeOutTopLeft",
|
||||
"fadeOutTopRight",
|
||||
"fadeOutBottomRight",
|
||||
"fadeOutBottomLeft",
|
||||
"flip",
|
||||
"flipInX",
|
||||
"flipInY",
|
||||
"flipOutX",
|
||||
"flipOutY",
|
||||
"lightSpeedInRight",
|
||||
"lightSpeedInLeft",
|
||||
"lightSpeedOutRight",
|
||||
"lightSpeedOutLeft",
|
||||
"rotateIn",
|
||||
"rotateInDownLeft",
|
||||
"rotateInDownRight",
|
||||
"rotateInUpLeft",
|
||||
"rotateInUpRight",
|
||||
"rotateOut",
|
||||
"rotateOutDownLeft",
|
||||
"rotateOutDownRight",
|
||||
"rotateOutUpLeft",
|
||||
"rotateOutUpRight",
|
||||
"hinge",
|
||||
"jackInTheBox",
|
||||
"rollIn",
|
||||
"rollOut",
|
||||
"zoomIn",
|
||||
"zoomInDown",
|
||||
"zoomInLeft",
|
||||
"zoomInRight",
|
||||
"zoomInUp",
|
||||
"zoomOut",
|
||||
"zoomOutDown",
|
||||
"zoomOutLeft",
|
||||
"zoomOutRight",
|
||||
"zoomOutUp",
|
||||
"slideInDown",
|
||||
"slideInLeft",
|
||||
"slideInRight",
|
||||
"slideInUp",
|
||||
"slideOutDown",
|
||||
"slideOutLeft",
|
||||
"slideOutRight",
|
||||
"slideOutUp",
|
||||
];
|
||||
/**
|
||||
*
|
||||
* @param {IntersectionObserverEntry[]} entries
|
||||
* @param {IntersectionObserver} observer
|
||||
*/
|
||||
const handleIntersect = function (entries, observer) {
|
||||
entries.forEach(function (entry) {
|
||||
if (entry.intersectionRatio > ratio) {
|
||||
for (var i = 0; i < animArray.length; i++) {
|
||||
if (entry.target.classList.contains(animArray[i])) {
|
||||
entry.target.classList.add("animate__" + animArray[i]);
|
||||
entry.target.classList.add("reveal-visible");
|
||||
observer.unobserve(entry.target);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
};
|
||||
const observer = new IntersectionObserver(handleIntersect, options);
|
||||
document.querySelectorAll(".animate__animated").forEach(function (r) {
|
||||
observer.observe(r);
|
||||
});
|
||||
};
|
||||
const observer = new IntersectionObserver(handleIntersect, options);
|
||||
document.querySelectorAll(".animate__animated").forEach(function (r) {
|
||||
observer.observe(r);
|
||||
});
|
||||
|
|
|
|||
2
resources/sass/_variables.scss
vendored
2
resources/sass/_variables.scss
vendored
|
|
@ -5,7 +5,7 @@ $topNavHeight: 3rem;
|
|||
$body-bg: #f8fafc;
|
||||
|
||||
// Typography
|
||||
$font-family-sans-serif: 'Nunito', sans-serif;
|
||||
$font-family-sans-serif: "Nunito", sans-serif;
|
||||
$font-size-base: 0.9rem;
|
||||
$line-height-base: 1.6;
|
||||
|
||||
|
|
|
|||
27
resources/sass/frontend/_custom.scss
vendored
27
resources/sass/frontend/_custom.scss
vendored
|
|
@ -5,6 +5,7 @@
|
|||
justify-content: center;
|
||||
.maintitle {
|
||||
position: absolute;
|
||||
max-width: 100%;
|
||||
color: $color-light;
|
||||
text-align: center;
|
||||
text-shadow: 0 2px 8px rgba($color-dark, 0.6);
|
||||
|
|
@ -58,7 +59,7 @@
|
|||
align-items: center;
|
||||
flex: 1;
|
||||
margin-right: 60px;
|
||||
transition: transform 0.2s; /* Animation */
|
||||
transition: transform 0.7s; /* Animation */
|
||||
|
||||
&:last-child {
|
||||
margin-right: 0;
|
||||
|
|
@ -74,13 +75,19 @@
|
|||
margin-top: 20px;
|
||||
}
|
||||
}
|
||||
|
||||
#product-food {
|
||||
.sectiontitle:after {
|
||||
content: "";
|
||||
background-color: $color-dark;
|
||||
}
|
||||
}
|
||||
#values {
|
||||
.sectiontitle:after {
|
||||
content: "";
|
||||
background-color: $color-dark;
|
||||
}
|
||||
.sectiontitle.white-line:after {
|
||||
.sectiontitle.white-line:after,
|
||||
.header-title.white-line:after {
|
||||
background-color: white;
|
||||
}
|
||||
> img {
|
||||
|
|
@ -103,7 +110,9 @@
|
|||
justify-content: center;
|
||||
align-items: center;
|
||||
flex: 1;
|
||||
padding: 10px;
|
||||
font-family: $fontbarlow-bold;
|
||||
|
||||
img {
|
||||
width: 70px;
|
||||
height: 70px;
|
||||
|
|
@ -144,6 +153,7 @@
|
|||
}
|
||||
|
||||
.cuisto {
|
||||
display: none;
|
||||
position: absolute;
|
||||
left: 0;
|
||||
top: 0;
|
||||
|
|
@ -372,6 +382,9 @@
|
|||
.desk-mt50 {
|
||||
margin-top: 50px;
|
||||
}
|
||||
.desk-mb-50 {
|
||||
margin-bottom: 50px !important;
|
||||
}
|
||||
.desk-mb-80 {
|
||||
margin-bottom: 80px !important;
|
||||
}
|
||||
|
|
@ -402,6 +415,12 @@
|
|||
}
|
||||
}
|
||||
|
||||
@media screen and (min-width: 1024px) {
|
||||
.cuisto {
|
||||
display: block;
|
||||
}
|
||||
}
|
||||
|
||||
@media screen and (min-width: 1200px) {
|
||||
.best {
|
||||
span:first-of-type {
|
||||
|
|
@ -415,7 +434,7 @@
|
|||
|
||||
@media screen and (max-width: 799px) {
|
||||
.jumbotron .maintitle {
|
||||
font-size: calc(#{$globalfont} * 1.8);
|
||||
font-size: calc(#{$globalfont} * 1.6);
|
||||
}
|
||||
.blue {
|
||||
> .menu .menu__item a {
|
||||
|
|
|
|||
43
resources/sass/frontend/_globals.scss
vendored
43
resources/sass/frontend/_globals.scss
vendored
|
|
@ -72,9 +72,9 @@ img {
|
|||
}
|
||||
|
||||
#search {
|
||||
width: 28px;
|
||||
height: 28px;
|
||||
margin-left: 25px;
|
||||
width: 24px;
|
||||
height: 24px;
|
||||
margin-left: 15px;
|
||||
}
|
||||
|
||||
.product ul.more li {
|
||||
|
|
@ -87,6 +87,25 @@ img {
|
|||
top: 30px;
|
||||
}
|
||||
}
|
||||
.product .img-bloc {
|
||||
position: relative;
|
||||
|
||||
&::after {
|
||||
content: "";
|
||||
display: none;
|
||||
background-image: url(~@/images/picto_halal.png);
|
||||
background-size: contain;
|
||||
background-repeat: no-repeat;
|
||||
position: absolute;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
width: 25%;
|
||||
height: 25%;
|
||||
}
|
||||
&.view-halal::after {
|
||||
display: block;
|
||||
}
|
||||
}
|
||||
ul.more {
|
||||
margin-top: 50px;
|
||||
|
||||
|
|
@ -122,9 +141,13 @@ ul.more {
|
|||
|
||||
ul.infos {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
|
||||
li {
|
||||
justify-content: center;
|
||||
width: 110px;
|
||||
padding: 10px;
|
||||
text-align: center;
|
||||
color: $color-blue;
|
||||
font-family: $fontbarlow-bold;
|
||||
|
|
@ -157,7 +180,19 @@ ul.infos {
|
|||
}
|
||||
}
|
||||
|
||||
@media screen and (min-width: 480px) {
|
||||
ul.infos {
|
||||
flex-direction: row;
|
||||
align-items: initial;
|
||||
}
|
||||
}
|
||||
|
||||
@media screen and (min-width: 800px) {
|
||||
#search {
|
||||
width: 28px;
|
||||
height: 28px;
|
||||
margin-left: 25px;
|
||||
}
|
||||
main {
|
||||
padding-top: 100px;
|
||||
}
|
||||
|
|
|
|||
13
resources/sass/frontend/_header.scss
vendored
13
resources/sass/frontend/_header.scss
vendored
|
|
@ -55,6 +55,9 @@
|
|||
&:hover {
|
||||
color: $color-second;
|
||||
}
|
||||
&.menu__item--current {
|
||||
color: $color-second;
|
||||
}
|
||||
}
|
||||
|
||||
.traduction {
|
||||
|
|
@ -62,6 +65,7 @@
|
|||
li {
|
||||
margin-right: 15px;
|
||||
a {
|
||||
font-size: 14px;
|
||||
color: $color-blue;
|
||||
text-transform: uppercase;
|
||||
text-decoration: none;
|
||||
|
|
@ -74,10 +78,19 @@
|
|||
}
|
||||
}
|
||||
}
|
||||
&.blue-bg .traduction li a {
|
||||
color: $color-main;
|
||||
}
|
||||
&.blue-bg .traduction li.current a {
|
||||
color: $color-second;
|
||||
}
|
||||
}
|
||||
|
||||
@media screen and (min-width: 800px) {
|
||||
.site-header {
|
||||
.traduction li a {
|
||||
font-size: 18px;
|
||||
}
|
||||
.wrapper {
|
||||
justify-content: space-between;
|
||||
height: 100px;
|
||||
|
|
|
|||
11
resources/sass/frontend/_layout.scss
vendored
11
resources/sass/frontend/_layout.scss
vendored
|
|
@ -8,8 +8,15 @@
|
|||
}
|
||||
}
|
||||
.container {
|
||||
padding-top: 60px;
|
||||
padding-bottom: 60px;
|
||||
padding-top: 30px;
|
||||
padding-bottom: 30px;
|
||||
}
|
||||
|
||||
@media screen and (min-width: 768px) {
|
||||
.container {
|
||||
padding-top: 60px;
|
||||
padding-bottom: 60px;
|
||||
}
|
||||
}
|
||||
|
||||
@media screen and (min-width: 1200px) {
|
||||
|
|
|
|||
11
resources/sass/frontend/_list.scss
vendored
11
resources/sass/frontend/_list.scss
vendored
|
|
@ -2,7 +2,7 @@
|
|||
.gamme-card {
|
||||
display: flex;
|
||||
position: relative;
|
||||
height: 375px;
|
||||
height: 300px;
|
||||
margin-bottom: 20px;
|
||||
overflow: hidden;
|
||||
> img {
|
||||
|
|
@ -27,6 +27,9 @@
|
|||
transition: bottom 0.4s;
|
||||
}
|
||||
}
|
||||
.product-card > img {
|
||||
object-fit: contain;
|
||||
}
|
||||
.product-card {
|
||||
.product-card__title,
|
||||
a {
|
||||
|
|
@ -72,6 +75,7 @@
|
|||
color: $color-light;
|
||||
font-size: 30px;
|
||||
font-family: $fontbarlow-bold;
|
||||
padding-bottom: 50px;
|
||||
}
|
||||
}
|
||||
&:hover .overlay {
|
||||
|
|
@ -85,7 +89,7 @@
|
|||
}
|
||||
.title {
|
||||
color: $color-light;
|
||||
font-size: calc(#{$globalfont} * 3.25);
|
||||
font-size: calc(#{$globalfont} * 2);
|
||||
}
|
||||
.is-flex {
|
||||
margin-bottom: 60px;
|
||||
|
|
@ -261,6 +265,9 @@
|
|||
}
|
||||
|
||||
@media (min-width: 769px) {
|
||||
#list .title {
|
||||
font-size: calc(#{$globalfont} * 3.25);
|
||||
}
|
||||
.product-card {
|
||||
width: 32%;
|
||||
max-width: 32%;
|
||||
|
|
|
|||
16
resources/sass/frontend/_texts.scss
vendored
16
resources/sass/frontend/_texts.scss
vendored
|
|
@ -3,7 +3,8 @@ p {
|
|||
}
|
||||
|
||||
h1,
|
||||
.page-subtitle {
|
||||
.page-subtitle,
|
||||
.header-title {
|
||||
margin-bottom: 25px;
|
||||
}
|
||||
|
||||
|
|
@ -19,7 +20,8 @@ h1,
|
|||
font-size: 38px;
|
||||
}
|
||||
|
||||
h1:not(.maintitle):after,
|
||||
// h1:not(.maintitle):after,
|
||||
.header-title:after,
|
||||
.sectiontitle:after,
|
||||
.page-subtitle:after {
|
||||
content: "";
|
||||
|
|
@ -33,6 +35,9 @@ h1:not(.maintitle):after,
|
|||
margin-right: auto;
|
||||
background-color: $color-main;
|
||||
}
|
||||
.header-title h1 {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
h1.blue-line:not(.maintitle):after,
|
||||
.sectiontitle.blue-line:after,
|
||||
.page-subtitle.blue-line:after {
|
||||
|
|
@ -62,6 +67,7 @@ h1:not(.maintitle) {
|
|||
|
||||
.mascotte:before {
|
||||
content: url(~@/images/coq.png);
|
||||
display: none;
|
||||
position: absolute;
|
||||
left: -450px;
|
||||
bottom: 0;
|
||||
|
|
@ -89,7 +95,11 @@ h3 {
|
|||
h3.product-card__title {
|
||||
font-family: $fontcocon-regular;
|
||||
}
|
||||
|
||||
@media screen and (min-width: 1024px) {
|
||||
.mascotte:before {
|
||||
display: block;
|
||||
}
|
||||
}
|
||||
@media screen and (min-width: 800px) {
|
||||
h1:not(.title_page),
|
||||
.page-subtitle,
|
||||
|
|
|
|||
5
resources/sass/frontend/_utils.scss
vendored
5
resources/sass/frontend/_utils.scss
vendored
|
|
@ -39,6 +39,9 @@
|
|||
&.space-between {
|
||||
justify-content: space-between;
|
||||
}
|
||||
&.flex-center {
|
||||
justify-content: center;
|
||||
}
|
||||
&.flex-col {
|
||||
flex-direction: column;
|
||||
}
|
||||
|
|
@ -105,7 +108,7 @@
|
|||
}
|
||||
}
|
||||
|
||||
@media screen and (max-width: 799px) {
|
||||
@media screen and (max-width: 1024px) {
|
||||
.is-flex {
|
||||
flex-direction: column;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -34,7 +34,7 @@
|
|||
</div>
|
||||
<?php if(!$encart->page->equals(Page::marqueHeader())) { ?>
|
||||
<div class="form-group">
|
||||
<label for="picture">{{ __('Image') }} <small class="text-muted">- JPEG/PNG, 2Mo max. Dimensions {{ Config::get('bo.encart_image_maxwidth') }} px par {{ Config::get('bo.encart_image_maxheight') }} px</small></label></br>
|
||||
<label for="picture">{{ __('Image') }} <small class="text-muted">- JPEG/PNG, 2Mo max.</small></label></br>
|
||||
<input type="file" id="picture" name="picture" accept="image/png, image/jpeg">
|
||||
@if (!empty($encart->picture))
|
||||
<br />
|
||||
|
|
|
|||
|
|
@ -29,8 +29,8 @@
|
|||
{{-- BLOC 1 - ENCART DE PRESENTATION --}}
|
||||
<section class="container">
|
||||
<div class="wrapper">
|
||||
<div class="header-title align-center animate__animated fadeInUp animate__slow">
|
||||
<h1 class="align-center"><i class="mascotte"></i>{{ $encart_marqueHeader->title}}</h1>
|
||||
<div class="header-title align-center p-rel">
|
||||
<h1 class="align-center animate__animated fadeInUp animate__slow"><i class="mascotte"></i>{{ $encart_marqueHeader->title}}</h1>
|
||||
</div>
|
||||
<h2 class="align-center">{{ $encart_marqueHeader->subtitle}}</h2>
|
||||
<span class="align-center">{!! $encart_marqueHeader->text !!}</span>
|
||||
|
|
@ -55,7 +55,9 @@
|
|||
{{-- BLOC 2 - NOS VALEURS --}}
|
||||
<section id="values" class="container">
|
||||
<div class="values-content wrapper align-center">
|
||||
<h2 class="sectiontitle animate__animated fadeInUp animate__slow">{{ $title_marqueBloc2->title}}</h2>
|
||||
<div class="header-title sectiontitle align-center p-rel">
|
||||
<h2 class="punchline-module__title animate__animated fadeInUp animate__slow">{{ $title_marqueBloc2->title}}</h2>
|
||||
</div>
|
||||
<p>{{ $title_marqueBloc2->text}}</p>
|
||||
<ul class="values-list">
|
||||
@foreach ($pictos_marqueBloc2 as $picto)
|
||||
|
|
@ -73,8 +75,9 @@
|
|||
<section class="container">
|
||||
<span id="notre-histoire" class="offset-anchor"></span>
|
||||
<div class="wrapper">
|
||||
<h2 class="sectiontitle align-center animate__animated fadeInUp animate__slow">{{ __('Notre Histoire') }}</h2>
|
||||
|
||||
<div class="header-title sectiontitle align-center p-rel">
|
||||
<h2 class="punchline-module__title align-center animate__animated fadeInUp animate__slow">{{ __('Notre Histoire') }}</h2>
|
||||
</div>
|
||||
<div class="timeline">
|
||||
<div id="frise-autoscroll">
|
||||
<div class="img-frise">
|
||||
|
|
@ -160,7 +163,9 @@
|
|||
{{-- BLOC 4 - NOS ENGAGEMENTS --}}
|
||||
<section class="container">
|
||||
<div class="wrapper">
|
||||
<h2 class="sectiontitle align-center has-label-bis desk-mb-80 animate__animated fadeInUp animate__slow">{{ $title_marqueBloc4->title}}</h2>
|
||||
<div class="header-title sectiontitle align-center p-rel desk-mt50 desk-mb-50">
|
||||
<h2 class="punchline-module__title align-center has-label-bis animate__animated fadeInUp animate__slow">{{ $title_marqueBloc4->title}}</h2>
|
||||
</div>
|
||||
<div class="is-flex">
|
||||
<div class="w50 smrt-mb-100">
|
||||
<img src="{{ asset($encart_marqueBloc4l->picture) }}" alt="{{ $encart_marqueBloc4l->alt_text_picture}}" class="animate__animated fadeInLeft animate__slow">
|
||||
|
|
@ -182,7 +187,9 @@
|
|||
{{-- BLOC 5 - BAS DE PAGE --}}
|
||||
<section class="container">
|
||||
<div class="wrapper">
|
||||
<h2 class="sectiontitle align-center animate__animated fadeInUp animate__slow">{{ $encart_marqueFooter->title}}</h2>
|
||||
<div class="header-title sectiontitle align-center p-rel desk-mb-50">
|
||||
<h2 class="punchline-module__title align-center animate__animated fadeInUp animate__slow">{{ $encart_marqueFooter->title}}</h2>
|
||||
</div>
|
||||
<div class="is-flex">
|
||||
<div class="w50 animate__animated fadeInLeft animate__slow">
|
||||
<h3 class="color-yellow">{{ $encart_marqueFooter->subtitle}}</h3>
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@
|
|||
|
||||
<div class="blue">
|
||||
<section class="jumbotron">
|
||||
<h1 class="maintitle ttu animate__animated fadeIn animate__slow">{{ __('Food service') }}</h1>
|
||||
<p class="maintitle ttu animate__animated fadeIn animate__slow">{{ __('Food service') }}</p>
|
||||
<img class="img-zoom" src="{{ asset('assets/images/entete_food.jpg') }}" alt="Cuisine de chef">
|
||||
<div class="banner">
|
||||
<svg id="Calque_1" data-name="Calque 1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1919.76 59.99">
|
||||
|
|
@ -49,7 +49,9 @@
|
|||
|
||||
<section id="values" class="container">
|
||||
<div class="values-content wrapper align-center">
|
||||
<h2 class="sectiontitle animate__animated fadeInUp animate__slow white-line">{{ $title_foodBloc2->title}}</h2>
|
||||
<div class="header-title align-center p-rel sectiontitle white-line">
|
||||
<h2 class="punchline-module__title animate__animated fadeInUp animate__slow">{{ $title_foodBloc2->title}}</h2>
|
||||
</div>
|
||||
<p class="align-justify">{{ $title_foodBloc2->text}}</p>
|
||||
<ul class="values-list">
|
||||
@foreach ($pictos_food as $picto)
|
||||
|
|
@ -63,13 +65,15 @@
|
|||
<img src="{{ asset('assets/images/frise-blue.jpg') }}" alt="Frise">
|
||||
</section>
|
||||
|
||||
<section class="container">
|
||||
<section id="product-food" class="container">
|
||||
@if($products_food->count() > 0)
|
||||
<div class="wrapper">
|
||||
<h2 class="sectiontitle align-center animate__animated fadeInUp animate__slow blue-line">{{ __('Les produits') }}</h2>
|
||||
<div class="header-title sectiontitle align-center p-rel">
|
||||
<h2 class="punchline-module__title align-center animate__animated fadeInUp animate__slow blue-line">{{ __('Les produits') }}</h2>
|
||||
</div>
|
||||
<p class="align-center">{{ __('Nous travaillons toujours pour améliorer nos recettes et proposer des produits de meilleur qualité') }}</p>
|
||||
|
||||
<div class="blue-products is-flex wrap space-between desk-mt50">
|
||||
<div class="blue-products is-flex wrap flex-center desk-mt50">
|
||||
@foreach ($products_food as $product)
|
||||
<div class="product-card align-center">
|
||||
<img src="{{ asset($product->picture) }}" alt="{{ $product->alt_text_picture}}">
|
||||
|
|
|
|||
|
|
@ -68,7 +68,7 @@
|
|||
<div class="sectiontitle">
|
||||
<h2 class="animate__animated fadeInUp animate__slow">{{ __("Poulet, Cordon bleu ou Wing's ?") }}</h2>
|
||||
</div>
|
||||
<h3 class="h2 align-left">
|
||||
<h3 class="h2 animate__animated fadeInUp animate__slow">
|
||||
{{ __('Découvrez tous nos produits à base de volaille.') }}
|
||||
</h3>
|
||||
<p class="align-left">{{ __('home.products.text')}}</p>
|
||||
|
|
@ -77,7 +77,9 @@
|
|||
<div class="products-list is-flex">
|
||||
@foreach ($products_home as $product)
|
||||
<div class="product-item">
|
||||
<img src="{{ asset($product->picture) }}" alt="{{ $product->alt_text_picture}}" />
|
||||
<a href="{{ route($routeprefixer . 'product.show', ['gammeSlug' => $product->gamme->slug , 'productSlug' => $product->slug]) }}">
|
||||
<img src="{{ asset($product->picture) }}" alt="{{ $product->alt_text_picture}}" />
|
||||
</a>
|
||||
</div>
|
||||
@endforeach
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -28,8 +28,8 @@
|
|||
|
||||
<div class="container">
|
||||
<div class="wrapper">
|
||||
<div class="header-title align-center animate__animated fadeInUp animate__slow">
|
||||
<h1 class="align-center"><i class="mascotte"></i>Nos conseils ...</h1>
|
||||
<div class="header-title align-center p-rel">
|
||||
<h1 class="align-center animate__animated fadeInDown animate__slow"><i class="mascotte"></i>Nos conseils ...</h1>
|
||||
</div>
|
||||
<div class="is-flex desk-mt50">
|
||||
<div class="w100 has-chicken-path animate__animated fadeInLeft animate__slow">
|
||||
|
|
@ -81,7 +81,9 @@
|
|||
|
||||
<div id="posts" class="container">
|
||||
<div class="posts-content wrapper">
|
||||
<h2 class="sectiontitle align-center animate__animated fadeInUp animate__slow">{{ $title_newsPosts->title}}</h2>
|
||||
<div class="sectiontitle align-center p-rel">
|
||||
<h2 class="align-center punchline-module__title animate__animated fadeInUp animate__slow">{{ $title_newsPosts->title}}</h2>
|
||||
</div>
|
||||
<h3 class="h2 align-center">{{ $title_newsPosts->text}}</h3>
|
||||
<div class="posts-list is-flex">
|
||||
@foreach ($posts as $post)
|
||||
|
|
@ -97,7 +99,9 @@
|
|||
</div>
|
||||
|
||||
<div class="wrapper align-center">
|
||||
<h2 class="sectiontitle align-center animate__animated fadeInUp animate__slow">Nos nouveautés</h2>
|
||||
<div class="header-title sectiontitle align-center p-rel">
|
||||
<h2 class="align-center punchline-module__title animate__animated fadeInUp animate__slow">Nos nouveautés</h2>
|
||||
</div>
|
||||
<p class="h2">Nous travaillons toujours pour améliorer nos recettes et proposer des produits de meilleure qualité</p>
|
||||
|
||||
<div id="carrousel2">
|
||||
|
|
|
|||
|
|
@ -5,8 +5,7 @@
|
|||
@section('content')
|
||||
|
||||
<section class="jumbotron">
|
||||
<p class="maintitle ttu animate__animated fadeIn animate__slow">{{ $gamme->title}}
|
||||
</p>
|
||||
<p class="maintitle ttu animate__animated fadeIn animate__slow">{{ $gamme->title}}</p>
|
||||
<img class="img-zoom" src="{{ asset($gamme->banner) }}" alt="{{ $gamme->alt_text_banner }}">
|
||||
{{-- <img class="img-zoom" src="{{ asset('assets/images/volailles.jpg') }}" alt=""> --}}
|
||||
<div class="banner">
|
||||
|
|
@ -39,10 +38,12 @@
|
|||
</div>
|
||||
<div class="is-flex mt-5">
|
||||
<div class="w50 align-center">
|
||||
<img src="{{ asset($product->picture) }}" alt="{{ $product->alt_text_picture }}" class="animate__animated fadeInLeft animate__slow">
|
||||
@php
|
||||
$pictos = json_decode($product->pictos);
|
||||
@endphp
|
||||
<div class="img-bloc animate__animated fadeInLeft animate__slow @if ($product->is_halal) view-halal @endif">
|
||||
<img src="{{ asset($product->picture) }}" alt="{{ $product->alt_text_picture }}">
|
||||
</div>
|
||||
@if (isset($pictos))
|
||||
<ul class="infos animate__animated fadeInLeft animate__slow">
|
||||
@foreach ($pictos as $picto)
|
||||
|
|
|
|||
|
|
@ -14,8 +14,8 @@
|
|||
<div class="menu-overlay__icon"></div>
|
||||
</label>
|
||||
<ul class="menu__list">
|
||||
<a href="{{ route($routeprefixer . 'wasup') }}" class="scroller menu__link">
|
||||
<li class="menu__item menu__item--current">
|
||||
<a href="{{ route($routeprefixer . 'wasup') }}" class="scroller menu__link @if (Route::current()->getName() == 'wasup') menu__item--current @endif">
|
||||
<li class="menu__item">
|
||||
{{ __('Marque') }}
|
||||
</li>
|
||||
<svg id="menu_arrow" data-name="Calque 1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 12 19">
|
||||
|
|
@ -34,7 +34,7 @@
|
|||
<path class="cnt" d="M.85,16.34,7.34,9.17.82,2.07C4.21.91,5.86,2.13,11,9.15,5.8,16.53,3.87,18,.85,16.34Z" />
|
||||
</svg>
|
||||
</a>
|
||||
<a href="{{ route($routeprefixer . 'gammes.index') }}" class="scroller menu__link">
|
||||
<a href="{{ route($routeprefixer . 'gammes.index') }}" class="scroller menu__link @if (Route::current()->getName() == 'gammes.index') menu__item--current @endif">
|
||||
<li class="menu__item">
|
||||
{{ __('Produits') }}
|
||||
</li>
|
||||
|
|
@ -54,7 +54,7 @@
|
|||
<path class="cnt" d="M.85,16.34,7.34,9.17.82,2.07C4.21.91,5.86,2.13,11,9.15,5.8,16.53,3.87,18,.85,16.34Z" />
|
||||
</svg>
|
||||
</a>
|
||||
<a href="{{ route($routeprefixer . 'news') }}" class="scroller menu__link">
|
||||
<a href="{{ route($routeprefixer . 'news') }}" class="scroller menu__link @if (Route::current()->getName() == 'news') menu__item--current @endif">
|
||||
<li class="menu__item">
|
||||
{{ __('Actualités') }}
|
||||
</li>
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue