templates/category/index.html.twig line 1

Open in your IDE?
  1. {% extends 'base.html.twig' %}
  2. {% block title %}Hello CategoryController!
  3. {% endblock %}
  4. {% block body %}
  5.     <div class="container">
  6.         <br>
  7.         <h1>{{category.name}}</h1>
  8.         <br>
  9.         {% set i=0 %}
  10.         <div class="row">
  11.             {% for article in articles %}
  12.                 {% set i=i+1 %}
  13.                 <div class="col-3">
  14.                     <div class="card">
  15.                         <img class="card-img-top" src="{{asset('uploads/') ~ article.image}}" alt="Card image cap" height="200px">
  16.                         <div class="card-body">
  17.                             <a href="{{path('app_detail', {'id':article.id})}}">
  18.                                 <h5 class="card-title">{{article.name}}</h5>
  19.                             </a>
  20.                             <p class="card-text">{{article.category}}</p>
  21.                         </div>
  22.                         {% if article.quantity < article.warnining %}
  23.                             <div class="card-footer bg-danger">
  24.                             {% else %}
  25.                                 <div class="card-footer">
  26.                                 {% endif %}
  27.                                 <small class="text-muted">
  28.                                     <div class="input-group js-count">
  29.                                         <span class="input-group-btn">
  30.                                             <a href="{{path('article_minus', {'id':article.id})}}" class="btn btn-link js-count js-count {{article.id}}">
  31.                                                 <button type="button" class="btn btn-danger btn-number" data-type="minus" data-field="quant[2]">
  32.                                                     <span class="fa fa-minus"></span>
  33.                                                 </button>
  34.                                             </a>
  35.                                         </span>
  36.                                         <h5>
  37.                                             <span class="js-count" id="js{{article.id}}" min="0">{{article.quantity}}</span>
  38.                                         </h5>
  39.                                         <span class="input-group-btn">
  40.                                             <a href="{{ path('article_add', {'id':article.id})}}" class="btn btn-link js-count {{article.id}}">
  41.                                                 <button type="button" class="btn btn-success " data-type="plus" data-field="quant[2]">
  42.                                                     <span class="fa fa-plus"></span>
  43.                                                 </button>
  44.                                             </a>
  45.                                         </span>
  46.                                     </div>
  47.                                 </small>
  48.                             </div>
  49.                         </div>
  50.                     </div>
  51.                     {% if i % 4 == 0 %}
  52.                     </div>
  53.                     <br><br>
  54.                     <div class="row">
  55.                     {% endif %}
  56.                 {% endfor %}
  57.             </div>
  58.         </div>
  59.         <script src="https://unpkg.com/axios/dist/axios.min.js"></script>
  60.         <script>
  61.             function onClickBtnCount(event) {
  62. event.preventDefault();
  63. const url = this.href;
  64. console.log(url);
  65. axios.get(url).then(function (response) {
  66. console.log(response);
  67. const spanCount = document.querySelector("#js" + response.data.id);
  68. spanCount.textContent = response.data.quantity;
  69. }).catch(function (error) {
  70. console.log(error);
  71. });
  72. }
  73. document.querySelectorAll('span.input-group-btn > a.js-count').forEach(function (link) {
  74. link.addEventListener('click', onClickBtnCount);
  75. })
  76.         </script>
  77.     </div>
  78. {% endblock %}