{% extends 'base.html.twig' %}{% block title %} {{ boutique.nom }} | {{ parent() }}{% endblock title %}{% block stylesheets %} {{ parent() }} {% if boutique.estPro %} {% if boutique.coverPhoto is not null %} <style> /* The hero image */ .hero-image { background-image: url("{{ boutique.coverPhoto.url }}"); /* Set a specific height */ height: 300px; /* Position and center the image to scale nicely on all screens */ background-position: center; background-repeat: no-repeat; background-size: cover; position: relative; z-index: -1000; } /* Place text in the middle of the image */ .hero-text { text-align: center; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); color: white; } .centre-principal{ margin: auto; width: 70%; } @media only screen and (max-width: 600px) { .centre-principal{ margin: auto; width: 100% } } </style> {% endif %} {% endif %}{% endblock stylesheets %}{% block contenu_propre %}<br/> <div class="centre-principal"> <div class="container py-4"> <div class="row"> <div class="col-md-12"> {% for message in app.flashes('success') %} <div class="alert alert-success"> {{ message }} </div> {% endfor %} <div class="container-fluid"> <div class="row"> <div class="col"> <div class="hero-image"> </div> </div> </div> <div class="row"> <div class="assie-card shadow"> <div class="assie-card-body"> <div class="container"> <div class="row"> <div class="col-md-2"> <img class="img-fluid" src="{{ asset(boutique.logo.url) }}" style="width: 100%; border-radius: 50% 50%; height:auto;"/> </div> <div class="col-md-8"> <h3>{{ boutique.nom }} {% if boutique.estCertifie %} <i class="bi bi-check-circle-fill success" data-toggle="tooltip" title="{{ 'entreprise.certified_profile' | trans }}"></i> {% endif %} </h3> <div> <h4 class=""> {% for i in range(1, 5) %} {% if i <= boutique.moyenneAvis %} <i class="bi bi-star-fill jaune-or"></i> {% else %} <i class="bi bi-star jaune-or"></i> {% endif %} {% endfor %} <strong>({{ boutique.nombreAvis }} {{ 'entreprise.review_and_recommandation' | trans }})</strong> </h4> <p> {#<span class="btn btn-warning rounded-pill btn-lg">{{ 'entreprise.share' | trans }}</span> #} {% if dejaEnregistre == false %} <a href="{{ path('save_entreprise', {'slug': boutique.slug}) }}" class="btn btn-warning rounded-pill">{{ 'entreprise.ajouter_aux_favoris' | trans }}</a> {% else %} <span class="btn btn-success rounded-pill">{{ 'entreprise.dans_vos_favoris' | trans }}<i class="bi bi-check"></i></a> {% endif %} </p> </div> </div> <div class="col-md-3"> </div> <div class="col-md-1"> </div> </div> </div> </div> </div> </div> <br/> <br/> <div class="row"> <div class="col"> {% if cestMaBoutique == false %} <span class="btn btn-secondary rounded-pill" data-bs-toggle="modal" data-bs-target="#exampleModal"> {{ 'entreprise.request_quote' | trans }}</span> {% endif %} <div class="modal fade" id="exampleModal" tabindex="-1" aria-labelledby="exampleModalLabel" aria-hidden="true"> <div class="modal-dialog"> <form action="{{ path('nouveau_devis', {'fromABoutique': true, 'boutique': boutique.id}) }}" class="forms-sample" method="POST"> <div class="modal-content"> <div class="modal-header"> <h5 class="modal-title" id="exampleModalLabel">{{ 'entreprise.request_quote' | trans }}</h5> <button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button> </div> <div class="modal-body"> {{ render(controller('App\\Controller\\EntrepriseController::nouveauDevisAction', {'fromABoutique': true, 'boutique': boutique.id})) }} </div> <div class="modal-footer"> <button type="button" class="btn btn-secondary" data-bs-dismiss="modal">{{ 'admin.close' | trans }}</button> <button type="submit" class="btn btn-primary">{{ 'admin.save' | trans }}</button> </div> </div> </form> </div> </div> {# Fin modal devis#} </div> <div class="col"> {% if cestMaBoutique == false %} <span class="btn btn-secondary rounded-pill" data-bs-toggle="modal" data-bs-target="#claimPageModal"> {{ 'entreprise.claim_page' | trans }}</span> {% endif %} <div class="modal fade" id="claimPageModal" tabindex="-1" aria-labelledby="claimPageModalLabel" aria-hidden="true"> <div class="modal-dialog"> <div class="modal-content"> <div class="modal-header"> <h5 class="modal-title" id="claimPageModalLabel">{{ 'entreprise.claim_page' | trans }}</h5> <button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button> </div> <div class="modal-body"> <p> {{ 'entreprise.claim_page_warning' | trans }} </p> </div> <div class="modal-footer"> <button type="button" class="btn btn-secondary" data-bs-dismiss="modal">{{ 'admin.close' | trans }}</button> <a href="{{ path('reclamer_page', {'slug': boutique.slug}) }}" class="btn btn-primary">{{ 'entreprise.claim_page' | trans }}</a> </div> </div> </div> </div> </div> </div> <br/> <br/> {% if boutique.estPro %} <div class="row"> <div class="col-md-5"> </div> </div> {% endif %} <div class="row"> </div> <br/> <br/> <div class="row"> <div class="col-md-12"> <div class="assie-card shadow"> <div class="assie-card-body"> <section id="portfolio" class="portfolio"> <div class="container" data-aos="fade-up"> <header class="section-header"> <h2>{{ 'admin.products' | trans }}</h2> </header> <div class="row" data-aos="fade-up" data-aos-delay="100"> <div class="col-lg-12 d-flex justify-content-center"> <ul id="portfolio-flters"> <li data-filter="*" class="filter-active">All</li> </ul> </div> </div> <div class="row gy-4 portfolio-container" data-aos="fade-up" data-aos-delay="200"> {% for produit in produits %} <div class="col-lg-4 col-md-6 portfolio-item filter-web"> <div class="portfolio-wrap"> {% if produit.imagePrincipale is not null %} <img class="img-fluid" src=" {{ produit.imagePrincipale.url }}" alt="{{ produit.nom }}" /> {% endif %} <div class="portfolio-links"> {% if produit.imagePrincipale is not null %} <a href="{{ produit.imagePrincipale.url }}" data-gallery="portfolioGallery" class="portfolio-lightbox" title="{{ produit.nom }}"><i class="bi bi-plus"></i></a> {% endif %} {#<a href="portfolio-details.html" title="More Details"><i class="bi bi-link"></i></a>#} </div> <div class="portfolio-info"> <h4>{{ produit.nom }}</h4> </div> </div> </div> {% endfor %} </div> </div> </section><!-- End Portfolio Section --> </div> </div> </div> </div> <br/> <br/> <div class="row"> <div class="col-md-6"> <div class="assie-card shadow"> <div class="assie-card-body"> <h3>{{ 'entreprise.about' | trans }}</h3> <hr/> <p> {{ boutique.description | raw }} </p> <br/> <h5><i class="bi bi-person-raised-hand"></i> Disponibilité: {{ boutique.disponibilite }}</h5><br/> <h5><i class="bi bi-cash"></i> Main d'oeuvre: {{ boutique.mainDOeuvre }}</h5><br/> <h5><i class="bi bi-geo-alt"></i> Zone d'intervention: {{ boutique.zoneDIntervention }}</h5> </div> </div> </div> <div class="col-md-6"> <div class="assie-card shadow"> <div class="assie-card-body"> <h3>{{ 'entreprise.contact_information' | trans }}</h3> <hr/> <p> <span class="btn btn-lg btn-ouline-light"><i class="bi bi-geo-alt"></i></span> {{ boutique.adresse }} </p> <p> <span class="btn btn-lg btn-ouline-light"><i class="bi bi-globe"></i></span> {{ boutique.siteweb }} </p> <p> <span class="btn btn-lg btn-ouline-light"><i class="bi bi-telephone"></i></span> {{ boutique.phone }} </p> <p> {% if cestMaBoutique == false %} <span class="btn btn-lg btn-danger btnScroller" title="message" data-bs-toggle="modal" data-bs-target="#messageModal"><i class="bi bi-chat-fill"></i> {{ 'entreprise.send_message' | trans }}</span> <div class="modal fade" id="messageModal" tabindex="-1" aria-labelledby="messageModalLabel" aria-hidden="true"> <div class="modal-dialog"> <div class="modal-content"> <div class="modal-header"> <h5 class="modal-title" id="messageModalLabel">{{ 'entreprise.message' | trans }}</h5> <button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button> </div> <div class="modal-body"> {{ render(controller('App\\Controller\\EntrepriseController::envoyerMessageAction', {'slug': boutique.slug})) }} </div> </div> </div> </div> <span class="btn btn-lg btn-warning btnScroller" title="review" data-bs-toggle="modal" data-bs-target="#leaveReviewModal"><i class="bi bi-star-fill"></i> {{ 'entreprise.leave_review' | trans }}</span> <div class="modal fade" id="leaveReviewModal" tabindex="-1" aria-labelledby="leaveReviewModalLabel" aria-hidden="true"> <div class="modal-dialog"> <div class="modal-content"> <div class="modal-header"> <h5 class="modal-title" id="leaveReviewModalLabel">{{ 'entreprise.leave_review' | trans }}</h5> <button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button> </div> <div class="modal-body"> {{ render(controller('App\\Controller\\EntrepriseController::donnerAvisAction', {'slug': boutique.slug})) }} </div> </div> </div> </div> {% endif %} </p> </div> </div> </div> </div> <br/> <br/> <div class="row"> <div class="col-md-12"> <div class="assie-card shadow"> <div class="assie-card-body"> <h3>{{ 'gestion.introduction_video' | trans }}</h3> <p> {% if boutique.estPro %} {% if boutique.videoPresentation is not null %} <video> <video width="320" height="240" controls> <source src="{{ boutique.videoPresentation.url }}" > Your browser does not support the video tag. </video> </video> {% endif %} {% endif %} </p> </div> </div> </div> </div> <br/> <br/> {% if cestMaBoutique == false %} <br/> <br/> {% endif %} <div class="row"> <div class="col-md-10"> <div class="assie-card bg-light"> <div class="assie-card-body"> <strong>{{ 'entreprise.verified_reviews' | trans }} ({{ nombreAvis }})</strong> </div> </div> </div> </div> <br/> <div class="row"> <div class="col-md-4"> <div class="assie-card bg-light"> <div class="assie-card-body"> <h2 class="jaune-or text-center"><strong>{{ boutique.moyenneAvis }}/5</strong></h2> <h2 class="text-center"> {% for i in range(1, 5) %} {% if i <= boutique.moyenneAvis %} <i class="bi bi-star-fill jaune-or"></i> {% else %} <i class="bi bi-star jaune-or"></i> {% endif %} {% endfor %} </h2> <p class="text-center"><strong>{{ nombreAvis }} {{ 'entreprise.verified_reviews' | trans }}</strong></p> </div> </div> </div> <div class="col-md-1"> <p><strong>5</strong> <i class="bi bi-star-fill jaune-or"></i> ({{ cinqEtoiles.nombre }})</p> <p><strong>4</strong> <i class="bi bi-star-fill jaune-or"></i> ({{ quatreEtoiles.nombre }})</p> <p><strong>3</strong> <i class="bi bi-star-fill jaune-or"></i> ({{ troisEtoiles.nombre }})</p> <p><strong>2</strong> <i class="bi bi-star-fill jaune-or"></i> ({{ deuxEtoiles.nombre }})</p> <p><strong>1</strong> <i class="bi bi-star-fill jaune-or"></i> ({{ uneEtoiles.nombre }})</p> </div> <div class="col-md-5"> <p> <div class="progress"> <div class="progress-bar" role="progressbar" style="width: {{ cinqEtoiles.moyenne }}%; background: #F9C852;" aria-valuenow="{{ cinqEtoiles.moyenne }}" aria-valuemin="0" aria-valuemax="100"></div> </div> </p> <p> <div class="progress"> <div class="progress-bar" role="progressbar" style="width: {{ quatreEtoiles.moyenne }}%; background: #F9C852;" aria-valuenow="{{ quatreEtoiles.moyenne }}" aria-valuemin="0" aria-valuemax="100"></div> </div> </p> <p> <div class="progress"> <div class="progress-bar" role="progressbar" style="width: {{ troisEtoiles.moyenne }}%; background: #F9C852;" aria-valuenow="{{ troisEtoiles.moyenne }}" aria-valuemin="0" aria-valuemax="100"></div> </div> </p> <p> <div class="progress"> <div class="progress-bar" role="progressbar" style="width: {{ deuxEtoiles.moyenne }}%; background: #F9C852;" aria-valuenow="{{ deuxEtoiles.moyenne }}" aria-valuemin="0" aria-valuemax="100"></div> </div> </p> <p> <div class="progress"> <div class="progress-bar" role="progressbar" style="width: {{ uneEtoiles.moyenne }}%; background: #F9C852;" aria-valuenow="{{ uneEtoiles.moyenne }}" aria-valuemin="0" aria-valuemax="100"></div> </div> </p> </div> </div> <br/> {% for avisUtilisateur in avisUtilisateurs %} <div class="row"> <div class="col-md-12"> <div class="assie-card"> <div class="assie-card-body"> <div class="row"> <div class="col-md-2"> <img src="{{ asset(avisUtilisateur.user.avatar.url) }} " alt="Profile" class="rounded-circle" style="max-height: 96px; max-width: 96px;"> </div> <div class="col-md-6"> <h3>{{ avisUtilisateur.user.username }} {% if avisUtilisateur.user.estEmbassadeur %} <i class="bi bi-star-fill jaune-or" data-toggle="tooltip" title="{{ 'entreprise.assie_embassy' | trans }}"></i> {% endif %}</h3> {% for i in range(1, 5) %} {% if i <= avisUtilisateur.valeurAvis %} <i class="bi bi-star-fill"></i> {% else %} <i class="bi bi-star"></i> {% endif %} {% endfor %} {{ avisUtilisateur.laDate | date('d/m/Y') }} <br/> <p>{{ avisUtilisateur.contenu }}</p> </div> <div class="col-md-2"> <br/> <br/> <div class="text-center"> <a href="{{ path('avis_inutile', {'id': avisUtilisateur.id}) }}" class="btn btn-warning" data-toggle="tooltip" title="{{ 'gestion.useless_review' | trans }}"><i class="bi bi-hand-thumbs-down-fill"></i></a> <a href="{{ path('avis_utile', {'id': avisUtilisateur.id}) }}" class="btn btn-success" data-toggle="tooltip" title="{{ 'gestion.usefull_review' | trans }}"><i class="bi bi-hand-thumbs-up-fill"></i></a> <a href="{{ path('signaler_avis', {'id': avisUtilisateur.id}) }}" class="btn btn-danger" data-toggle="tooltip" title="{{ 'gestion.flag' | trans }}"><i class="bi bi-flag-fill"></i></a> </div> </div> </div> </div> </div> </div> </div> <br/> {% endfor %} </div> </div> <div class="col-md-3"> <a href="" class=""> <h5></h5> </a> </div> </div> <br/> </div> </div>{% endblock contenu_propre %}{% block javascripts %} {{ parent() }} <script type="text/javascript"> $(function(){ var $btnScroller = $('.btnScroller'); $btnScroller.click(function(){ var $id = $(this).attr('title'); var $theTop = $('#'+$id).offset().top - $(this).offset().top + $(this).scrollTop(); $('html, body').animate({ scrollTop: $theTop }, 1000, 'linear', function(){ console.log($theTop); }) }); }); </script>{% endblock javascripts %}