Error 500 Internal Server Error

GET https://dev.alatiimasine.com/proizvod/guralica-retro-461-pink/

Forwarded to ErrorController (276a00)

Exceptions

An exception has been thrown during the rendering of a template ("Warning: Attempt to read property "seller_name" on false") in products/single.html.twig at line 738.

Exceptions 2

Twig\Error\ RuntimeError

Show exception properties
Twig\Error\RuntimeError {#1210
  -lineno: 738
  -rawMessage: "An exception has been thrown during the rendering of a template ("Warning: Attempt to read property "seller_name" on false")."
  -source: Twig\Source {#2541
    -code: """
      \n
      {% extends 'layout.html.twig' %}\n
      \n
      {% block content %}\n
      \n
      <script>\n
        function updateTime(end_datetime) {\n
      \n
          if (end_datetime == "") {\n
            document.getElementById("mega_end_time")\n
              .innerHTML = "";\n
            return;\n
          }\n
      \n
          now = new Date();\n
          //kickoff  = Date.parse("June 11, 2010 11:30:00");\n
          kickoff = Date.parse(end_datetime);\n
          //alert(end_datetime);\n
          diff = kickoff - now;\n
      \n
          days = Math.floor(diff / (1000 * 60 * 60 * 24));\n
          hours = Math.floor(diff / (1000 * 60 * 60));\n
          mins = Math.floor(diff / (1000 * 60));\n
          secs = Math.floor(diff / 1000);\n
      \n
          dd = days;\n
          hh = hours - days * 24;\n
          mm = mins - hours * 60;\n
          ss = secs - mins * 60;\n
      \n
          if (dd % 10 == 1 && dd != 11) {\n
            dd_txt = 'dan';\n
          } else {\n
            dd_txt = 'dana';\n
          }\n
      \n
      \n
          //if (dd > 0 || hh > 0 || mm > 0 || ss > 0)\n
          if (dd >= 0) {\n
            /*document.getElementById("mega_discount_div")\n
            .innerHTML =\n
               '<span class="mega_countdown_css">' + dd + '</span> ' + dd_txt + ' ' +\n
               '<span class="mega_countdown_css">' +  hh + '</span> sati ' +\n
               '<span class="mega_countdown_css">' +  mm + '</span> minuta ' +\n
               '<span class="mega_countdown_css">' +  ss + '</span> sekundi';*/\n
            document.getElementById("mega_end_time")\n
              .innerHTML =\n
              '&nbsp; akcija jo&scaron; <span class="main_product_details_mega_discount_css_big">' + dd + '</span> ' + dd_txt + ' ' +\n
              '<span class="main_product_details_mega_discount_css_big">' + pad(hh) + ':' + pad(mm) + ':' + pad(ss) + '</span>';\n
          } else {\n
            document.getElementById("new_product")\n
              .innerHTML = '';\n
            document.getElementById("price")\n
              .innerHTML = '[%basic_price%]';\n
            document.getElementById("mega_discount_div")\n
              .innerHTML = '<table width="100%" border="0" cellspacing="0" cellpadding="0"><tr><td height="2"><table width="98%" align="center" border="0" cellspacing="0" cellpadding="0" bgcolor="#333333"><tr class="main_product_details_mega_discount_err"><td height="50" align="center">&nbsp;PONUDA JE ISTEKLA!</td></tr></table></td></table>';\n
          }\n
        }\n
      \n
        if (document.getElementById("mega_end_time") != null) {\n
          setInterval('updateTime("[%end_datetime%]")', 1000);\n
        }\n
      \n
      \n
        function pad(n) {\n
          return (n < 10) ? ("0" + n) : n;\n
        }\n
      \n
      </script>\n
      <script src="https://www.google.com/recaptcha/api.js?render={{ recaptchaSiteKey }}"></script>\n
      <script>\n
          // reCAPTCHA v3: na klik "Pošalji" prvo validiramo formu, pa grecaptcha.execute\n
          // vrati token koji ubacimo u formu i pokrenemo postojeći ajaxSubmit (#send-comment-btn iz js.js).\n
          function submitComment() {\n
              if (!window.$ || !$('#send-comment-form').valid()) {\n
                  return;\n
              }\n
              grecaptcha.ready(function () {\n
                  grecaptcha.execute('{{ recaptchaSiteKey }}', { action: 'submit' }).then(function (token) {\n
                      const form = document.getElementById('send-comment-form');\n
      \n
                      const existing = form.querySelector('input[name="g-recaptcha-response"]');\n
                      if (existing) existing.remove();\n
      \n
                      const input = document.createElement('input');\n
                      input.type = 'hidden';\n
                      input.name = 'g-recaptcha-response';\n
                      input.value = token;\n
                      form.appendChild(input);\n
      \n
                      document.getElementById('send-comment-btn').click();\n
                  });\n
              });\n
          }\n
      </script>\n
      \n
      <div class="single-product proizvod_single">\n
         \n
          <div class="breadcrumbs">\n
              <a href="/">Sve kategorije</a>\n
              {% for bc in category.getBreadcrumb() %}\n
                  <span>&nbsp;/&nbsp;</span> <a href="{{ path('category', {seo: bc.slug}) }}">{{ bc.name }}</a>\n
              {% endfor %}\n
      \n
              <span>&nbsp;&gt;&nbsp; <span class="text-[#00000066]">{{ product.getProductName() }}</span></span>\n
          </div>\n
          <div class="grid grid-cols-2 gap-x-6">\n
              <div class="lg:col-span-1 col-span-2">\n
                  <div class="slikaproizvoda relative">\n
      \n
                      <div id="slider" class="flexslider bg-white rounded-lg border-[1px] border-[#0000001a]">\n
                          <ul class="slides">\n
                              {% for img in product.getImages() %}\n
                                  {% set ImageUrl = product.getSThumbs()[loop.index0] %}\n
                                  {% set ImageUrlBig = product.getBImages()[loop.index0] %}\n
                                  <li><a href="{{ base_url_oidl }}{{ ImageUrlBig }}" class="popup-link"> <img width="600" height="600" title="{{ product.getProductName()|escape() }}" alt="{{ product.getProductName()|escape }}" src="{{ base_url_oidl }}{{ ImageUrlBig }}"></a></li>\n
                              {% endfor %}\n
                          </ul>\n
                      </div>\n
      \n
                      <div id="carousel" class="flexslider">\n
                          <ul class="slides flex flex-wrap gap-4">\n
                              {% for img in product.getImages() %}\n
                                  {% set ImageUrl = product.getSThumbs()[loop.index0] %}\n
                                  <li class="rounded bg-white border-[1px] border-[#0000001a] !m-0"><img width="265" height="265" title="{{ product.getProductName()|escape() }}" alt="{{ product.getProductName()|escape() }}" src="{{ base_url_oidl }}{{ ImageUrl }}"></li>\n
                              {% endfor %}\n
                          </ul>\n
                      </div>\n
      \n
                      <div class="product-mark absolute top-4 left-4">\n
                      {% if product.outOfStock() %}\n
          {#            <span class="product-mark-sold">prodato</span>#}\n
                      {% else %}\n
                          {% if product.isNewProduct() %}\n
                              <span class="product-mark-new">novo</span>\n
                          {% endif %}\n
                          {% if product.isMegaDiscount() %}\n
                              <span class="product-mark-mega">% mega akcija</span>\n
                          {% endif %}\n
                          {% if product.isDiscount() %}\n
                              <span class="product-mark-sale">akcija</span>\n
                          {% endif %}\n
                      {% endif %}\n
      \n
                      </div>\n
                  </div>\n
                  <!-- Opciona Oprema -->\n
                  {% if opremaLinks is not empty %}\n
                      <div class="mb-6">\n
                          <div class="border-b-[1px] py-2 mb-4 border-[#0000004d]">\n
                              <h2 class="product-details-title font-bold">Opciona oprema</h2>\n
                          </div>\n
                          <div class="product-details-item-content text-sm">\n
                              {% for link in opremaLinks %}\n
                                  <a href="{{ path('category', {seo: link.category_name_seo}) }}" target="_blank" class="text-oidlRed text-xs block mb-2">{{ link.category_name }}</a>\n
                              {% endfor %}\n
                          </div>\n
                      </div>\n
                  {% endif %}\n
                  \n
              </div>\n
              <div class="lg:col-span-1 col-span-2">\n
                  <input name="pid" type="hidden" id="pid" value="{{ product.getId() }}"/>\n
                  <div class="mb-5 leading-none text-[13px] font-bold text-[#00000099]">\n
                      {% set brandImage = '' %}\n
      \n
                      {% if product.getBrandId() != 75 %}\n
                          {% set brandImage %}\n
                              {% if brand.image is not empty and checkImage('/brands/t-' ~ brand.image) %}\n
                                  <img src="{{ base_url_oidl }}/brands/t-{{ brand.image }}" alt="{{ brand.name|escape() }}" border="0" width="{{ brand.imgSize.width }}" height="{{ brand.imgSize.height }}">\n
                              {% else %}\n
                                  <img src="/images/noimage_small.gif" alt="{{ brand.name|escape() }}" border="0">\n
                              {% endif %}\n
                          {% endset %}\n
                          <a href="{{ path('brand_products', {brandSeo: brand.slug, params: ''}) }}" class="hover:text-oidlRed">{{ brand.name }}</a>\n
                      {% endif %}\n
      \n
                      {# <div class="desnoodslikebrand">{{ brandImage }}</div> #}\n
                  </div>\n
                  \n
                  <h1 class="product-title">{{ product.getProductName() }}</h1>\n
                  \n
                  <div class="product-code"> Šifra proizvoda: <span class="text-oidlRed">{{ product.getProductCode() }}</span></div>\n
                  \n
                      <div>\n
                          {% if product.outOfStock() %}\n
                                  <span class="product_mark product_sold">prodato</span><br>\n
                                  <p>Proizvod je rasprodat.\n
                                      <br>Aktuelne proizvode iz ove kategorije možete pogledati klikom na dugme ispod:</p>\n
                                  <a href="{{ path('category', {seo: category.getSlug()}) }}" style="text-decoration:none;">\n
                                      <div style="text-align:center;background:#BF1E2D;width:150px;padding:5px;color:white;">Vidi proizvode</div>\n
                                  </a>\n
                          {% else %}\n
      \n
                              <div id="mega_discount_div">\n
                                  {% if product.isDiscount() or product.isMegaDiscount() %}\n
                                      {% if not product.getDiscountPriceDin() == 0 %}\n
                                          <div class="flex gap-x-1 mb-3 text-sm leading-[1.2]">\n
                                              <div class="rounded bg-oidlOrange p-1">\n
                                                  <div id="mega_price_percentage" class="font-bold text-white">-<span>{{ product.discountPercentage() }}%</span></div>\n
                                              </div>\n
                                              <div class="p-1">\n
                                                  <div id="mega_price_diff" class="text-black">U&scaron;teda <span class="text-black">{{ product.priceDiff() }}</span> RSD</div>\n
                                              </div>\n
                                          </div>\n
                                      {% endif %}\n
                                      {# <div><span>&nbsp; Akcija traje od: {{ product.discount_start_date|fromSolrDate }} <span class='[%hidden%]'>do: </span>{{ product.discount_end_date|fromSolrDate }}</span></div> #}\n
                                  {% endif %}\n
                              </div>\n
      \n
                              {% set oldPrice = '' %}\n
                              {% if product.isDiscount() or product.isMegaDiscount() %}\n
                                  {% set oldPrice %}\n
                                      <div class="product-old-price">{{ product.realPrice()|priceFormat() }} RSD</div>\n
                                  {% endset %}\n
                              {% endif %}\n
      \n
                              {% set cena %}\n
      \n
                              {% set pCena = product.isDiscount() or product.isMegaDiscount() ? product.getDiscountPriceDin() : product.getPriceDin() %}\n
                                  {% if not pCena == 0 %}\n
                                      <div class="product-price">{{ pCena|priceFormat() }} RSD</div>\n
                                  {% else %}\n
                                      <div class="product-price">po upitu</div>\n
                                  {% endif %}\n
                              {% endset %}\n
      \n
      \n
                              {{ oldPrice }}\n
      \n
                              <div class="product-price">{{ cena }}</div>\n
                              \n
                              <div class="text-[#00000099] text-[13px] leading-[1.3] tracking-tight mb-4">U cenu je uračunat PDV</div>\n
                              \n
                              <div class="add-to-cart">\n
                                  <form class="basket-add-form" name="form" method="post" action="{{ path('basket_add') }}">\n
                                      <input name="pid" type="hidden" value="{{ product.getId() }}"/>\n
                                      <input name="code" type="hidden" value="{{ product.getProductCode() }}"/>\n
                                      <input name="name" type="hidden" value="{{ product.getProductName()|escape }}"/>\n
      \n
                                      <input name="price" type="hidden" value="{{ product.isDiscount() or product.isMegaDiscount() ? product.getDiscountPriceDin()|priceBasketFormat : product.getPriceDin()|priceBasketFormat }}"/>\n
                                      <input name="real_price" type="hidden" value="{{ product.getPriceDin()|priceBasketFormat }}"/>\n
                                      <input name="discount" type="hidden" value="{{ product.priceRawDiff() }}"/>\n
      \n
                                      <input name="brand" type="hidden" value="{{ product.getBrandName|escape() }}"/>\n
      \n
                                      <input name="bread_crumb" type="hidden" value="{{ product.catList()|toJson }}"/>\n
      \n
                                      <input name="quantity" type="hidden" value="">\n
                                      <div class="flex gap-x-4 mb-7">\n
                                          \n
                                          <div class="w-[132px]">\n
                                              <input class="input_box required" name="qty" size="16" maxlength="4" value="1" type="text">\n
                                          </div>\n
                                          <div class="dugmedodajukorpu flex-1">\n
                                              {% if product.getPriceDin() > 0 %}\n
                                                  <input name="imageField" type="submit" alt="Dodaj" class="btn-add-to-cart" value="Dodaj u korpu"/>\n
                                              {% else %}\n
                                                  <img src="/images/ubaci_u_korpu.jpg" alt="Dodaj" border="0"/>\n
                                              {% endif %}\n
                                          </div>\n
                                      </div>\n
                                  </form>\n
                              </div>\n
      \n
                              {% if product.isDiscount() or product.isMegaDiscount() %}\n
                                  <div class="p-3 bg-white text-base text-black font-medium leading-[1.3] tracking-tight mb-4">Akcija traje od: {{ product.discount_start_date|fromSolrDate }} <span class='[%hidden%]'>do: </span>{{ product.discount_end_date|fromSolrDate }}</div>\n
                              {% endif %}\n
                              \n
                              \n
                        \n
                              {% set deliveryTime %}\n
                                  {% if product.getFields()['delivery_time'] == 1 %}\n
                                      2 - 7 dana\n
                                  {% elseif product.getFields()['delivery_time'] == 2 %}\n
                                      po upitu\n
                                  {% else %}\n
                                      {{ product.getFields()['delivery_time_od'] }} - {{ product.getFields()['delivery_time_do'] }} dana po uplati ili potvrdi narud&#382;bine\n
                                  {% endif %}\n
                              {% endset %}\n
                              {% set deliveryPrice %}\n
                                  {% if product.getFields()['delivery_price'] == 1 %}\n
                                      uklju&#269;ena u cenu\n
                                  {% else %}\n
                                      <a href="{{ path('pages_cenovnik') }}" class="" target="_blank">po cenovniku</a>\n
                                  {% endif %}\n
                              {% endset %}\n
                              {% set deliveryStyle = product.getFields()['delivery_price'] == 1 ? 'text14_red_bold' : 'text12' %}\n
      \n
                                  <ul class="list-disc list-inside text-base leading-[1.3] font-medium tracking-tight mb-6">\n
                                      <li class="mb-2">Vreme isporuke: {{ deliveryTime }}</li>\n
                                      <li class="mb-2">Cena isporuke: <span class="underline hover:text-oidlRed">{{ deliveryPrice }}</span></li>\n
                                      {% if product.getFields()['weight'] > 0 %}\n
                                          <li class="mb-2">Težina za isporuku: {{ product.getFields()['weight']|numberFormat }} kg</li>\n
                                      {% endif %}\n
                                      <li class="mb-2"><a href="#" class="deklaracija_show underline hover:text-oidlRed" target="_blank">Deklaracija</a></li>\n
                                  </ul>\n
      \n
                                  <div class="mb-4">\n
                                      {% if product.hasGuarantee() %}\n
                                          Saobraznost: <strong>{{ product.getGuarantee() }}</strong>\n
                                      {% endif %}\n
      \n
                                      {% if product.hasService() %}\n
                                          <div>\n
                                              <img src="/images/arrow_red.jpg" width="17" height="17"/>\n
                                              <a href="{{ path('product_service') }}?pid={{ product.getId() }}" target="_blank" class="links_black12_underline hover:text-oidlRed">Servis</a>\n
                                          </div>\n
                                      {% endif %}\n
                                  </div>\n
      \n
                          {% endif %}\n
                      </div>\n
      \n
                      <div class="proizvoduputstvo mb-4">\n
                          {% if pdfs|length > 0 %}\n
                              <ul>\n
                                  {% for pdf in pdfs %}\n
                                      {% if isLoggedIn %}\n
                                          {% set path = base_url_oidl ~ '/products/pdf/' ~ pdf.file_name %}\n
                                          {% set target = 'blank' %}\n
                                      {% else %}\n
                                          {% set path = path('login', {uput: 1, pid: product.getId(), seo: product.getSeo()}) %}\n
                                          {% set target = 'self' %}\n
                                      {% endif %}\n
      \n
                                      <li>\n
                                          <a href="{{ path }}" target="_{{ target }}" class="products_links">\n
                                              <img title="Uputstvo za upotrebu" alt="Uputstvo za upotrebu" border="0" src="/images/pdf.gif" width="50" height="50"/>\n
                                          </a>\n
                                          <br/><a href="{{ path }}" target="_{{ target }}" class="products_links hover:text-oidlRed">uputstvo za upotrebu</a>\n
                                      </li>\n
                                  {% endfor %}\n
                              </ul>\n
                          {% endif %}\n
                      </div>\n
      \n
                      {% if product.getProductCharasteristicsDescription()|default('') is not empty %}\n
                          <div class="mb-6">\n
                              <div class="border-b-[1px] py-2 mb-4 border-[#0000004d]">\n
                                  <h2 class="product-details-title font-bold">Karakteristike proizvoda</h2>\n
                              </div>\n
                              <div class="product-details-item-content text-sm">\n
                                  {{ product.getProductCharasteristicsDescription()|raw }}\n
                              </div>\n
                          </div>\n
                      {% endif %}\n
      \n
                      {% if not product.isMegaDiscount() and not product.isDiscount() %}\n
                          <div id="obavestenje_proizvod_na_akciji" class="obavestenje_proizvod_na_akciji mt-4">\n
                              <a href="javascript: void(0);" id="link_obavesti">Obavestite me kada proizvod bude na sniženju</a>\n
                          </div>\n
                          <div id="email_obavestenje_container">\n
                              <div class="mt-2 flex flex-col gap-2 sm:flex-row sm:items-center bg-[#f7f7f7] border border-[#e6e6e6] rounded-lg p-3 max-w-[480px]">\n
                                  <label for="txtPosaljiObav" class="text-xs text-[#555] whitespace-nowrap shrink-0">Unesite Vaš E-mail:</label>\n
                                  <div class="flex items-stretch gap-2 flex-1 min-w-0">\n
                                      <input type="email" id="txtPosaljiObav" name="email_obavestenje" value="" placeholder="[email protected]"\n
                                             class="flex-1 min-w-0 h-9 px-3 text-sm text-black bg-white border border-[#cfcfcf] rounded-md outline-none focus:border-[#6D9F88] focus:ring-1 focus:ring-[#6D9F88]"/>\n
                                      <button id="btnPosaljiObav" type="button" class="btn btn-green !py-0 h-9 items-center px-4 whitespace-nowrap">Pošalji</button>\n
                                  </div>\n
                              </div>\n
                          </div>\n
                      {% endif %}\n
      \n
                      <div class="social-share border-t-[1px] border-[#0000004d] py-3">\n
                          <ul class="flex items-center gap-x-3">\n
                              <li class="font-medium text-base leading-[1.3] tracking-tight">Podeli:</li>\n
                              <li><a class="fb-share-link" href="{{ metaTags.getOgUrl() }}"><img src="/images/facebook.png" width="32" height="32"></a></li>\n
                              <li><a class="messenger-link" href="{{ metaTags.getOgUrl() }}"><img src="/images/messenger.png" width="32" height="32"></a></li>\n
                              <li><a class="whatsapp-link" href="{{ metaTags.getOgUrl() }}"><img src="/images/whatsapp.png" width="32" height="32"></a></li>\n
                              <li><a class="viber-link" href="{{ metaTags.getOgUrl() }}"><img src="/images/viber.png" width="32" height="32"></a></li>\n
                          </ul>\n
                      </div>\n
      \n
      \n
                      <input type="hidden" id="productUrl" value="{{ metaTags.getOgUrl() }}">\n
      \n
                      {# {% if product.getProductLinks()|length > 0 %}\n
                          <ul>\n
                              {% for pLink in product.getProductLinks() %}\n
                                  <li class="product_links_header">\n
                                      <a href="/{{ pLink.url }}" class="product_links" target="_blank">{{ pLink.name }}</a>\n
                                  </li>\n
                              {% endfor %}\n
                          </ul>\n
                      {% endif %} #}\n
              </div>\n
          </div>\n
          <div class="product-details">\n
             \n
              {% if product.getCaracteristic()|default('') is not empty %}\n
                  <div class="product-details-item is-active">\n
                      <div class="product-details-item-header">\n
                          <h2 class="product-details-title">Opis i namena proizvoda</h2>\n
                      </div>\n
                      <div class="product-details-item-content">\n
                          {{ product.getCaracteristic()|raw }}\n
                      </div>\n
                  </div>\n
              {% endif %}\n
      \n
              {% if product.getProductDeliveryCharacteristics()|default('') is not empty %}\n
                  <div class="product-details-item is-active border-b-[1px] mb-6">\n
                      <div class="product-details-item-header">\n
                          <h2 class="product-details-title">Obim isporuke</h2>\n
                      </div>\n
                      <div class="product-details-item-content">\n
                          {{ product.getProductDeliveryCharacteristics()|raw }}\n
                      </div>\n
                  </div>\n
              {% endif %}\n
      \n
              {% if similarProducts|length > 0 %}\n
                  <div class="related-products w-full">\n
                      <h2 class="font-bold text-2xl mb-6 leading-[1.1] tracking-tight">Slični proizvodi</h2>\n
                      <div class="w-full overflow-hidden block">\n
                          <div class="w-full overflow-hidden flex shrink-1">\n
                              <div class="product-grid product-grid-scroll mb-16">\n
                                  {% for similarProduct in similarProducts %}\n
                                      {% set similarClass = loop.index == 2 ? 'slicanproizvodsrednji' : 'slicanproizvod' %}\n
                                      \n
                                      <div class="product-loop">\n
                                          <div class="product-loop-image">\n
                                              <a href="{{ path('single_product', {seo: similarProduct.getOldUrl()}) }}" title="{{ similarProduct.getProductName()|escape }}" class="!block aspect-square overflow-hidden w-full">\n
                                                  <img src="{{ base_url_oidl }}{{ similarProduct.getMainThumb() }}" alt="{{ similarProduct.getProductName() }}" border="0" width="600" height="600"/>\n
                                              </a>\n
                                              <div class="product-mark">\n
                                                  {% if similarProduct.outOfStock() %}\n
                                                      <span class="product-mark-sold">prodato</span>\n
                                                  {% elseif similarProduct.isMegaDiscount() %}\n
                                                      <span class="product-mark-mega">% mega akcija</span>\n
                                                  {% elseif similarProduct.isDiscount() %}\n
                                                      <span class="product-mark-sale">akcija</span>\n
                                                  {% elseif similarProduct.isNewProduct() %}\n
                                                      <span class="product-mark-new">novo</span>\n
                                                  {% endif %}\n
                                              </div>\n
                                          </div>\n
      \n
                                          <h2 class="product-loop-title"><a href="{{ path('single_product', {seo: similarProduct.getOldUrl()}) }}" title="{{ similarProduct.getProductName()|escape }}">{{ similarProduct.getProductName() }}</a></h2>\n
                                          \n
                                          <div class="slicanproizvodopis">{{ similarProduct.getCaracteristicShort()|raw }}</div>\n
      \n
                                          <div class="product-loop-price">\n
                                              {% if similarProduct.isDiscount() or similarProduct.isMegaDiscount() %}\n
                                                  <div class="product-loop-price-discount">{{ similarProduct.getPriceDin()|priceFormat() }} RSD</div>\n
                                                  <div class="product-loop-price-regular">{{ similarProduct.getDiscountPriceDin()|priceFormat() }} RSD</div>\n
                                              {% else %}\n
                                                  {% if not similarProduct.getPriceDin() == 0 %}\n
                                                      <div class="product-loop-price-regular">{{ similarProduct.getPriceDin()|priceFormat() }} RSD</div>\n
                                                  {% else %}\n
                                                      <div class="product-loop-price-regular">cena:&nbsp;<strong>po upitu</strong></div>\n
                                                  {% endif %}\n
                                              {% endif %}\n
                                          </div>\n
                                      </div>\n
                                  {% endfor %}\n
                              </div>\n
                          </div>\n
                      </div>\n
                  </div>\n
              {% endif %}\n
      \n
              {% if films|length > 0 %}\n
                  <style>\n
                      .video-popup {\n
                          display: none;\n
                          position: fixed;\n
                          top: 0;\n
                          bottom: 0;\n
                          left: 0;\n
                          right: 0;\n
                          background-color: rgba(0, 0, 0, 0.8);\n
                          z-index: 99999999999999999;\n
                      }\n
      \n
                      .video-popup-content {\n
                          position: relative;\n
                          height: 315px;\n
                          max-width: 500px;\n
                          width: 100%;\n
                          padding: 20px;\n
                          top: 50%;\n
                          transform: translateY(-50%);\n
                          text-align: center;\n
                          margin: auto;\n
                          box-sizing: border-box;\n
                      }\n
      \n
                      .btn-yt {\n
                          border: 0;\n
                          background-color: transparent;\n
                          cursor: pointer;\n
                          position: relative;\n
                          margin-bottom: 20px;\n
                      }\n
      \n
                      .btn-yt:after {\n
                          content: '';\n
                          position: absolute;\n
                          display: block;\n
                          width: 100px;\n
                          height: 100px;\n
                          background-image: url(/images/yt_logo.png);\n
                          background-position: center;\n
                          background-repeat: no-repeat;\n
                          z-index: 10;\n
                          background-size: 100px auto;\n
                          top: 0;\n
                          bottom: 0;\n
                          left: 0;\n
                          right: 0;\n
                          margin: auto;\n
                      }\n
      \n
                      .btn-close {\n
                          width: 30px;\n
                          height: 30px;\n
                          background-color: #fff;\n
                          border-radius: 50%;\n
                          color: #000;\n
                          position: absolute;\n
                          right: 5px;\n
                          top: 0;\n
                          font-weight: 700;\n
                          z-index: 9;\n
                      }\n
      \n
                      .video-embed {\n
                          position: relative;\n
                          padding-bottom: 56.25%; /* 16:9 */\n
                          height: 0;\n
                      }\n
      \n
                      .video-embed iframe {\n
                          position: absolute;\n
                          top: 0;\n
                          left: 0;\n
                          width: 100%;\n
                          height: 100%;\n
                      }\n
      \n
                      @media (max-width: 768px) {\n
                          .btn-yt {\n
                              width: 100%;\n
                              margin-bottom: 20px;\n
                          }\n
      \n
                          .btn-yt img {\n
                              width: 100%;\n
                          }\n
                      }\n
                  </style>\n
                  <div class="product-details-item is-active">\n
                      <div class="product-details-item-header">\n
                          <h2 class="product-details-title">Video</h2>\n
                      </div>\n
                      <div class="product-details-item-content">\n
                          <div class="all-videos">\n
                              {% for film in films %}\n
                                  <button name="movies" class="btn-yt proizvodvideo" data-code="{{ film.ytCode }}"><img src="{{ base_url_oidl }}{{ film.icon }}" width=""></button>\n
                              {% endfor %}\n
                          </div>\n
      \n
                          <div id="proizvodvideo-popup" class="video-popup">\n
                              <div class="video-popup-content">\n
                                  <button id="proizvodvideo-popup-close" class="btn-close">X</button>\n
                                  <div class="video-embed">\n
      \n
                                  </div>\n
                              </div>\n
                          </div>\n
                      </div>\n
                  </div>\n
              {% endif %}\n
          </div>\n
          <div class="">\n
              <div class="text-[13px] font-medium mb-10 text-[#00000099] mt-6">\n
                  * OdIgleDoLokomotive.rs ne garantuje za tačnost svih karakteristika i komentara vezanih za proizvode na sajtu.\n
              </div>\n
      \n
              <div class="rating-and-comments p-10 bg-white rounded-lg mb-10">\n
      \n
                  <div class="ocenjivanje" id="oceni-proizvod">\n
                      <h2 class="text-center text-xl font-bold leading-[1.3] mb-6 text-black tracking-tight">Ocene korisnika</h2>\n
                      \n
                      <div id="rateYo" class="mx-auto mb-6" data-product-id="{{ product.getId() }}" data-rating="{{ starRating.value }}" data-star-can-rate="{{ isLoggedIn ? starRating.canRate : 0 }}"></div>\n
      \n
                      {% if not isLoggedIn %}\n
                          <p class="text-center text-sm text-[#00000099] mb-6">\n
                              <a href="{{ path('login') }}" class="text-oidlRed font-bold hover:underline">Prijavite se</a> da biste ocenili proizvod.\n
                          </p>\n
                      {% endif %}\n
                      \n
                      <div class="rating">\n
                          {{ include('products/rating.html.twig', { starRating: starRating}) }}\n
                      </div>\n
      \n
                      <div class="text-center">\n
                          <p class="text-base font-medium leading-[1.3] mb-8">Ukoliko ste koristili ovaj proizvod, molimo dajte vaš komentar.</p>\n
                          <a href="javascript:void(0);" onclick="var c=document.getElementById('comments');c.style.display=(c.style.display==='block'?'none':'block');return false;" class="btn px-6 py-3 bg-[#6D9F88] text-white font-bold leading-[1.6] rounded-md text-base">Napiši recenziju</a>\n
                      </div>\n
      \n
      \n
      \n
                      <div id="comments-success" class="comments-success" style="display:none; color: red;">\n
                          <strong>Komentar je uspe&scaron;no poslat. Posle provere administratora biće prikazan!</strong>\n
                      </div>\n
                      <div id="comments" class="comments" style="display:none">\n
                          {#                    #}\n
                          {#                    <div class="komentar_error"> #}\n
                          {#                        <strong>Polje va&scaron;e ime je obavezno polje!</strong> #}\n
                          {#                        <strong>Pogre&scaron;an format za email!</strong> #}\n
                          {#                        <strong>Polje komentar je obavezno polje!</strong> #}\n
                          {#                        <strong>Validacioni kod je pogre&scaron;an!</strong> #}\n
                          {#                    </div> #}\n
      \n
                          <form action="{{ path('send_comment') }}" method="post" id="send-comment-form" novalidate>\n
                              <input type="hidden" name="product_id" value="{{ product.getId() }}">\n
                              <div class="form-wrapper">\n
                                  <div class="form-element">\n
                                      <label class="d-block"><strong>Vaše ime*</strong></label>\n
                                      <input type="text" name="name" size="20" maxlength="255" value="" class="required"/>\n
                                  </div>\n
                                  <div class="form-element">\n
                                      <label><strong>Vaš e-mail</strong></label>\n
                                      <input type="text" name="email" size="20" maxlength="255" value="" class="required email"/>\n
                                  </div>\n
                                  <div class="form-element">\n
                                      <label><strong>Vaš komentar*</strong></label>\n
                                      <textarea name="komentar" cols="30" rows="5" class="required"></textarea>\n
                                  </div>\n
      \n
                                  <div class="form-element">\n
                                      <input type="submit" id="send-comment-btn" style="display: none;" />\n
      \n
      \n
                                      <button type="button"\n
                                              onclick="submitComment()"\n
                                              class="btn px-6 py-3 bg-[#6D9F88] text-white font-bold leading-[1.6] rounded-md text-base">Pošalji</button>\n
      \n
                                  </div>\n
                              </div>\n
                          </form>\n
                      </div>\n
                  </div>\n
      \n
                  {% if comments|length > 0 %}\n
                      <div class="comments">\n
                          {# <p class="products_detail_header_smaller">Komentari proizvoda</p> #}\n
      \n
                          {% for comment in comments %}\n
                              <div class="single-comment">\n
                                  <p class="comment-header">\n
                                      <span class="comment-name">{{ comment.name }}</span>\n
                                      <span class="comment-date">{{ comment.vreme|date('d. M, Y.') }}</span>\n
                                  </p>\n
                                  <p class="comment-content">{{ comment.komentar }}</p>\n
                              </div>\n
                          {% endfor %}\n
                      </div>\n
                  {% endif %}\n
              </div>\n
      \n
              <div class="reklamacija tracking-tight mb-12">\n
                  <h2 class="text-base font-bold mb-6 text-black">Reklamacija i zamena proizvoda</h2>\n
                  <p class="text-base font-medium">\n
                      Ako niste zadovoljni proizvodom kupljenim na sajtu www.odigledolokomotive.rs, iz bilo kog razloga, u roku od 14 dana od dana prijema robe možete vratiti proizvod. Proizvod koji se vraća\n
                      mora biti u istom stanju kao i kada je nabavljen i mora sadržati svu tehničku dokumentaciju ( uputstvo, garanciju, pakovanje itd ). Proizvod mora biti bez bilo kakvih fizičkih oštećenja i\n
                      tragova korišćenja. Kupac je isključivo odgovoran za umanjenu vrednost robe koja nastane kao posledica rukovanja robom na način koji nije adekvatan, odnosno prevazilazi ono što je\n
                      neophodno da bi se ustanovili priroda, karakteristike i funkcionalnost robe. Kupac pismeno ili elektronski obaveštava prodavca u roku od 14 dana da vraća proizvod, pomoću Obrasca za\n
                      odustanak koji se nalazi na poledjini računa. Troškove transporta pri vraćanju robe snosi kupac. Posle 14 dana od dana prijema Od Igle Do Lokomotive doo nije obavezna da vrati novac ili\n
                      zameni robu. Za detaljnije informacije kliknite na link <a href="{{ path('pages_uslovi_koriscenja') }}" class="underline">Prava i obaveze potrošača</a>\n
                  </p>\n
              </div>\n
      \n
          </div>\n
              \n
              {#        <!--desni deo--> #}\n
              {#        #}{#        WTF IS THIS #}\n
              {#        <div class="webniproizvoddesno" style="margin-top: 20px;"> #}\n
      \n
              {#            <!-- Drugi fomular --> #}\n
              {#            <form name="form" method="post" action="{{ path('basket_add') }}" onsubmit="return provera_korpe_kolicina(this)"> #}\n
      \n
              {#                <div style="background:#eee;padding:5px;margin-bottom:10px; display: none;"> #}\n
              {#                    <span style="font-size:11px">[%old_price%]</span> cena: <span class="product_detail_price"><strong>[%price%]</strong></span> din #}\n
              {#                    <span style="font-size:11px">(PDV uključen)</span> #}\n
      \n
              {#                    <div id="mega_discount_div">[%mega_discount%]</div> #}\n
              {#                    <ul class="ul_red"> #}\n
              {#                        <li><span class="text12">Vreme isporuke:<strong>[%delivery_time%]</strong></span></li> #}\n
              {#                        <li><span class="[%delivery_style%]">Cena isporuke: [%delivery_price%]</span></li> #}\n
      \n
              {#                        {% if product.getFields()['weight'] > 0 %} #}\n
              {#                            <li><span class="text12">Težina za isporuku: {{ product.getFields()['weight']|numberFormat }} kg</span></li> #}\n
              {#                        {% endif %} #}\n
      \n
      \n
              {#                        <li><span class="text12">Roba se isporučuje na teritoriji Republike Srbije</span></li> #}\n
              {#                        <li><span class="text12">Na&#269;in dostave: Kurirska slu&#382;ba</span></li> #}\n
              {#                    </ul> #}\n
      \n
              {#                    <input name="pid" type="hidden" id="pid" value="{{ product.getId() }}"/> #}\n
              {#                    <input name="quantity" type="hidden" value="[%quantity%]"> #}\n
      \n
              {#                    <div style="margin-bottom:10px"> #}\n
              {#                        <strong>Količina:&nbsp;</strong> #}\n
              {#                        <input class="input_box" name="qty" size="16" maxlength="4" type="text" style="border:solid 1px #ccc; padding:5px;"> #}\n
              {#                    </div> #}\n
      \n
              {#                    <div class="dugmedodajukorpu">[%slika_kupi%]</div> #}\n
              {#                    [%guarantee%] #}\n
              {#                    [%service%] #}\n
      \n
              {#                </div> #}\n
      \n
              {#                <div class="webnisocijal" style="display:none"> #}\n
              {#                    <div style="background:#3b5998; text-align:center; float:left; width:33%;"> #}\n
              {#                        <a href="https://www.facebook.com/odigledolokomotive" target="_blank"><img src="/images/webni-social1.jpg" height="62" width="62" border="0" alt="webni social1"></a> #}\n
              {#                    </div> #}\n
              {#                    <div style="background:#56a3d9; text-align:center; float:left; width:32%; margin:0px 1%"> #}\n
              {#                        <a href="https://twitter.com/#!/OdIgleDoLokomot" target="_blank"><img src="/images/webni-social2.jpg" height="62" width="62" border="0" alt="webni social2"></a> #}\n
              {#                    </div> #}\n
              {#                </div> #}\n
      \n
      \n
              {#            </form> #}\n
              {#            <!-- Drugi fomular --> #}\n
              {#        </div> #}\n
      \n
          <div class="deklaracija-modal none">\n
              <div class="deklaracija-modal_content">\n
                  <a href="#" class="btn btn-close-deklaracija">x</a>\n
                  <ul>\n
                      <li><strong>Naziv proizvoda:</strong> {{ product.getProductName() }}</li>\n
                      <li><strong>Šifra proizvoda:</strong> {{ product.getProductCode() }}</li>\n
                      <li><strong>Uvoznik:</strong> {{ product.getSellerName()|default('') }}</li>\n
                      <li><strong>Zemlja porekla:</strong> {{ product.getZemljaPorekla() }}</li>\n
                  </ul>\n
              </div>\n
          </div>\n
      \n
      </div>\n
      \n
      {{ render(controller('App\\Controller\\LayoutController::rightSidebar')) }}\n
      \n
      {% endblock content %}\n
      \n
      {% block page_js %}\n
          {{ encore_entry_script_tags('proizvod') }}\n
      \n
          <script>\n
              $(function () {\n
      \n
                $('#carousel').flexslider({\n
                  animation: 'slide',\n
                  controlNav: false,\n
                  animationLoop: false,\n
                  slideshow: false,\n
                  itemWidth: 115,\n
                  itemMargin: 5,\n
                  asNavFor: '#slider'\n
                });\n
      \n
      \n
                $('#slider').flexslider({\n
                  animation: 'slide',\n
                  controlNav: false,\n
                  animationLoop: false,\n
                  slideshow: false,\n
                  sync: '#carousel'\n
                });\n
      \n
                $('.product-details-item .product-details-item-header').on('click', function(){\n
                    if( $(this).parent().hasClass('is-active')){\n
                        $(this).parent().removeClass('is-active');\n
                    } else {\n
                        $(this).parent().addClass('is-active');\n
                    }\n
                })\n
      \n
                  $('.deklaracija_show').click(function (e) {\n
                      e.preventDefault();\n
                      $('.deklaracija-modal').removeClass('none').fadeIn();\n
                  });\n
      \n
                  $('.btn-close-deklaracija').on('click', function (e) {\n
                      e.preventDefault();\n
                      $('.deklaracija-modal').fadeOut(function () {\n
                          $(this).addClass('none');\n
                      });\n
                  });\n
      \n
              });\n
          </script>\n
      {% endblock page_js %}\n
      \n
      \n
      {% block right_sidebar_block %}\n
      {% endblock right_sidebar_block %}\n
      \n
      """
    -name: "products/single.html.twig"
    -path: "/home/alatidev/public_html/templates/oidl/products/single.html.twig"
  }
  -phpFile: "/home/alatidev/public_html/vendor/twig/twig/src/Template.php"
  -phpLine: 460
}
  1. <div class="deklaracija-modal_content">
  2. <a href="#" class="btn btn-close-deklaracija">x</a>
  3. <ul>
  4. <li><strong>Naziv proizvoda:</strong> {{ product.getProductName() }}</li>
  5. <li><strong>Å ifra proizvoda:</strong> {{ product.getProductCode() }}</li>
  6. <li><strong>Uvoznik:</strong> {{ product.getSellerName()|default('') }}</li>
  7. <li><strong>Zemlja porekla:</strong> {{ product.getZemljaPorekla() }}</li>
  8. </ul>
  9. </div>
  10. </div>
  1. ";
  2. // line 169
  3. yield "
  4. ";
  5. // line 170
  6. yield from $this->unwrap()->yieldBlock('content', $context, $blocks);
  7. // line 171
  8. yield "
  9. ";
  10. // line 172
  11. yield from $this->unwrap()->yieldBlock('right_sidebar_block', $context, $blocks);
in vendor/twig/twig/src/Template.php -> doDisplay (line 402)
  1. {
  2. $context += $this->env->getGlobals();
  3. $blocks = array_merge($this->blocks, $blocks);
  4. try {
  5. yield from $this->doDisplay($context, $blocks);
  6. } catch (Error $e) {
  7. if (!$e->getSourceContext()) {
  8. $e->setSourceContext($this->getSourceContext());
  9. }
  1. $__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  2. $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "template", "products/single.html.twig"));
  3. $this->parent = $this->load("layout.html.twig", 2);
  4. yield from $this->parent->unwrap()->yield($context, array_merge($this->blocks, $blocks));
  5. $__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
  6. $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
in vendor/twig/twig/src/Template.php -> doDisplay (line 402)
  1. {
  2. $context += $this->env->getGlobals();
  3. $blocks = array_merge($this->blocks, $blocks);
  4. try {
  5. yield from $this->doDisplay($context, $blocks);
  6. } catch (Error $e) {
  7. if (!$e->getSourceContext()) {
  8. $e->setSourceContext($this->getSourceContext());
  9. }
  1. return $this->blocks;
  2. }
  3. public function display(array $context, array $blocks = []): void
  4. {
  5. foreach ($this->yield($context, $blocks) as $data) {
  6. echo $data;
  7. }
  8. }
  9. public function render(array $context): string
in vendor/twig/twig/src/Template.php -> display (line 373)
  1. ob_start();
  2. } else {
  3. ob_start(static function () { return ''; });
  4. }
  5. try {
  6. $this->display($context);
  7. } catch (\Throwable $e) {
  8. while (ob_get_level() > $level) {
  9. ob_end_clean();
  10. }
  1. yield from $this->template->yieldBlock($name, $context);
  2. }
  3. public function render(array $context = []): string
  4. {
  5. return $this->template->render($context);
  6. }
  7. /**
  8. * @return void
  9. */
  1. * @throws SyntaxError When an error occurred during compilation
  2. * @throws RuntimeError When an error occurred during rendering
  3. */
  4. public function render($name, array $context = []): string
  5. {
  6. return $this->load($name)->render($context);
  7. }
  8. /**
  9. * Displays a template.
  10. *
  1. if (null !== $block) {
  2. return $this->container->get('twig')->load($view)->renderBlock($block, $parameters);
  3. }
  4. return $this->container->get('twig')->render($view, $parameters);
  5. }
  6. private function doRender(string $view, ?string $block, array $parameters, ?Response $response, string $method): Response
  7. {
  8. $content = $this->doRenderView($view, $block, $parameters, $method);
  1. return $this->container->get('twig')->render($view, $parameters);
  2. }
  3. private function doRender(string $view, ?string $block, array $parameters, ?Response $response, string $method): Response
  4. {
  5. $content = $this->doRenderView($view, $block, $parameters, $method);
  6. $response ??= new Response();
  7. if (200 === $response->getStatusCode()) {
  8. foreach ($parameters as $v) {
  9. if ($v instanceof FormInterface && $v->isSubmitted() && !$v->isValid()) {
  1. * If an invalid form is found in the list of parameters, a 422 status code is returned.
  2. * Forms found in parameters are auto-cast to form views.
  3. */
  4. protected function render(string $view, array $parameters = [], ?Response $response = null): Response
  5. {
  6. return $this->doRender($view, null, $parameters, $response, __FUNCTION__);
  7. }
  8. /**
  9. * Renders a block in a view.
  10. *
AbstractController->render('products/single.html.twig', array('brand' => object(BrandModel), 'category' => object(Category), 'product' => object(DocumentProduct), 'isLoggedIn' => false, 'pdfs' => array(), 'films' => array(), 'starRating' => object(StarRatingModel), 'comments' => array(), 'similarProducts' => object(Result), 'metaTags' => object(WebSiteTagModel), 'removeRightSideBar' => true, 'opremaLinks' => array(), 'recaptchaSiteKey' => '6Lf4w0orAAAAANejfUMCOX72vS-gb2ZBGkH5Gi15')) in src/Controller/SingleProductController.php (line 90)
  1. $args['metaTags'] = $this->metaService->product($product);
  2. $args['removeRightSideBar'] = true;
  3. $args['opremaLinks'] = $this->proizvodiOpremaRepository->getProductLinks((int)$product['id']);
  4. $args['recaptchaSiteKey'] = $this->recaptchaSiteKey;
  5. return $this->render('products/single.html.twig', $args);
  6. }
  7. #[Route('/add-rating/', name: 'add_rating', methods: ['POST'])]
  8. public function addRating(Request $request): Response {
  9. $args = [];
  1. $this->dispatcher->dispatch($event, KernelEvents::CONTROLLER_ARGUMENTS);
  2. $controller = $event->getController();
  3. $arguments = $event->getArguments();
  4. // call controller
  5. $response = $controller(...$arguments);
  6. // view
  7. if (!$response instanceof Response) {
  8. $event = new ViewEvent($this, $request, $type, $response, $event);
  9. $this->dispatcher->dispatch($event, KernelEvents::VIEW);
  1. $request->headers->set('X-Php-Ob-Level', (string) ob_get_level());
  2. $this->requestStack->push($request);
  3. $response = null;
  4. try {
  5. return $response = $this->handleRaw($request, $type);
  6. } catch (\Throwable $e) {
  7. if ($e instanceof \Error && !$this->handleAllThrowables) {
  8. throw $e;
  9. }
  1. if (!$this->handlingHttpCache) {
  2. $this->resetServices = true;
  3. }
  4. try {
  5. return $this->getHttpKernel()->handle($request, $type, $catch);
  6. } finally {
  7. --$this->requestStackSize;
  8. }
  9. }
  1. ) {
  2. }
  3. public function run(): int
  4. {
  5. $response = $this->kernel->handle($this->request);
  6. if (Kernel::VERSION_ID >= 60400) {
  7. $response->send(false);
  8. if (\function_exists('fastcgi_finish_request') && !$this->debug) {
in vendor/autoload_runtime.php -> run (line 32)
  1. $app = $app(...$args);
  2. exit(
  3. $runtime
  4. ->getRunner($app)
  5. ->run()
  6. );
require_once('/home/alatidev/public_html/vendor/autoload_runtime.php') in index.php/ (line 5)
  1. <?php
  2. use App\Kernel;
  3. require_once __DIR__.'/vendor/autoload_runtime.php';
  4. return function (array $context) {
  5. return new Kernel($context['APP_ENV'], (bool) $context['APP_DEBUG']);
  6. };

ErrorException

Warning: Attempt to read property "seller_name" on false

  1. public function getSellerName() {
  2. if (empty($this->seller)) {
  3. return '';
  4. }
  5. $seller = json_decode($this->seller);
  6. return $seller->seller_name;
  7. }
  8. public function getZemljaPorekla() {
  9. if (empty($this->poreklo)) {
  10. return 'NRK';
  1. }
  2. // Some objects throw exceptions when they have __call, and the method we try
  3. // to call is not supported. If ignoreStrictCheck is true, we should return null.
  4. try {
  5. $ret = $object->$method(...$arguments);
  6. } catch (\BadMethodCallException $e) {
  7. if ($call && ($ignoreStrictCheck || !$env->isStrictVariables())) {
  8. return;
  9. }
  10. throw $e;
  1. // line 737
  2. yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, (isset($context["product"]) || array_key_exists("product", $context) ? $context["product"] : (function () { throw new RuntimeError('Variable "product" does not exist.', 737, $this->source); })()), "getProductCode", [], "method", false, false, false, 737), "html", null, true);
  3. yield "</li>
  4. <li><strong>Uvoznik:</strong> ";
  5. // line 738
  6. yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(((CoreExtension::getAttribute($this->env, $this->source, ($context["product"] ?? null), "getSellerName", [], "method", true, true, false, 738)) ? (Twig\Extension\CoreExtension::default(CoreExtension::getAttribute($this->env, $this->source, (isset($context["product"]) || array_key_exists("product", $context) ? $context["product"] : (function () { throw new RuntimeError('Variable "product" does not exist.', 738, $this->source); })()), "getSellerName", [], "method", false, false, false, 738), "")) : ("")), "html", null, true);
  7. yield "</li>
  8. <li><strong>Zemlja porekla:</strong> ";
  9. // line 739
  10. yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, (isset($context["product"]) || array_key_exists("product", $context) ? $context["product"] : (function () { throw new RuntimeError('Variable "product" does not exist.', 739, $this->source); })()), "getZemljaPorekla", [], "method", false, false, false, 739), "html", null, true);
  11. yield "</li>
in vendor/twig/twig/src/Template.php -> block_content (line 446)
  1. throw new \LogicException('A block must be a method on a \Twig\Template instance.');
  2. }
  3. if (null !== $template) {
  4. try {
  5. yield from $template->$block($context, $blocks);
  6. } catch (Error $e) {
  7. if (!$e->getSourceContext()) {
  8. $e->setSourceContext($template->getSourceContext());
  9. }
  1. ";
  2. // line 169
  3. yield "
  4. ";
  5. // line 170
  6. yield from $this->unwrap()->yieldBlock('content', $context, $blocks);
  7. // line 171
  8. yield "
  9. ";
  10. // line 172
  11. yield from $this->unwrap()->yieldBlock('right_sidebar_block', $context, $blocks);
in vendor/twig/twig/src/Template.php -> doDisplay (line 402)
  1. {
  2. $context += $this->env->getGlobals();
  3. $blocks = array_merge($this->blocks, $blocks);
  4. try {
  5. yield from $this->doDisplay($context, $blocks);
  6. } catch (Error $e) {
  7. if (!$e->getSourceContext()) {
  8. $e->setSourceContext($this->getSourceContext());
  9. }
  1. $__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  2. $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "template", "products/single.html.twig"));
  3. $this->parent = $this->load("layout.html.twig", 2);
  4. yield from $this->parent->unwrap()->yield($context, array_merge($this->blocks, $blocks));
  5. $__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
  6. $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
in vendor/twig/twig/src/Template.php -> doDisplay (line 402)
  1. {
  2. $context += $this->env->getGlobals();
  3. $blocks = array_merge($this->blocks, $blocks);
  4. try {
  5. yield from $this->doDisplay($context, $blocks);
  6. } catch (Error $e) {
  7. if (!$e->getSourceContext()) {
  8. $e->setSourceContext($this->getSourceContext());
  9. }
  1. return $this->blocks;
  2. }
  3. public function display(array $context, array $blocks = []): void
  4. {
  5. foreach ($this->yield($context, $blocks) as $data) {
  6. echo $data;
  7. }
  8. }
  9. public function render(array $context): string
in vendor/twig/twig/src/Template.php -> display (line 373)
  1. ob_start();
  2. } else {
  3. ob_start(static function () { return ''; });
  4. }
  5. try {
  6. $this->display($context);
  7. } catch (\Throwable $e) {
  8. while (ob_get_level() > $level) {
  9. ob_end_clean();
  10. }
  1. yield from $this->template->yieldBlock($name, $context);
  2. }
  3. public function render(array $context = []): string
  4. {
  5. return $this->template->render($context);
  6. }
  7. /**
  8. * @return void
  9. */
  1. * @throws SyntaxError When an error occurred during compilation
  2. * @throws RuntimeError When an error occurred during rendering
  3. */
  4. public function render($name, array $context = []): string
  5. {
  6. return $this->load($name)->render($context);
  7. }
  8. /**
  9. * Displays a template.
  10. *
  1. if (null !== $block) {
  2. return $this->container->get('twig')->load($view)->renderBlock($block, $parameters);
  3. }
  4. return $this->container->get('twig')->render($view, $parameters);
  5. }
  6. private function doRender(string $view, ?string $block, array $parameters, ?Response $response, string $method): Response
  7. {
  8. $content = $this->doRenderView($view, $block, $parameters, $method);
  1. return $this->container->get('twig')->render($view, $parameters);
  2. }
  3. private function doRender(string $view, ?string $block, array $parameters, ?Response $response, string $method): Response
  4. {
  5. $content = $this->doRenderView($view, $block, $parameters, $method);
  6. $response ??= new Response();
  7. if (200 === $response->getStatusCode()) {
  8. foreach ($parameters as $v) {
  9. if ($v instanceof FormInterface && $v->isSubmitted() && !$v->isValid()) {
  1. * If an invalid form is found in the list of parameters, a 422 status code is returned.
  2. * Forms found in parameters are auto-cast to form views.
  3. */
  4. protected function render(string $view, array $parameters = [], ?Response $response = null): Response
  5. {
  6. return $this->doRender($view, null, $parameters, $response, __FUNCTION__);
  7. }
  8. /**
  9. * Renders a block in a view.
  10. *
AbstractController->render('products/single.html.twig', array('brand' => object(BrandModel), 'category' => object(Category), 'product' => object(DocumentProduct), 'isLoggedIn' => false, 'pdfs' => array(), 'films' => array(), 'starRating' => object(StarRatingModel), 'comments' => array(), 'similarProducts' => object(Result), 'metaTags' => object(WebSiteTagModel), 'removeRightSideBar' => true, 'opremaLinks' => array(), 'recaptchaSiteKey' => '6Lf4w0orAAAAANejfUMCOX72vS-gb2ZBGkH5Gi15')) in src/Controller/SingleProductController.php (line 90)
  1. $args['metaTags'] = $this->metaService->product($product);
  2. $args['removeRightSideBar'] = true;
  3. $args['opremaLinks'] = $this->proizvodiOpremaRepository->getProductLinks((int)$product['id']);
  4. $args['recaptchaSiteKey'] = $this->recaptchaSiteKey;
  5. return $this->render('products/single.html.twig', $args);
  6. }
  7. #[Route('/add-rating/', name: 'add_rating', methods: ['POST'])]
  8. public function addRating(Request $request): Response {
  9. $args = [];
  1. $this->dispatcher->dispatch($event, KernelEvents::CONTROLLER_ARGUMENTS);
  2. $controller = $event->getController();
  3. $arguments = $event->getArguments();
  4. // call controller
  5. $response = $controller(...$arguments);
  6. // view
  7. if (!$response instanceof Response) {
  8. $event = new ViewEvent($this, $request, $type, $response, $event);
  9. $this->dispatcher->dispatch($event, KernelEvents::VIEW);
  1. $request->headers->set('X-Php-Ob-Level', (string) ob_get_level());
  2. $this->requestStack->push($request);
  3. $response = null;
  4. try {
  5. return $response = $this->handleRaw($request, $type);
  6. } catch (\Throwable $e) {
  7. if ($e instanceof \Error && !$this->handleAllThrowables) {
  8. throw $e;
  9. }
  1. if (!$this->handlingHttpCache) {
  2. $this->resetServices = true;
  3. }
  4. try {
  5. return $this->getHttpKernel()->handle($request, $type, $catch);
  6. } finally {
  7. --$this->requestStackSize;
  8. }
  9. }
  1. ) {
  2. }
  3. public function run(): int
  4. {
  5. $response = $this->kernel->handle($this->request);
  6. if (Kernel::VERSION_ID >= 60400) {
  7. $response->send(false);
  8. if (\function_exists('fastcgi_finish_request') && !$this->debug) {
in vendor/autoload_runtime.php -> run (line 32)
  1. $app = $app(...$args);
  2. exit(
  3. $runtime
  4. ->getRunner($app)
  5. ->run()
  6. );
require_once('/home/alatidev/public_html/vendor/autoload_runtime.php') in index.php/ (line 5)
  1. <?php
  2. use App\Kernel;
  3. require_once __DIR__.'/vendor/autoload_runtime.php';
  4. return function (array $context) {
  5. return new Kernel($context['APP_ENV'], (bool) $context['APP_DEBUG']);
  6. };

Logs

No log messages

Stack Traces 2

[2/2] RuntimeError
Twig\Error\RuntimeError:
An exception has been thrown during the rendering of a template ("Warning: Attempt to read property "seller_name" on false") in "products/single.html.twig" at line 738.

  at templates/oidl/products/single.html.twig:738
  at Twig\Template->yieldBlock('content', array('brand' => object(BrandModel), 'category' => object(Category), 'product' => object(DocumentProduct), 'isLoggedIn' => false, 'pdfs' => array(), 'films' => array(), 'starRating' => object(StarRatingModel), 'comments' => array(), 'similarProducts' => object(Result), 'metaTags' => object(WebSiteTagModel), 'removeRightSideBar' => true, 'opremaLinks' => array(), 'recaptchaSiteKey' => '6Lf4w0orAAAAANejfUMCOX72vS-gb2ZBGkH5Gi15', 'app' => object(AppVariable), 'site_id' => 'oidl', 'base_url_oidl' => 'https://www.odigledolokomotive.rs'), array('dropdown_menu_js' => array(object(__TwigTemplate_fb9a6f160c9a02c463bb90b530ce9cb1), 'block_dropdown_menu_js'), 'dropdown_menu_css' => array(object(__TwigTemplate_fb9a6f160c9a02c463bb90b530ce9cb1), 'block_dropdown_menu_css'), 'meta' => array(object(__TwigTemplate_fb9a6f160c9a02c463bb90b530ce9cb1), 'block_meta'), 'header_block' => array(object(__TwigTemplate_fb9a6f160c9a02c463bb90b530ce9cb1), 'block_header_block'), 'left_sidebar_block' => array(object(__TwigTemplate_fb9a6f160c9a02c463bb90b530ce9cb1), 'block_left_sidebar_block'), 'content' => array(object(__TwigTemplate_a451e6ebc5de14f2e7de36e9a5a77af3), 'block_content'), 'right_sidebar_block' => array(object(__TwigTemplate_a451e6ebc5de14f2e7de36e9a5a77af3), 'block_right_sidebar_block'), 'footer_block' => array(object(__TwigTemplate_fb9a6f160c9a02c463bb90b530ce9cb1), 'block_footer_block'), 'page_js' => array(object(__TwigTemplate_a451e6ebc5de14f2e7de36e9a5a77af3), 'block_page_js'), 'inpage_js' => array(object(__TwigTemplate_fb9a6f160c9a02c463bb90b530ce9cb1), 'block_inpage_js')))
     (var/cache/dev/twig/f2/f2741199a2e327822a585bd2fca81e2e.php:199)
  at __TwigTemplate_fb9a6f160c9a02c463bb90b530ce9cb1->doDisplay(array('brand' => object(BrandModel), 'category' => object(Category), 'product' => object(DocumentProduct), 'isLoggedIn' => false, 'pdfs' => array(), 'films' => array(), 'starRating' => object(StarRatingModel), 'comments' => array(), 'similarProducts' => object(Result), 'metaTags' => object(WebSiteTagModel), 'removeRightSideBar' => true, 'opremaLinks' => array(), 'recaptchaSiteKey' => '6Lf4w0orAAAAANejfUMCOX72vS-gb2ZBGkH5Gi15', 'app' => object(AppVariable), 'site_id' => 'oidl', 'base_url_oidl' => 'https://www.odigledolokomotive.rs'), array('dropdown_menu_js' => array(object(__TwigTemplate_fb9a6f160c9a02c463bb90b530ce9cb1), 'block_dropdown_menu_js'), 'dropdown_menu_css' => array(object(__TwigTemplate_fb9a6f160c9a02c463bb90b530ce9cb1), 'block_dropdown_menu_css'), 'meta' => array(object(__TwigTemplate_fb9a6f160c9a02c463bb90b530ce9cb1), 'block_meta'), 'header_block' => array(object(__TwigTemplate_fb9a6f160c9a02c463bb90b530ce9cb1), 'block_header_block'), 'left_sidebar_block' => array(object(__TwigTemplate_fb9a6f160c9a02c463bb90b530ce9cb1), 'block_left_sidebar_block'), 'content' => array(object(__TwigTemplate_a451e6ebc5de14f2e7de36e9a5a77af3), 'block_content'), 'right_sidebar_block' => array(object(__TwigTemplate_a451e6ebc5de14f2e7de36e9a5a77af3), 'block_right_sidebar_block'), 'footer_block' => array(object(__TwigTemplate_fb9a6f160c9a02c463bb90b530ce9cb1), 'block_footer_block'), 'page_js' => array(object(__TwigTemplate_a451e6ebc5de14f2e7de36e9a5a77af3), 'block_page_js'), 'inpage_js' => array(object(__TwigTemplate_fb9a6f160c9a02c463bb90b530ce9cb1), 'block_inpage_js')))
     (vendor/twig/twig/src/Template.php:402)
  at Twig\Template->yield(array('brand' => object(BrandModel), 'category' => object(Category), 'product' => object(DocumentProduct), 'isLoggedIn' => false, 'pdfs' => array(), 'films' => array(), 'starRating' => object(StarRatingModel), 'comments' => array(), 'similarProducts' => object(Result), 'metaTags' => object(WebSiteTagModel), 'removeRightSideBar' => true, 'opremaLinks' => array(), 'recaptchaSiteKey' => '6Lf4w0orAAAAANejfUMCOX72vS-gb2ZBGkH5Gi15', 'app' => object(AppVariable), 'site_id' => 'oidl', 'base_url_oidl' => 'https://www.odigledolokomotive.rs'), array('dropdown_menu_js' => array(object(__TwigTemplate_fb9a6f160c9a02c463bb90b530ce9cb1), 'block_dropdown_menu_js'), 'dropdown_menu_css' => array(object(__TwigTemplate_fb9a6f160c9a02c463bb90b530ce9cb1), 'block_dropdown_menu_css'), 'meta' => array(object(__TwigTemplate_fb9a6f160c9a02c463bb90b530ce9cb1), 'block_meta'), 'header_block' => array(object(__TwigTemplate_fb9a6f160c9a02c463bb90b530ce9cb1), 'block_header_block'), 'left_sidebar_block' => array(object(__TwigTemplate_fb9a6f160c9a02c463bb90b530ce9cb1), 'block_left_sidebar_block'), 'content' => array(object(__TwigTemplate_a451e6ebc5de14f2e7de36e9a5a77af3), 'block_content'), 'right_sidebar_block' => array(object(__TwigTemplate_a451e6ebc5de14f2e7de36e9a5a77af3), 'block_right_sidebar_block'), 'footer_block' => array(object(__TwigTemplate_fb9a6f160c9a02c463bb90b530ce9cb1), 'block_footer_block'), 'page_js' => array(object(__TwigTemplate_a451e6ebc5de14f2e7de36e9a5a77af3), 'block_page_js'), 'inpage_js' => array(object(__TwigTemplate_fb9a6f160c9a02c463bb90b530ce9cb1), 'block_inpage_js')))
     (var/cache/dev/twig/0c/0c7ddc21b2fc6c432d66b333e6655808.php:55)
  at __TwigTemplate_a451e6ebc5de14f2e7de36e9a5a77af3->doDisplay(array('brand' => object(BrandModel), 'category' => object(Category), 'product' => object(DocumentProduct), 'isLoggedIn' => false, 'pdfs' => array(), 'films' => array(), 'starRating' => object(StarRatingModel), 'comments' => array(), 'similarProducts' => object(Result), 'metaTags' => object(WebSiteTagModel), 'removeRightSideBar' => true, 'opremaLinks' => array(), 'recaptchaSiteKey' => '6Lf4w0orAAAAANejfUMCOX72vS-gb2ZBGkH5Gi15', 'app' => object(AppVariable), 'site_id' => 'oidl', 'base_url_oidl' => 'https://www.odigledolokomotive.rs'), array('content' => array(object(__TwigTemplate_a451e6ebc5de14f2e7de36e9a5a77af3), 'block_content'), 'page_js' => array(object(__TwigTemplate_a451e6ebc5de14f2e7de36e9a5a77af3), 'block_page_js'), 'right_sidebar_block' => array(object(__TwigTemplate_a451e6ebc5de14f2e7de36e9a5a77af3), 'block_right_sidebar_block')))
     (vendor/twig/twig/src/Template.php:402)
  at Twig\Template->yield(array('brand' => object(BrandModel), 'category' => object(Category), 'product' => object(DocumentProduct), 'isLoggedIn' => false, 'pdfs' => array(), 'films' => array(), 'starRating' => object(StarRatingModel), 'comments' => array(), 'similarProducts' => object(Result), 'metaTags' => object(WebSiteTagModel), 'removeRightSideBar' => true, 'opremaLinks' => array(), 'recaptchaSiteKey' => '6Lf4w0orAAAAANejfUMCOX72vS-gb2ZBGkH5Gi15', 'app' => object(AppVariable), 'site_id' => 'oidl', 'base_url_oidl' => 'https://www.odigledolokomotive.rs'), array('content' => array(object(__TwigTemplate_a451e6ebc5de14f2e7de36e9a5a77af3), 'block_content'), 'page_js' => array(object(__TwigTemplate_a451e6ebc5de14f2e7de36e9a5a77af3), 'block_page_js'), 'right_sidebar_block' => array(object(__TwigTemplate_a451e6ebc5de14f2e7de36e9a5a77af3), 'block_right_sidebar_block')))
     (vendor/twig/twig/src/Template.php:358)
  at Twig\Template->display(array('brand' => object(BrandModel), 'category' => object(Category), 'product' => object(DocumentProduct), 'isLoggedIn' => false, 'pdfs' => array(), 'films' => array(), 'starRating' => object(StarRatingModel), 'comments' => array(), 'similarProducts' => object(Result), 'metaTags' => object(WebSiteTagModel), 'removeRightSideBar' => true, 'opremaLinks' => array(), 'recaptchaSiteKey' => '6Lf4w0orAAAAANejfUMCOX72vS-gb2ZBGkH5Gi15'))
     (vendor/twig/twig/src/Template.php:373)
  at Twig\Template->render(array('brand' => object(BrandModel), 'category' => object(Category), 'product' => object(DocumentProduct), 'isLoggedIn' => false, 'pdfs' => array(), 'films' => array(), 'starRating' => object(StarRatingModel), 'comments' => array(), 'similarProducts' => object(Result), 'metaTags' => object(WebSiteTagModel), 'removeRightSideBar' => true, 'opremaLinks' => array(), 'recaptchaSiteKey' => '6Lf4w0orAAAAANejfUMCOX72vS-gb2ZBGkH5Gi15'))
     (vendor/twig/twig/src/TemplateWrapper.php:51)
  at Twig\TemplateWrapper->render(array('brand' => object(BrandModel), 'category' => object(Category), 'product' => object(DocumentProduct), 'isLoggedIn' => false, 'pdfs' => array(), 'films' => array(), 'starRating' => object(StarRatingModel), 'comments' => array(), 'similarProducts' => object(Result), 'metaTags' => object(WebSiteTagModel), 'removeRightSideBar' => true, 'opremaLinks' => array(), 'recaptchaSiteKey' => '6Lf4w0orAAAAANejfUMCOX72vS-gb2ZBGkH5Gi15'))
     (vendor/twig/twig/src/Environment.php:333)
  at Twig\Environment->render('products/single.html.twig', array('brand' => object(BrandModel), 'category' => object(Category), 'product' => object(DocumentProduct), 'isLoggedIn' => false, 'pdfs' => array(), 'films' => array(), 'starRating' => object(StarRatingModel), 'comments' => array(), 'similarProducts' => object(Result), 'metaTags' => object(WebSiteTagModel), 'removeRightSideBar' => true, 'opremaLinks' => array(), 'recaptchaSiteKey' => '6Lf4w0orAAAAANejfUMCOX72vS-gb2ZBGkH5Gi15'))
     (vendor/symfony/framework-bundle/Controller/AbstractController.php:462)
  at Symfony\Bundle\FrameworkBundle\Controller\AbstractController->doRenderView('products/single.html.twig', null, array('brand' => object(BrandModel), 'category' => object(Category), 'product' => object(DocumentProduct), 'isLoggedIn' => false, 'pdfs' => array(), 'films' => array(), 'starRating' => object(StarRatingModel), 'comments' => array(), 'similarProducts' => object(Result), 'metaTags' => object(WebSiteTagModel), 'removeRightSideBar' => true, 'opremaLinks' => array(), 'recaptchaSiteKey' => '6Lf4w0orAAAAANejfUMCOX72vS-gb2ZBGkH5Gi15'), 'render')
     (vendor/symfony/framework-bundle/Controller/AbstractController.php:467)
  at Symfony\Bundle\FrameworkBundle\Controller\AbstractController->doRender('products/single.html.twig', null, array('brand' => object(BrandModel), 'category' => object(Category), 'product' => object(DocumentProduct), 'isLoggedIn' => false, 'pdfs' => array(), 'films' => array(), 'starRating' => object(StarRatingModel), 'comments' => array(), 'similarProducts' => object(Result), 'metaTags' => object(WebSiteTagModel), 'removeRightSideBar' => true, 'opremaLinks' => array(), 'recaptchaSiteKey' => '6Lf4w0orAAAAANejfUMCOX72vS-gb2ZBGkH5Gi15'), null, 'render')
     (vendor/symfony/framework-bundle/Controller/AbstractController.php:279)
  at Symfony\Bundle\FrameworkBundle\Controller\AbstractController->render('products/single.html.twig', array('brand' => object(BrandModel), 'category' => object(Category), 'product' => object(DocumentProduct), 'isLoggedIn' => false, 'pdfs' => array(), 'films' => array(), 'starRating' => object(StarRatingModel), 'comments' => array(), 'similarProducts' => object(Result), 'metaTags' => object(WebSiteTagModel), 'removeRightSideBar' => true, 'opremaLinks' => array(), 'recaptchaSiteKey' => '6Lf4w0orAAAAANejfUMCOX72vS-gb2ZBGkH5Gi15'))
     (src/Controller/SingleProductController.php:90)
  at App\Controller\SingleProductController->single(object(Request), 'guralica-retro-461-pink')
     (vendor/symfony/http-kernel/HttpKernel.php:183)
  at Symfony\Component\HttpKernel\HttpKernel->handleRaw(object(Request), 1)
     (vendor/symfony/http-kernel/HttpKernel.php:76)
  at Symfony\Component\HttpKernel\HttpKernel->handle(object(Request), 1, true)
     (vendor/symfony/http-kernel/Kernel.php:191)
  at Symfony\Component\HttpKernel\Kernel->handle(object(Request))
     (vendor/symfony/runtime/Runner/Symfony/HttpKernelRunner.php:35)
  at Symfony\Component\Runtime\Runner\Symfony\HttpKernelRunner->run()
     (vendor/autoload_runtime.php:32)
  at require_once('/home/alatidev/public_html/vendor/autoload_runtime.php')
     (index.php/:5)                
[1/2] ErrorException
ErrorException:
Warning: Attempt to read property "seller_name" on false

  at src/Solr/DocumentProduct.php:277
  at App\Solr\DocumentProduct->getSellerName()
     (vendor/twig/twig/src/Extension/CoreExtension.php:1919)
  at Twig\Extension\CoreExtension::getAttribute(object(Environment), object(Source), object(DocumentProduct), 'getSellerName', array(), 'method', false, false, false, 738)
     (var/cache/dev/twig/0c/0c7ddc21b2fc6c432d66b333e6655808.php:1468)
  at __TwigTemplate_a451e6ebc5de14f2e7de36e9a5a77af3->block_content(array('brand' => object(BrandModel), 'category' => object(Category), 'product' => object(DocumentProduct), 'isLoggedIn' => false, 'pdfs' => array(), 'films' => array(), 'starRating' => object(StarRatingModel), 'comments' => array(), 'similarProducts' => object(Result), 'metaTags' => object(WebSiteTagModel), 'removeRightSideBar' => true, 'opremaLinks' => array(), 'recaptchaSiteKey' => '6Lf4w0orAAAAANejfUMCOX72vS-gb2ZBGkH5Gi15', 'app' => object(AppVariable), 'site_id' => 'oidl', 'base_url_oidl' => 'https://www.odigledolokomotive.rs', 'brandImage' => ''), array('dropdown_menu_js' => array(object(__TwigTemplate_fb9a6f160c9a02c463bb90b530ce9cb1), 'block_dropdown_menu_js'), 'dropdown_menu_css' => array(object(__TwigTemplate_fb9a6f160c9a02c463bb90b530ce9cb1), 'block_dropdown_menu_css'), 'meta' => array(object(__TwigTemplate_fb9a6f160c9a02c463bb90b530ce9cb1), 'block_meta'), 'header_block' => array(object(__TwigTemplate_fb9a6f160c9a02c463bb90b530ce9cb1), 'block_header_block'), 'left_sidebar_block' => array(object(__TwigTemplate_fb9a6f160c9a02c463bb90b530ce9cb1), 'block_left_sidebar_block'), 'content' => array(object(__TwigTemplate_a451e6ebc5de14f2e7de36e9a5a77af3), 'block_content'), 'right_sidebar_block' => array(object(__TwigTemplate_a451e6ebc5de14f2e7de36e9a5a77af3), 'block_right_sidebar_block'), 'footer_block' => array(object(__TwigTemplate_fb9a6f160c9a02c463bb90b530ce9cb1), 'block_footer_block'), 'page_js' => array(object(__TwigTemplate_a451e6ebc5de14f2e7de36e9a5a77af3), 'block_page_js'), 'inpage_js' => array(object(__TwigTemplate_fb9a6f160c9a02c463bb90b530ce9cb1), 'block_inpage_js')))
     (vendor/twig/twig/src/Template.php:446)
  at Twig\Template->yieldBlock('content', array('brand' => object(BrandModel), 'category' => object(Category), 'product' => object(DocumentProduct), 'isLoggedIn' => false, 'pdfs' => array(), 'films' => array(), 'starRating' => object(StarRatingModel), 'comments' => array(), 'similarProducts' => object(Result), 'metaTags' => object(WebSiteTagModel), 'removeRightSideBar' => true, 'opremaLinks' => array(), 'recaptchaSiteKey' => '6Lf4w0orAAAAANejfUMCOX72vS-gb2ZBGkH5Gi15', 'app' => object(AppVariable), 'site_id' => 'oidl', 'base_url_oidl' => 'https://www.odigledolokomotive.rs'), array('dropdown_menu_js' => array(object(__TwigTemplate_fb9a6f160c9a02c463bb90b530ce9cb1), 'block_dropdown_menu_js'), 'dropdown_menu_css' => array(object(__TwigTemplate_fb9a6f160c9a02c463bb90b530ce9cb1), 'block_dropdown_menu_css'), 'meta' => array(object(__TwigTemplate_fb9a6f160c9a02c463bb90b530ce9cb1), 'block_meta'), 'header_block' => array(object(__TwigTemplate_fb9a6f160c9a02c463bb90b530ce9cb1), 'block_header_block'), 'left_sidebar_block' => array(object(__TwigTemplate_fb9a6f160c9a02c463bb90b530ce9cb1), 'block_left_sidebar_block'), 'content' => array(object(__TwigTemplate_a451e6ebc5de14f2e7de36e9a5a77af3), 'block_content'), 'right_sidebar_block' => array(object(__TwigTemplate_a451e6ebc5de14f2e7de36e9a5a77af3), 'block_right_sidebar_block'), 'footer_block' => array(object(__TwigTemplate_fb9a6f160c9a02c463bb90b530ce9cb1), 'block_footer_block'), 'page_js' => array(object(__TwigTemplate_a451e6ebc5de14f2e7de36e9a5a77af3), 'block_page_js'), 'inpage_js' => array(object(__TwigTemplate_fb9a6f160c9a02c463bb90b530ce9cb1), 'block_inpage_js')))
     (var/cache/dev/twig/f2/f2741199a2e327822a585bd2fca81e2e.php:199)
  at __TwigTemplate_fb9a6f160c9a02c463bb90b530ce9cb1->doDisplay(array('brand' => object(BrandModel), 'category' => object(Category), 'product' => object(DocumentProduct), 'isLoggedIn' => false, 'pdfs' => array(), 'films' => array(), 'starRating' => object(StarRatingModel), 'comments' => array(), 'similarProducts' => object(Result), 'metaTags' => object(WebSiteTagModel), 'removeRightSideBar' => true, 'opremaLinks' => array(), 'recaptchaSiteKey' => '6Lf4w0orAAAAANejfUMCOX72vS-gb2ZBGkH5Gi15', 'app' => object(AppVariable), 'site_id' => 'oidl', 'base_url_oidl' => 'https://www.odigledolokomotive.rs'), array('dropdown_menu_js' => array(object(__TwigTemplate_fb9a6f160c9a02c463bb90b530ce9cb1), 'block_dropdown_menu_js'), 'dropdown_menu_css' => array(object(__TwigTemplate_fb9a6f160c9a02c463bb90b530ce9cb1), 'block_dropdown_menu_css'), 'meta' => array(object(__TwigTemplate_fb9a6f160c9a02c463bb90b530ce9cb1), 'block_meta'), 'header_block' => array(object(__TwigTemplate_fb9a6f160c9a02c463bb90b530ce9cb1), 'block_header_block'), 'left_sidebar_block' => array(object(__TwigTemplate_fb9a6f160c9a02c463bb90b530ce9cb1), 'block_left_sidebar_block'), 'content' => array(object(__TwigTemplate_a451e6ebc5de14f2e7de36e9a5a77af3), 'block_content'), 'right_sidebar_block' => array(object(__TwigTemplate_a451e6ebc5de14f2e7de36e9a5a77af3), 'block_right_sidebar_block'), 'footer_block' => array(object(__TwigTemplate_fb9a6f160c9a02c463bb90b530ce9cb1), 'block_footer_block'), 'page_js' => array(object(__TwigTemplate_a451e6ebc5de14f2e7de36e9a5a77af3), 'block_page_js'), 'inpage_js' => array(object(__TwigTemplate_fb9a6f160c9a02c463bb90b530ce9cb1), 'block_inpage_js')))
     (vendor/twig/twig/src/Template.php:402)
  at Twig\Template->yield(array('brand' => object(BrandModel), 'category' => object(Category), 'product' => object(DocumentProduct), 'isLoggedIn' => false, 'pdfs' => array(), 'films' => array(), 'starRating' => object(StarRatingModel), 'comments' => array(), 'similarProducts' => object(Result), 'metaTags' => object(WebSiteTagModel), 'removeRightSideBar' => true, 'opremaLinks' => array(), 'recaptchaSiteKey' => '6Lf4w0orAAAAANejfUMCOX72vS-gb2ZBGkH5Gi15', 'app' => object(AppVariable), 'site_id' => 'oidl', 'base_url_oidl' => 'https://www.odigledolokomotive.rs'), array('dropdown_menu_js' => array(object(__TwigTemplate_fb9a6f160c9a02c463bb90b530ce9cb1), 'block_dropdown_menu_js'), 'dropdown_menu_css' => array(object(__TwigTemplate_fb9a6f160c9a02c463bb90b530ce9cb1), 'block_dropdown_menu_css'), 'meta' => array(object(__TwigTemplate_fb9a6f160c9a02c463bb90b530ce9cb1), 'block_meta'), 'header_block' => array(object(__TwigTemplate_fb9a6f160c9a02c463bb90b530ce9cb1), 'block_header_block'), 'left_sidebar_block' => array(object(__TwigTemplate_fb9a6f160c9a02c463bb90b530ce9cb1), 'block_left_sidebar_block'), 'content' => array(object(__TwigTemplate_a451e6ebc5de14f2e7de36e9a5a77af3), 'block_content'), 'right_sidebar_block' => array(object(__TwigTemplate_a451e6ebc5de14f2e7de36e9a5a77af3), 'block_right_sidebar_block'), 'footer_block' => array(object(__TwigTemplate_fb9a6f160c9a02c463bb90b530ce9cb1), 'block_footer_block'), 'page_js' => array(object(__TwigTemplate_a451e6ebc5de14f2e7de36e9a5a77af3), 'block_page_js'), 'inpage_js' => array(object(__TwigTemplate_fb9a6f160c9a02c463bb90b530ce9cb1), 'block_inpage_js')))
     (var/cache/dev/twig/0c/0c7ddc21b2fc6c432d66b333e6655808.php:55)
  at __TwigTemplate_a451e6ebc5de14f2e7de36e9a5a77af3->doDisplay(array('brand' => object(BrandModel), 'category' => object(Category), 'product' => object(DocumentProduct), 'isLoggedIn' => false, 'pdfs' => array(), 'films' => array(), 'starRating' => object(StarRatingModel), 'comments' => array(), 'similarProducts' => object(Result), 'metaTags' => object(WebSiteTagModel), 'removeRightSideBar' => true, 'opremaLinks' => array(), 'recaptchaSiteKey' => '6Lf4w0orAAAAANejfUMCOX72vS-gb2ZBGkH5Gi15', 'app' => object(AppVariable), 'site_id' => 'oidl', 'base_url_oidl' => 'https://www.odigledolokomotive.rs'), array('content' => array(object(__TwigTemplate_a451e6ebc5de14f2e7de36e9a5a77af3), 'block_content'), 'page_js' => array(object(__TwigTemplate_a451e6ebc5de14f2e7de36e9a5a77af3), 'block_page_js'), 'right_sidebar_block' => array(object(__TwigTemplate_a451e6ebc5de14f2e7de36e9a5a77af3), 'block_right_sidebar_block')))
     (vendor/twig/twig/src/Template.php:402)
  at Twig\Template->yield(array('brand' => object(BrandModel), 'category' => object(Category), 'product' => object(DocumentProduct), 'isLoggedIn' => false, 'pdfs' => array(), 'films' => array(), 'starRating' => object(StarRatingModel), 'comments' => array(), 'similarProducts' => object(Result), 'metaTags' => object(WebSiteTagModel), 'removeRightSideBar' => true, 'opremaLinks' => array(), 'recaptchaSiteKey' => '6Lf4w0orAAAAANejfUMCOX72vS-gb2ZBGkH5Gi15', 'app' => object(AppVariable), 'site_id' => 'oidl', 'base_url_oidl' => 'https://www.odigledolokomotive.rs'), array('content' => array(object(__TwigTemplate_a451e6ebc5de14f2e7de36e9a5a77af3), 'block_content'), 'page_js' => array(object(__TwigTemplate_a451e6ebc5de14f2e7de36e9a5a77af3), 'block_page_js'), 'right_sidebar_block' => array(object(__TwigTemplate_a451e6ebc5de14f2e7de36e9a5a77af3), 'block_right_sidebar_block')))
     (vendor/twig/twig/src/Template.php:358)
  at Twig\Template->display(array('brand' => object(BrandModel), 'category' => object(Category), 'product' => object(DocumentProduct), 'isLoggedIn' => false, 'pdfs' => array(), 'films' => array(), 'starRating' => object(StarRatingModel), 'comments' => array(), 'similarProducts' => object(Result), 'metaTags' => object(WebSiteTagModel), 'removeRightSideBar' => true, 'opremaLinks' => array(), 'recaptchaSiteKey' => '6Lf4w0orAAAAANejfUMCOX72vS-gb2ZBGkH5Gi15'))
     (vendor/twig/twig/src/Template.php:373)
  at Twig\Template->render(array('brand' => object(BrandModel), 'category' => object(Category), 'product' => object(DocumentProduct), 'isLoggedIn' => false, 'pdfs' => array(), 'films' => array(), 'starRating' => object(StarRatingModel), 'comments' => array(), 'similarProducts' => object(Result), 'metaTags' => object(WebSiteTagModel), 'removeRightSideBar' => true, 'opremaLinks' => array(), 'recaptchaSiteKey' => '6Lf4w0orAAAAANejfUMCOX72vS-gb2ZBGkH5Gi15'))
     (vendor/twig/twig/src/TemplateWrapper.php:51)
  at Twig\TemplateWrapper->render(array('brand' => object(BrandModel), 'category' => object(Category), 'product' => object(DocumentProduct), 'isLoggedIn' => false, 'pdfs' => array(), 'films' => array(), 'starRating' => object(StarRatingModel), 'comments' => array(), 'similarProducts' => object(Result), 'metaTags' => object(WebSiteTagModel), 'removeRightSideBar' => true, 'opremaLinks' => array(), 'recaptchaSiteKey' => '6Lf4w0orAAAAANejfUMCOX72vS-gb2ZBGkH5Gi15'))
     (vendor/twig/twig/src/Environment.php:333)
  at Twig\Environment->render('products/single.html.twig', array('brand' => object(BrandModel), 'category' => object(Category), 'product' => object(DocumentProduct), 'isLoggedIn' => false, 'pdfs' => array(), 'films' => array(), 'starRating' => object(StarRatingModel), 'comments' => array(), 'similarProducts' => object(Result), 'metaTags' => object(WebSiteTagModel), 'removeRightSideBar' => true, 'opremaLinks' => array(), 'recaptchaSiteKey' => '6Lf4w0orAAAAANejfUMCOX72vS-gb2ZBGkH5Gi15'))
     (vendor/symfony/framework-bundle/Controller/AbstractController.php:462)
  at Symfony\Bundle\FrameworkBundle\Controller\AbstractController->doRenderView('products/single.html.twig', null, array('brand' => object(BrandModel), 'category' => object(Category), 'product' => object(DocumentProduct), 'isLoggedIn' => false, 'pdfs' => array(), 'films' => array(), 'starRating' => object(StarRatingModel), 'comments' => array(), 'similarProducts' => object(Result), 'metaTags' => object(WebSiteTagModel), 'removeRightSideBar' => true, 'opremaLinks' => array(), 'recaptchaSiteKey' => '6Lf4w0orAAAAANejfUMCOX72vS-gb2ZBGkH5Gi15'), 'render')
     (vendor/symfony/framework-bundle/Controller/AbstractController.php:467)
  at Symfony\Bundle\FrameworkBundle\Controller\AbstractController->doRender('products/single.html.twig', null, array('brand' => object(BrandModel), 'category' => object(Category), 'product' => object(DocumentProduct), 'isLoggedIn' => false, 'pdfs' => array(), 'films' => array(), 'starRating' => object(StarRatingModel), 'comments' => array(), 'similarProducts' => object(Result), 'metaTags' => object(WebSiteTagModel), 'removeRightSideBar' => true, 'opremaLinks' => array(), 'recaptchaSiteKey' => '6Lf4w0orAAAAANejfUMCOX72vS-gb2ZBGkH5Gi15'), null, 'render')
     (vendor/symfony/framework-bundle/Controller/AbstractController.php:279)
  at Symfony\Bundle\FrameworkBundle\Controller\AbstractController->render('products/single.html.twig', array('brand' => object(BrandModel), 'category' => object(Category), 'product' => object(DocumentProduct), 'isLoggedIn' => false, 'pdfs' => array(), 'films' => array(), 'starRating' => object(StarRatingModel), 'comments' => array(), 'similarProducts' => object(Result), 'metaTags' => object(WebSiteTagModel), 'removeRightSideBar' => true, 'opremaLinks' => array(), 'recaptchaSiteKey' => '6Lf4w0orAAAAANejfUMCOX72vS-gb2ZBGkH5Gi15'))
     (src/Controller/SingleProductController.php:90)
  at App\Controller\SingleProductController->single(object(Request), 'guralica-retro-461-pink')
     (vendor/symfony/http-kernel/HttpKernel.php:183)
  at Symfony\Component\HttpKernel\HttpKernel->handleRaw(object(Request), 1)
     (vendor/symfony/http-kernel/HttpKernel.php:76)
  at Symfony\Component\HttpKernel\HttpKernel->handle(object(Request), 1, true)
     (vendor/symfony/http-kernel/Kernel.php:191)
  at Symfony\Component\HttpKernel\Kernel->handle(object(Request))
     (vendor/symfony/runtime/Runner/Symfony/HttpKernelRunner.php:35)
  at Symfony\Component\Runtime\Runner\Symfony\HttpKernelRunner->run()
     (vendor/autoload_runtime.php:32)
  at require_once('/home/alatidev/public_html/vendor/autoload_runtime.php')
     (index.php/:5)