public/themes/default/products-category.html.twig line 1

Open in your IDE?
  1. {% extends getThemeDir('base.html.twig') %}
  2. {% block seo %}
  3.     {# فرض: متغیر category در این ویو موجود است و slug دارد #}
  4.     {{ render_seo('product_category', null, app.request.attributes.get('_route'), { urlSlug: category.urlSlug }) }}
  5. {% endblock %}
  6. {% block body %}
  7.     {% set data = {
  8.         payload: paginator,
  9.         filters: filters,
  10.         allParameters: app.request.query.all|merge(app.request.attributes.get('_route_params')),
  11.         currentPage: currentPage,
  12.         size: parameters.size,
  13.         request: app.request,
  14.         postType : app.request.attributes.get('postType'),
  15.         requestPath: 'Admin:GlobalSettings:Inspection',
  16.         pageNumber : app.request.query.get('page'),
  17.     } %}
  18.     {% set currentPage = data.currentPage %}
  19.     {% set currentPageParameters = data.currentPageParameters | default({page: "1"}) %}
  20.     {% set size = data.size %}
  21. <style>
  22.     .ui-variant--color .ui-variant--check {
  23.         padding-right: 10px !important;
  24.     }
  25. </style>
  26. <div class="container main-container">
  27.     <div class="row search-amazing-content">
  28.         {% if data.filters is defined %}
  29.             {{ include('@themes/default/sidebar-filter.html.twig', {
  30.                 currentPage: currentPage,
  31.                 size: data.size,
  32.                 currentPageParameters: data.allParameters,
  33.                 filters: data.filters,
  34.             }) }}
  35.         {% endif %}
  36.         <div class="col-lg-9 col-md-12 col-sm-12 search-card-res">
  37.             <div class="d-md-none">
  38.                 <button class="btn-filter-sidebar">
  39.                     جستجوی پیشرفته <i class="fad fa-sliders-h"></i>
  40.                 </button>
  41.             </div>
  42.             <div class="dt-sl dt-sn px-0 search-amazing-tab">
  43.                 <div class="row mb-3 mx-0 px-res-0">
  44.                     {% if data.payload is not iterable %}
  45.                         {% set results = data.payload.results %}
  46.                     {% else %}
  47.                         {% set results = data.payload %}
  48.                     {% endif %}
  49.                     {% for id,item in results %}
  50.                     <div class="col-lg-3 col-md-4 col-sm-6 col-12 px-10 mb-1 px-res-0">
  51.                         {% include getThemeDir('cards/single-product.html.twig') with {'product' : item} %}
  52.                     </div>
  53.                     {% endfor %}
  54.                 </div>
  55.                 {% if data.pagination is not defined or data.pagination == true %}
  56.                     {% set paginator = data.payload %}
  57.                     {% set currentPage = data.currentPage %}
  58.                     {% set params = data.allParameters | default({page: "1"}) %}
  59.                     {% set size = data.size %}
  60.                     {% if paginator.getNumResults > 0 %}
  61.                         <div class="intro-y col-span-12 flex flex-wrap sm:flex-row sm:flex-nowrap items-center">
  62.                             <ul class="pagination">
  63.                                 {% for i in paginator.start..paginator.end %}
  64.                                     {% if i == paginator.currentPage %}
  65.                                         <li><a class="pagination__link pagination__link--active">{{ i }}</a></li>
  66.                                     {% else %}
  67.                                         <li><a class="pagination__link"
  68.                                                href="{{ path(currentPage, params|merge({"page": i })) }}">{{ i }}</a>
  69.                                         </li>
  70.                                     {% endif %}
  71.                                 {% endfor %}
  72.                             </ul>
  73.                             {#                                <form method="get" action="{{ path(currentPage, params|merge({"page": paginator.currentPage })) }}"> #}
  74.                             {#                                    <select class="w-20 form-select box mt-3 sm:mt-0" name="size" onchange="this.form.submit()"> #}
  75.                             {#                                        <option value="10" {% if size == 1 %} selected {% endif %}>1</option> #}
  76.                             {#                                        <option value="10" {% if size == 10 %} selected {% endif %}>10</option> #}
  77.                             {#                                        <option value="20" {% if size == 20 %} selected {% endif %}>20</option> #}
  78.                             {#                                        <option value="50" {% if size == 50 %} selected {% endif %}>50</option> #}
  79.                             {#                                    </select> #}
  80.                             {#                                </form> #}
  81.                             {#    <p class="form-text text-muted pl-1">{{ paginator.ShowingAmount }}</p> #}
  82.                         </div>
  83.                     {% endif %}
  84.                 {% endif %}
  85.                 <input type="hidden" id="query-status" value="{{ data.request.get('status') }}"/>
  86.                 {#                    <div class="row"> #}
  87.                 {#                        <div class="col-12"> #}
  88.                 {#                            <div class="pagination"> #}
  89.                 {#                                <a href="#" class="prev"><i #}
  90.                 {#                                            class="mdi mdi-chevron-double-right"></i></a> #}
  91.                 {#                                <a href="#">1</a> #}
  92.                 {#                                <a href="#" class="active-page">2</a> #}
  93.                 {#                                <a href="#">3</a> #}
  94.                 {#                                <a href="#">4</a> #}
  95.                 {#                                <a href="#">...</a> #}
  96.                 {#                                <a href="#">7</a> #}
  97.                 {#                                <a href="#" class="next"><i class="mdi mdi-chevron-double-left"></i></a> #}
  98.                 {#                            </div> #}
  99.                 {#                        </div> #}
  100.                 {#                    </div> #}
  101.             </div>
  102.         </div>
  103.     </div>
  104. </div>
  105. {% endblock %}