Deprecated: Return type of Google\Model::offsetExists($offset) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/html/sanralsmme/vendor/google/apiclient/src/Model.php on line 256

Deprecated: Return type of Google\Model::offsetGet($offset) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/html/sanralsmme/vendor/google/apiclient/src/Model.php on line 261

Deprecated: Return type of Google\Model::offsetSet($offset, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/html/sanralsmme/vendor/google/apiclient/src/Model.php on line 268

Deprecated: Return type of Google\Model::offsetUnset($offset) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/html/sanralsmme/vendor/google/apiclient/src/Model.php on line 278

Deprecated: Return type of Google\Collection::current() should either be compatible with Iterator::current(): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/html/sanralsmme/vendor/google/apiclient/src/Collection.php on line 22

Deprecated: Return type of Google\Collection::next() should either be compatible with Iterator::next(): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/html/sanralsmme/vendor/google/apiclient/src/Collection.php on line 38

Deprecated: Return type of Google\Collection::key() should either be compatible with Iterator::key(): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/html/sanralsmme/vendor/google/apiclient/src/Collection.php on line 30

Deprecated: Return type of Google\Collection::valid() should either be compatible with Iterator::valid(): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/html/sanralsmme/vendor/google/apiclient/src/Collection.php on line 43

Deprecated: Return type of Google\Collection::rewind() should either be compatible with Iterator::rewind(): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/html/sanralsmme/vendor/google/apiclient/src/Collection.php on line 14

Deprecated: Return type of Google\Collection::count() should either be compatible with Countable::count(): int, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/html/sanralsmme/vendor/google/apiclient/src/Collection.php on line 49
Symfony Profiler

templates/frontend/index.html.twig line 141

Open in your IDE?
  1. {% extends 'base.html.twig' %}
  2.     {% block title %}
  3.         {% set metaTitle = 'SANRAL eSDD - Electronic Supplier Development Desk' %}
  4.         {{ metaTitle }}
  5.     {% endblock %}
  6.     {% block meta_decription %}
  7.         {% set metaTitle = 'SANRAL eSDD - Electronic Supplier Development Desk' %}
  8.         {% set metaDescription = "SMME's can make use of this portal to attain SANRAL tenders" %}
  9.         <meta name="twitter:card" content="summary" />
  10.         <meta name="twitter:site" content="Sanral" />
  11.         <meta name="twitter:title" content="{{ metaTitle }}" />
  12.         <meta name="twitter:description" content="{{ metaDescription }}" />
  13. {#        <meta name="twitter:image" content="https://hugenouttunnel.nerdw.com/images/home/{{ home_data.ogImage }}" />#}
  14.         <meta name="twitter:url" content="{{ app.request.uri }}" />
  15. {#        <meta name="og:image" content="https://hugenouttunnel.nerdw.com/images/home/{{ home_data.ogImage }}" />#}
  16.         <meta name="og:title" content="{{ metaTitle }}" />
  17.         <meta name="og:description" content="{{ metaDescription }}" />
  18.         <meta name="og:url" content="{{ app.request.uri }}" />
  19.         <meta name="description" content="{{ metaDescription }}">
  20.     {% endblock %}
  21.     {% block stylesheets %}
  22.         {{ parent() }}
  23.     {% endblock %}
  24.     {% block layout %}
  25.         <div class="container-fluid">
  26.             {% if copy is not null %}
  27.                 {{ copy|raw }}
  28.             {% endif %}
  29.             <div class="row">
  30.                 <div class="col-12 col-md-9">
  31.                     <div class="row">
  32.                         <div class="col-12">
  33.                             <div style="border: solid 2px #ff6600;margin-bottom: 22px">
  34.                                 <div class="row">
  35.                                     <div class="col-12 text-center" style="padding: 13px;display: flex;align-items: center;justify-content: center;">
  36.                                         <i class="fas fa-info-circle" style="font-size: 35px;color: #ff6600;margin-right: 20px"></i>
  37.                                         All tenders advertised here are for 2nd tier procurement only. Visit
  38.                                         &nbsp;<a href="https://www.nra.co.za" target="_blank" style="color: #ff6600">www.nra.co.za</a> &nbsp; for other tenders.
  39.                                     </div>
  40.                                 </div>
  41.                             </div>
  42.                         </div>
  43.                         <div class="col-12 col-md-4" style="margin-bottom: 30px">
  44.                             <div class="card">
  45.                                 <div class="card-header clementine p-0" style="padding: 6px 14px !important">
  46.                                     <nav class="navbar card-nav">
  47.                                         <span class="navbar-brand mb-0 h1 text-uppercase text-white card-title">Closing Soon</span>
  48.                                     </nav>
  49.                                 </div>
  50.                                 <ul class="list-group list-group-flush">
  51.                                     {% if closing_soon|length > 0 %}
  52.                                         {% for closing in closing_soon %}
  53.                                             <li class="list-group-item pb-1">
  54.                                                 <dl>
  55.                                                     <dt class="pt-1">
  56.                                                         <a class="tender-title text-black teaser-2-lines" href="{{ path('tenders_page',{'id':closing.id}) }}">
  57.                                                             {{ closing.contractDescription }}
  58.                                                         </a>
  59.                                                     </dt>
  60.                                                     <dd class="py-0">
  61.                                                         <span>{{ closing.closingDate|date('l d F Y') }}</span>
  62.                                                         <span>
  63.                                                             <p>Operations</p>
  64.                                                         </span>
  65.                                                     </dd>
  66.                                                 </dl>
  67.                                             </li>
  68.                                         {% endfor %}
  69.                                     {% else %}
  70.                                         <li class="list-group-item pb-1">
  71.                                             There are no tenders closing soon.
  72.                                             <br>&nbsp;
  73.                                         </li>
  74.                                     {% endif %}
  75.                                 </ul>
  76.                             </div>
  77.                         </div>
  78.                         {% for region_arr in regions %}
  79.                             {% set regionId = region_arr['region']['regionId'] %}
  80.                             {% set regionName = region_arr['region']['regionName'] %}
  81.                             {% set thumb = region_arr['region']['thumb'] %}
  82.                             <div class="col-12 col-md-4" style="margin-bottom: 30px">
  83.                                 <div class="card">
  84.                                 <div class="card-header rain-forest">
  85.                                     <div class="row m-0">
  86.                                         <div class="region-title text-white">
  87.                                             <a class="navbar-brand text-white text-uppercase py-2" href="{{ path('tender_region_page',{'region':regionName|replace({' ':'-'})|lower, 'region_id': regionId}) }}">
  88.                                                 {{ regionName }}
  89.                                             </a>
  90.                                         </div>
  91.                                         <div class="py-0 pl-3 info-icon ml-auto">
  92.                                             <a type="button" href="#" target="_blank" class="btn btn-link text-white tooltip-toggle" title="Click for more regional information">
  93.                                                 <span class="tooltip-icon">?</span>
  94.                                                 <div class="tooltip p-3">
  95.                                                     <div class="row">
  96.                                                         <img src="{{ asset('images/regions/' ~ thumb) }}" class="img-fluid" style="max-height: 80px; display: block;margin-left: auto;margin-right: auto">
  97.                                                     </div>
  98.                                                 </div>
  99.                                             </a>
  100.                                         </div>
  101.                                     </div>
  102.                                 </div>
  103.                                 <ul class="list-group list-group-flush">
  104.                                     {% if region_arr['region']['data']|length > 0 %}
  105.                                         {% for region in region_arr['region']['data'] %}
  106.                                         <li class="list-group-item pb-1">
  107.                                             <dl>
  108.                                                 <dt class="pt-1">
  109.                                                     <a class="tender-title text-black teaser-2-lines" href="{{ path('tenders_page',{'id':region.id}) }}">
  110.                                                         {{ region.contractDescription }}
  111.                                                     </a>
  112.                                                 </dt>
  113.                                                 <dd class="py-0">
  114.                                                     <span>{{ region.closingDate|date('l d F Y') }}</span>
  115.                                                     <span><p>{{ region.category }}</p></span>
  116.                                                 </dd>
  117.                                             </dl>
  118.                                         </li>
  119.                                         {% endfor %}
  120.                                     {% else %}
  121.                                         <li class="list-group-item pb-1">
  122.                                             There currently no advertised tenders in this region.
  123.                                         </li>
  124.                                     {% endif %}
  125.                                 </ul>
  126.                                 {% if region_arr['region']['data']|length > 0 %}
  127.                                     <div class="text-center">
  128.                                         <a href="{{ path('tender_region_page',{'region':regionName|replace({' ':'-'})|lower, 'region_id': regionId}) }}" class="btn btn-link btn-more py-2 btn-lg btn-block rounded-0 text-white rain-forest">
  129.                                             View All
  130.                                         </a>
  131.                                     </div>
  132.                                 {% endif %}
  133.                             </div>
  134.                             </div>
  135.                         {% endfor %}
  136.                     </div>
  137.                 </div>
  138.                 <div class="col-12 col-md-3">
  139.                     {{ render(controller(
  140.                         'App\\Controller\\CarouselController::getCarousel',
  141.                         {
  142.                             'page': 'home'
  143.                         }
  144.                     )) }}
  145.                 </div>
  146.             </div>
  147.             <div class="row">
  148.                 <div class="col-12">
  149.                     <h4>
  150.                         Are you a SMME or a New Entrant?
  151.                     </h4>
  152.                 </div>
  153.             </div>
  154.             <div class="row justify-content-between">
  155.                 {% set count = 0 %}
  156.                 {% set offset = '' %}
  157.                 {% for entrant in entrants %}
  158.                     {% set count = count + 1 %}
  159.                     {% if count == 1 %}
  160.                         {% set offset = 'col-md-offset-1' %}
  161.                     {% endif %}
  162.                     <div class="col-12 col-md-2 no-gutters">
  163.                         <a href="{{ entrant.website }}" target="_blank">
  164.                             <img src="{{ asset('images/entrants/' ~ entrant.logo) }}" class="img-fluid" alt="{{ entrant.name }}">
  165.                         </a>
  166.                     </div>
  167.                     {% set offset = '' %}
  168.                 {% endfor %}
  169.             </div>
  170.         </div>
  171.         <!-- Subscription Form -->
  172.         <div id="subscribe-con">
  173.             <div class="modal fade" id="subscribe" tabindex="-1" role="dialog" aria-label="myModalLabel" aria-hidden="true">
  174.                 {{ render(controller('App\\Controller\\HomeController::getSubscribeForm')) }}
  175.             </div>
  176.         </div>
  177.     {% endblock %}
  178.     {% block javascripts %}
  179.         {{ parent() }}
  180.         <script>
  181.             {% if subscribed == 1 %}
  182.                 var now = new Date();
  183.                 now.setDate(now.getDate() + 100000000);
  184.                 document.cookie = "subscribe=1; expires=" + now + "; path=/";
  185.             {% endif %}
  186.             cookie_value = (document.cookie.match(/^(?:.*;)?\s*subscribe\s*=\s*([^;]+)(?:.*)?$/)||[,null])[1];
  187.             if(cookie_value == null || cookie_value == 0) {
  188.                 var now = new Date();
  189.                 now.setDate(now.getDate() + 1);
  190.                 document.cookie = "subscribe=0; expires=" + now + "; path=/";
  191.             }
  192.             if(cookie_value == 1){
  193.                 jQuery('#subscribe-con').empty();
  194.             }
  195.             jQuery(document).ready(function(){
  196.                 jQuery(window).on('load', function() {
  197.                     jQuery('#subscribe').modal('show');
  198.                 });
  199.             });
  200.         </script>
  201.     {% endblock %}