first commit
This commit is contained in:
192
templates/frontend/article_service/article_detail.html.twig
Normal file
192
templates/frontend/article_service/article_detail.html.twig
Normal file
@@ -0,0 +1,192 @@
|
||||
{% extends 'base_frontend.html.twig' %}
|
||||
|
||||
{% block title %} Détail Article {% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<!-- ============================================== HEADER : END ============================================== -->
|
||||
<div class="breadcrumb">
|
||||
<div class="breadcrumb-inner">
|
||||
<ul class="list-inline list-unstyled">
|
||||
<li><a href="{{ path('frontend_home_index') }}">Accueil</a></li>
|
||||
<li><a href="{{ path('frontend_article_service_index') }}">Article et Service</a></li>
|
||||
<li class="active">Détail Article</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
{% include 'frontend/basic/alert.html.twig' %}
|
||||
<style>
|
||||
.img-resp{
|
||||
max-width: 402px;
|
||||
max-height: 380px;
|
||||
}
|
||||
</style>
|
||||
|
||||
<!-- /.breadcrumb -->
|
||||
<div class="body-content outer-bottom-xs">
|
||||
<div class='row single-product'>
|
||||
<!-- ============================================== Testimonials: END ============================================== -->
|
||||
<!-- /.sidebar -->
|
||||
<div class="detail-block">
|
||||
<div class="row">
|
||||
<div class="col-xs-12 col-sm-12 col-md-4 col-lg-4 gallery-holder">
|
||||
<div class="product-item-holder size-big single-product-gallery small-gallery">
|
||||
<div id="owl-single-product">
|
||||
<!-- /.single-product-gallery-item -->
|
||||
{% for key,image in article.getAllImage() %}
|
||||
<div class="single-product-gallery-item" id="slide{{key}}">
|
||||
<a data-lightbox="image-{{key}}" data-title="Gallery" href="{{ asset('uploads/images/articles/' ~ image ) }}">
|
||||
<img class="img-responsive img-resp" alt="" src="{{ asset('uploads/images/articles/' ~ image) }}" data-echo="{{ asset('uploads/images/articles/' ~ image ) }}" />
|
||||
</a>
|
||||
</div>
|
||||
{% endfor %}
|
||||
<!-- /.single-product-gallery-item -->
|
||||
</div>
|
||||
<!-- /.single-product-slider -->
|
||||
<div class="single-product-gallery-thumbs gallery-thumbs">
|
||||
<div id="owl-single-product-thumbnails">
|
||||
{% for key,image in article.getAllImage() %}
|
||||
<div class="item {% if key == 1 %} active {% endif %}">
|
||||
<a class="horizontal-thumb" data-target="#owl-single-product" data-slide="{{ key }}" href="#slide{{ key }}">
|
||||
<img class="img-responsive" alt="" src="{{ asset('uploads/images/articles/' ~ image) }}" data-echo="{{ asset('uploads/images/articles/' ~ image) }}" />
|
||||
</a>
|
||||
</div>
|
||||
{% endfor %}
|
||||
</div>
|
||||
<!-- /#owl-single-product-thumbnails -->
|
||||
</div>
|
||||
<!-- /.gallery-thumbs -->
|
||||
</div>
|
||||
<!-- /.single-product-gallery -->
|
||||
</div>
|
||||
<!-- /.gallery-holder -->
|
||||
<div class='col-sm-12 col-md-8 col-lg-8 product-info-block'>
|
||||
<div class="product-info">
|
||||
<h1 class="name">{{ article.getTitre() }}</h1>
|
||||
<div class="rating-reviews m-t-20">
|
||||
<div class="row">
|
||||
<div class="col-lg-12">
|
||||
<div class="pull-left">
|
||||
<div class="rating rateit-small"></div>
|
||||
</div>
|
||||
<div class="pull-left">
|
||||
<div class="reviews">
|
||||
<a href="#" class="lnk">(13 Reviews)</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- /.row -->
|
||||
</div>
|
||||
<!-- /.rating-reviews -->
|
||||
<div class="stock-container info-container m-t-10">
|
||||
<div class="row">
|
||||
<div class="col-lg-12">
|
||||
<div class="pull-left">
|
||||
<div class="stock-box">
|
||||
<span class="label">Exemplaire(s) en Stock: </span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="pull-left">
|
||||
<div class="stock-box">
|
||||
<span class="value">{{ article.getLimitQuantite() }}</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- /.row -->
|
||||
</div>
|
||||
<!-- /.stock-container -->
|
||||
<div class="price-container info-container m-t-30">
|
||||
<div class="row">
|
||||
<div class="col-sm-6 col-xs-6">
|
||||
<div class="price-box">
|
||||
<span class="price">{{ article.getPrixPromo() }} DT</span>
|
||||
<span class="price-strike">{{ article.getPrixMarche() }} DT</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-6 col-xs-6">
|
||||
<div class="favorite-button m-t-5">
|
||||
<a class="btn btn-primary" data-toggle="tooltip" data-placement="right" title="Wishlist" href="#">
|
||||
<i class="fa fa-heart"></i>
|
||||
</a>
|
||||
<a class="btn btn-primary" data-toggle="tooltip" data-placement="right" title="E-mail" href="#">
|
||||
<i class="fa fa-envelope"></i>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- /.row -->
|
||||
</div>
|
||||
<!-- /.price-container -->
|
||||
<div class="quantity-container info-container">
|
||||
<div class="row">
|
||||
<div class="qty">
|
||||
<span class="label">Qty :</span>
|
||||
</div>
|
||||
<div class="qty-count">
|
||||
<div class="cart-quantity">
|
||||
<div class="quant-input">
|
||||
<div class="arrows">
|
||||
<div class="arrow plus gradient" id="qty-asc"><span class="ir"><i class="icon fa fa-sort-asc"></i></span></div>
|
||||
<div class="arrow minus gradient" id="qty-desc"><span class="ir"><i class="icon fa fa-sort-desc"></i></span></div>
|
||||
</div>
|
||||
<input type="text" value="1" id="qty-val">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="add-btn">
|
||||
<button class="btn btn-primary" id="addPanier">
|
||||
<i class="fa fa-shopping-cart inner-right-vs"></i>
|
||||
Ajouter au panier
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
<!-- /.row -->
|
||||
</div>
|
||||
<!-- /.quantity-container -->
|
||||
</div>
|
||||
<!-- /.product-info -->
|
||||
</div>
|
||||
<!-- /.col-sm-7 -->
|
||||
</div>
|
||||
<!-- /.row -->
|
||||
</div>
|
||||
</div>
|
||||
<!-- /.row -->
|
||||
</div>
|
||||
<!-- /.body-content -->
|
||||
|
||||
|
||||
<!-- /.description-container -->
|
||||
<div class="blog-page">
|
||||
<div class="blog-review wow fadeInUp">
|
||||
<div class="row">
|
||||
<div class="col-md-12">
|
||||
<div class="description-container m-t-20">
|
||||
{{ article.getDescription()|raw }}
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<br><br>
|
||||
|
||||
{% set comments = article.getCommentArticles() %}
|
||||
{% include 'frontend/comment/comments.html.twig' %}
|
||||
|
||||
{{ render(controller(
|
||||
'App\\Controller\\Frontend\\CommentController::article_add',
|
||||
{ 'id': article.getId() }
|
||||
)) }}
|
||||
|
||||
{% endblock %}
|
||||
|
||||
{% block javascripts %}
|
||||
<script>
|
||||
var pathAddArticlePanier = "{{ path('frontend_panier_add_article', {id: article.id }) }}";
|
||||
</script>
|
||||
{{ parent() }}
|
||||
{{ encore_entry_script_tags('app_frontend_article_service') }}
|
||||
{% endblock %}
|
||||
59
templates/frontend/article_service/index.html.twig
Normal file
59
templates/frontend/article_service/index.html.twig
Normal file
@@ -0,0 +1,59 @@
|
||||
{% extends 'base_frontend.html.twig' %}
|
||||
|
||||
{% block title %} Article et Service {% endblock %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
<div class="breadcrumb">
|
||||
<div class="breadcrumb-inner">
|
||||
<ul class="list-inline list-unstyled">
|
||||
<li class='active'><a href="#">Article et Service</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="body-content outer-top-vs" id="top-banner-and-menu">
|
||||
|
||||
<div class="wide-banners outer-bottom-vs">
|
||||
|
||||
<div class="row">
|
||||
{% for i in 0..leng %}
|
||||
|
||||
{% if articles[i] is defined %}
|
||||
<div class="col-md-3 col-sm-3">
|
||||
<div class="wide-banner cnt-strip">
|
||||
<a href="{{ path('frontend_article_detail', {id:articles[i].getId()} ) }}">
|
||||
<div class="image">
|
||||
<img class="img-responsive" src="{{ asset('uploads/images/articles/' ~ articles[i].getImageDefault()) }}" alt="{{ articles[i].getTitre() }}">
|
||||
</div>
|
||||
</a>
|
||||
|
||||
</div>
|
||||
<br><br>
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
{% if services[i] is defined %}
|
||||
<div class="col-md-3 col-sm-3">
|
||||
<div class="wide-banner cnt-strip">
|
||||
<a href="{{ path('frontend_service_detail', {id:services[i].getId()} ) }}">
|
||||
<div class="image">
|
||||
<img class="img-responsive" src="{{ asset('uploads/images/services/' ~ services[i].getImageDefault()) }}" alt="{{ services[i].getTitre() }}">
|
||||
</div>
|
||||
</a>
|
||||
|
||||
</div>
|
||||
<br><br>
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
{% endfor %}
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
{% endblock %}
|
||||
|
||||
202
templates/frontend/article_service/service_detail.html.twig
Normal file
202
templates/frontend/article_service/service_detail.html.twig
Normal file
@@ -0,0 +1,202 @@
|
||||
{% extends 'base_frontend.html.twig' %}
|
||||
|
||||
{% block title %} Détail service {% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<!-- ============================================== HEADER : END ============================================== -->
|
||||
<div class="breadcrumb">
|
||||
<div class="breadcrumb-inner">
|
||||
<ul class="list-inline list-unstyled">
|
||||
<li><a href="{{ path('frontend_home_index') }}">Accueil</a></li>
|
||||
<li><a href="{{ path('frontend_article_service_index') }}">Article et Service</a></li>
|
||||
<li class="active">Détail Service</li>
|
||||
</ul>
|
||||
</div>
|
||||
<!-- /.breadcrumb-inner -->
|
||||
</div>
|
||||
|
||||
<style>
|
||||
.img-resp{
|
||||
max-width: 402px;
|
||||
max-height: 380px;
|
||||
}
|
||||
</style>
|
||||
|
||||
<!-- /.breadcrumb -->
|
||||
<div class="body-content outer-bottom-xs">
|
||||
<div class='row single-product'>
|
||||
<!-- ============================================== Testimonials: END ============================================== -->
|
||||
<!-- /.sidebar -->
|
||||
|
||||
<div class="detail-block">
|
||||
<div class="row">
|
||||
<div class="col-xs-12 col-sm-12 col-md-4 col-lg-4 gallery-holder">
|
||||
<div class="product-item-holder size-big single-product-gallery small-gallery">
|
||||
<div id="owl-single-product">
|
||||
<!-- /.single-product-gallery-item -->
|
||||
{% for key,image in service.getAllImage() %}
|
||||
<div class="single-product-gallery-item" id="slide{{key}}">
|
||||
<a data-lightbox="image-{{key}}" data-title="Gallery" href="{{ asset('uploads/images/services/' ~ image ) }}">
|
||||
<img class="img-responsive img-resp" alt="" src="{{ asset('uploads/images/services/' ~ image) }}" data-echo="{{ asset('uploads/images/services/' ~ image ) }}" />
|
||||
</a>
|
||||
</div>
|
||||
{% endfor %}
|
||||
<!-- /.single-product-gallery-item -->
|
||||
</div>
|
||||
<!-- /.single-product-slider -->
|
||||
<div class="single-product-gallery-thumbs gallery-thumbs">
|
||||
<div id="owl-single-product-thumbnails">
|
||||
{% for key,image in service.getAllImage() %}
|
||||
<div class="item {% if key == 1 %} active {% endif %}">
|
||||
<a class="horizontal-thumb" data-target="#owl-single-product" data-slide="{{ key }}" href="#slide{{ key }}">
|
||||
<img class="img-responsive" alt="" src="{{ asset('uploads/images/services/' ~ image) }}" data-echo="{{ asset('uploads/images/services/' ~ image) }}" />
|
||||
</a>
|
||||
</div>
|
||||
{% endfor %}
|
||||
</div>
|
||||
<!-- /#owl-single-product-thumbnails -->
|
||||
</div>
|
||||
<!-- /.gallery-thumbs -->
|
||||
</div>
|
||||
<!-- /.single-product-gallery -->
|
||||
</div>
|
||||
<!-- /.gallery-holder -->
|
||||
<div class='col-sm-12 col-md-8 col-lg-8 product-info-block'>
|
||||
<div class="product-info">
|
||||
<h1 class="name">{{ service.getTitre() }}</h1>
|
||||
<div class="rating-reviews m-t-20">
|
||||
<div class="row">
|
||||
<div class="col-lg-12">
|
||||
<div class="pull-left">
|
||||
<div class="rating rateit-small"></div>
|
||||
</div>
|
||||
<div class="pull-left">
|
||||
<div class="reviews">
|
||||
<a href="#" class="lnk">(13 Reviews)</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- /.row -->
|
||||
</div>
|
||||
<!-- /.rating-reviews -->
|
||||
<div class="stock-container info-container m-t-10">
|
||||
<div class="row">
|
||||
<div class="col-lg-12">
|
||||
<div class="pull-left">
|
||||
<div class="stock-box">
|
||||
<span class="label">Rendez-vous Disponible: </span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="pull-left">
|
||||
<div class="stock-box">
|
||||
<span class="value">{{ service.getServiceRdvReservations()|length }}</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- /.row -->
|
||||
</div>
|
||||
<!-- /.stock-container -->
|
||||
<div class="price-container info-container m-t-30">
|
||||
<div class="row">
|
||||
<div class="col-sm-6 col-xs-6">
|
||||
<div class="price-box">
|
||||
<span class="price">{{ service.getPrixPromo() }} DT</span>
|
||||
<span class="price-strike">{{ service.getPrixMarche() }} DT</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-6 col-xs-6">
|
||||
<div class="favorite-button m-t-5">
|
||||
<a class="btn btn-primary" data-toggle="tooltip" data-placement="right" title="Wishlist" href="#">
|
||||
<i class="fa fa-heart"></i>
|
||||
</a>
|
||||
<a class="btn btn-primary" data-toggle="tooltip" data-placement="right" title="E-mail" href="#">
|
||||
<i class="fa fa-envelope"></i>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- /.row -->
|
||||
</div>
|
||||
<!-- /.price-container -->
|
||||
<div class="quantity-container info-container">
|
||||
<div class="row">
|
||||
<div class="col-md-3 col-md-offset-3">
|
||||
<div class="add-btn">
|
||||
<button class="btn btn-primary" id="btn-show-rdv" data-toggle="modal" data-target="#modal-rdv">
|
||||
<i class="fa-regular fa-calendar-check"></i>
|
||||
Prendre un rendrez-vous
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- /.row -->
|
||||
</div>
|
||||
<!-- /.quantity-container -->
|
||||
</div>
|
||||
<!-- /.product-info -->
|
||||
</div>
|
||||
<!-- /.col-sm-7 -->
|
||||
</div>
|
||||
<!-- /.row -->
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<!-- /.row -->
|
||||
</div>
|
||||
<!-- /.body-content -->
|
||||
|
||||
|
||||
<div class="blog-page">
|
||||
<div class="blog-review wow fadeInUp">
|
||||
<div class="row">
|
||||
<div class="col-md-12">
|
||||
<div class="description-container m-t-20">
|
||||
{{ service.getDescription()|raw }}
|
||||
<!-- /.description-container -->
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<br><br>
|
||||
|
||||
|
||||
|
||||
|
||||
{% set comments = service.getCommentServices() %}
|
||||
{% include 'frontend/comment/comments.html.twig' %}
|
||||
|
||||
{{ render(controller(
|
||||
'App\\Controller\\Frontend\\CommentController::service_add',
|
||||
{ 'id': service.getId() }
|
||||
)) }}
|
||||
|
||||
<div class="modal fade" id="modal-rdv" tabindex="-1" role="dialog" aria-hidden="true">
|
||||
<div class="modal-dialog modal-dialog-centered modal-lg" role="document">
|
||||
<div class="modal-content">
|
||||
<div class="modal-body" id="modal-body-rdv">
|
||||
<table class="table table-bordered" id="dataTablesRdv" width="100%" cellspacing="0">
|
||||
<thead>
|
||||
<tr><th>#</th><th>Nom</th></tr>
|
||||
</thead>
|
||||
<tbody></tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
{% endblock %}
|
||||
|
||||
{% block javascripts %}
|
||||
<script>
|
||||
var pathGetListRDV = "{{ path('frontend_service_get_list_rdv', {id:service.id}) }}";
|
||||
var pathSelectRDV = "{{ path('frontend_service_select_rdv') }}";
|
||||
</script>
|
||||
{{ parent() }}
|
||||
{{ encore_entry_script_tags('app_frontend_article_service') }}
|
||||
{% endblock %}
|
||||
@@ -0,0 +1,57 @@
|
||||
{% extends 'base_frontend.html.twig' %}
|
||||
|
||||
{% block title %} Détail service {% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<!-- ============================================== HEADER : END ============================================== -->
|
||||
<div class="breadcrumb">
|
||||
<div class="breadcrumb-inner">
|
||||
<ul class="list-inline list-unstyled">
|
||||
<li><a href="{{ path('frontend_home_index') }}">Accueil</a></li>
|
||||
<li><a href="{{ path('frontend_article_service_index') }}">Article et Service</a></li>
|
||||
<li class="active">Rendez-vous sélectionné</li>
|
||||
</ul>
|
||||
</div>
|
||||
<!-- /.breadcrumb-inner -->
|
||||
</div>
|
||||
|
||||
<!-- /.breadcrumb -->
|
||||
<div class="body-content">
|
||||
<div class="track-order-page">
|
||||
<div class="row">
|
||||
<div class="col-md-12">
|
||||
<h2 class="heading-title">Rendez-vous sélectionné le: {{ serviceRdvReservation.getDateDebut()|date("d/m/Y H:i") }}</h2>
|
||||
<h4>Service:{{ serviceRdvReservation.getService().getTitre() }}</h4>
|
||||
<form class="register-form outer-top-xs" action="{{ path('frontend_panier_add_service', {id:serviceRdvReservation.getId()}) }}" method="post" role="form">
|
||||
<div class="form-group">
|
||||
<label class="info-title" for="NomId1">Nom</label>
|
||||
<input type="text" name="nom" value="{{ user.getFirstname() }}" class="form-control unicase-form-control text-input" id="NomId1" >
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="info-title" for="PrenomIdId">Prénom</label>
|
||||
<input type="text" name="prenom" value="{{ user.getLastname() }}" class="form-control unicase-form-control text-input" id="PrenomIdId" >
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="info-title" for="NaissanceId">Date de naissance</label>
|
||||
<input type="date" name="naissance" value="{{ user.getBirthdate()|date("Y-m-d") }}" class="form-control unicase-form-control text-input" id="NaissanceId" >
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="info-title" for="EmailId">Email</label>
|
||||
<input type="email" name="email" value="{{ user.getEmail() }}" class="form-control unicase-form-control text-input" id="EmailId" >
|
||||
</div>
|
||||
<input type="submit" class="btn-upper btn btn-primary checkout-page-button" value="Valider">
|
||||
</form>
|
||||
</div>
|
||||
</div><!-- /.row -->
|
||||
<!-- /.row -->
|
||||
</div>
|
||||
<!-- /.row -->
|
||||
</div>
|
||||
<!-- /.body-content -->
|
||||
<br><br>
|
||||
{% endblock %}
|
||||
|
||||
{% block javascripts %}
|
||||
{{ parent() }}
|
||||
{{ encore_entry_script_tags('app_frontend_article_service') }}
|
||||
{% endblock %}
|
||||
Reference in New Issue
Block a user