templates/Theme/Projet/Projet/Projet/mplaceslocal.html.twig line 73

Open in your IDE?
  1. {% extends "Theme/Users/User/layoutuser.html.twig" %}
  2. {% block meta %}
  3.     {{ parent() }}
  4.     <meta name="keywords" content="{{ site }}, Catalogue, Produit,{{ keywords }}"/>
  5.     <meta name="author" content="Noel Kenfack"/>
  6.     <meta name="description" content="{{ site }} | Liste des boutiques {{ site }}"/>
  7.     <link rel="stylesheet" href="{{ asset('autocomplete/css/jquery.auto-complete.css') }}">
  8. {% endblock %}
  9. {% block title %}
  10.     {{ parent() }} | Boutiques
  11. {% endblock %}
  12. {% block stylesheets %}
  13.     {{ parent() }}
  14.     <style>
  15.         .selectpicker_hidden .nice-select{
  16.             display: none!important;
  17.         }
  18.         .select2-container--default .select2-selection--single {
  19.             padding-top: 4px!important;
  20.             height: 40px!important;
  21.         }
  22.         .select2-container--default .select2-selection--single .select2-selection__rendered {
  23.             line-height: 28px!important;
  24.             font-size: 15px;
  25.         }
  26.         .select2-container--default .select2-selection--single .select2-selection__arrow b {
  27.             margin-top: 7px!important;
  28.         }
  29.     </style>
  30. {% endblock %}
  31. {% block userblog_body %}
  32. <section style="padding: 15px 0px 5px 0px; background: #f7f7f7;">
  33.     <div class="container">
  34.         <div class="row">
  35.             <div class="col-md-8">
  36.                 <ul class="breadcrumbs">
  37.                     <li><a href="{{ path('users_user_acces_plateforme') }}"><i class="fa fa-home" style="font-size: 11px;"></i> {{ 'Accueil'|trans }}</a></li>
  38.                     <li><a href="{{ path('projet_projet_mplaces_local') }}">{{ 'Boutiques'|trans }}</a></li>
  39.                     <li>{{ 'Toutes les boutiques'|trans }}</li>
  40.                 </ul>
  41.             </div>
  42.             <div class="col-md-4 text-right">
  43.                 {% include "Theme/General/Template/Menu/contacts.html.twig" %}
  44.             </div>
  45.         </div>
  46.     </div>
  47. </section>
  48. <div class="section-content">
  49. <div class="container">
  50. <div class="row">
  51.     <div class="col-md-12">
  52.         <div class="animecourant-panel" style="display: block;">
  53.                 
  54.         </div>
  55.     </div>
  56. </div>
  57. <div class="row">
  58.     <div class="col-md-3" style="padding: 3px;">
  59.         <div class="toutleblock">
  60.         <div style="margin:0px; box-shadow:0px 0px 2px rgba(0,0,0,0.01); background: #fff;">
  61.         <ul class="list-group">
  62.             
  63.             {{ render(controller("App\\Controller\\Produit\\Produit\\CategorieController:menusouscategorie", {'taille': 10})) }}
  64.             
  65.         </ul>
  66.         </div>
  67.         
  68.         <div style="margin: 7px 0px 0px 0px; box-shadow:0px 0px 2px rgba(0,0,0,0.01); background: #fff;">
  69.          <ul class="list-group">
  70.             
  71.             {{ render(controller("App\\Controller\\Produit\\Produit\\MarqueproduitController:menumarque", {'taille': 10, 'position': 'produit'})) }}
  72.             
  73.          </ul>
  74.         </div>
  75.         
  76.          <div class="col-xs-12 col-sm-12 col-md-12 col-lg-12 stop-courant-panel">
  77.          </div>
  78.          </div>
  79.     </div>
  80.     
  81.     <div class="col-md-9" style="padding: 3px;">
  82.         <div class="row" style="margin: 0px 0px 15px 0px;">
  83.             <div class="col-md-12">
  84.                 <h3 class="breadcrumbs-title">
  85.                  {% if pays != null %}{{ pays.nom }} <span class="fa fa-angle-right" style="font-size: 12px;"></span>{% endif %} {% if ville != null %}{{ ville.nom }} <span class="fa fa-angle-right" style="font-size: 12px;"></span>{% endif %}{% if typeprojet != null %}{{ typeprojet.nom }} <span class="fa fa-angle-right" style="font-size: 12px;"></span>{% endif %} {% if ville == null and pays == null and typeprojet == null %}Boutiques <span class="fa fa-angle-right" style="font-size: 12px;"></span> Liste complète{% else %}Boutiques {% endif %}
  86.                 </h3>
  87.                 <div class="divider"></div>
  88.             </div>
  89.         </div>
  90.         <form class="row search-form-top-side"  action="{{ path('projet_projet_select_filtre_projet') }}" method="post" id="submit-form-filter">
  91.           <div class="form-group col-md-3 selectpicker_hidden">
  92.             <select name="paysid" id="struct_pays_filtre" class="form-control" style="width: 100%!important;">
  93.               <option value="0">{{ 'Tous les pays'|trans }}</option>
  94.               {% for p in liste_pays %}
  95.               <option value="{{ p.id }}" {% if p == pays %}selected{% else %}{% if p.nom == 'cameroun' %}selected{% else %}{% endif %}{% endif %}>{{ p.nom }}</option>
  96.               {% endfor %}
  97.             </select>
  98.           </div>
  99.           <div class="form-group col-md-3">
  100.             <select name="secteurid" id="struct_typefiltre" class="form-control" style="min-width: 100%!important;">
  101.               <option value="0">{{ 'Tous les secteurs'|trans }}</option>
  102.               {% for t in liste_type %}
  103.               <option value="{{ t.id }}" {% if t == typeprojet %}selected{% else %}{% endif %}>{{ t.nom }}</option>
  104.               {% endfor %}
  105.             </select>
  106.           </div>
  107.           <div class="form-group col-md-3 zone-recherche-quartier" value="0" name="">
  108.             <input type="text" name="villename" id="departement_etab" class="form-control" placeholder="Ville" value="{% if ville != null %}{{ ville.nom }}{% endif %}" style="height: 40px;"/>
  109.           </div>
  110.           <div class="form-group col-md-3">
  111.             <button class="btn waves-effect waves-light bg-struct" title="{{ 'Filtrer'|trans }}" style="margin-top: -5px; float: right; width: 100%; border-radius: 7px;" type="submit">Envoyer <i class="fa fa-search"></i></button>
  112.           </div>
  113.         </form>
  114.         
  115.         
  116.         <div class="card-body" style="margin: 0px; padding: 0px;">
  117.         <div class="basis-member staff" style="margin: 0px; padding: 0px;">
  118.         <div class="row">
  119.         {% for projet in liste_projet %}
  120.             <div class="col-md-4">
  121.                 {% include 'Theme/Projet/Projet/Projet/projetdescription.html.twig' %}
  122.             </div>
  123.         {% else %}
  124.             <div class="col-md-12">
  125.                 <ul class="collapsible collapsible-accordion" data-collapsible="accordion" style="box-shadow: none;">
  126.                     <div style="height: 400px; border-left: 4px solid #3565ae; padding: 5px;">
  127.                         <div style="border-left: 5px solid #3565ae; padding: 3px; background: #f5f5f5; color: red;">{{ 'Aucune information disponible pour cette section'|trans }}</div>
  128.                     </div>
  129.                 </ul>            
  130.             </div>
  131.         {% endfor %}
  132.         </div>
  133.         </div>
  134.         </div>
  135.         
  136.         <div class="clearfix"></div>
  137.           {% if nombrepage > 0 %}
  138.                         
  139.             {% if page > 1 and page <= nombrepage %}
  140.             {% set pagepre = page - 1 %}
  141.             {% else %}
  142.                 {% set pagepre = nombrepage %}
  143.             {% endif %}
  144.             {% if page < nombrepage %}
  145.                 {% set pagesuiv = page + 1 %}
  146.             {% else %}
  147.                 {% set pagesuiv =  1 %}
  148.             {% endif %}
  149.             {% if nombrepage < 5 %}
  150.                 {% set debut = 1 %}
  151.                 {% set fin = nombrepage %}
  152.             {% else %}
  153.                 {% if page > 2 and page < (nombrepage - 2) %}
  154.                     {% set debut = page - 2 %}
  155.                     {% if page + 2 >= nombrepage %}
  156.                         {% set fin = nombrepage %}
  157.                     {% else %}
  158.                         {% set fin = page + 2 %}
  159.                     {% endif %}
  160.                 {% else %}
  161.                     {% if page <= 2 %}
  162.                         {% if page == 1 %}
  163.                             {% set debut = 1 %}
  164.                             {% set fin = page + 3 %}
  165.                         {% else %}
  166.                             {% set debut = 1 %}
  167.                             {% set fin = page + 2 %}
  168.                         {% endif %}
  169.                     {% else %}
  170.                         {% set debut = page - 2 %}
  171.                         {% if page + 2 >= nombrepage %}
  172.                             {% set fin = nombrepage %}
  173.                         {% else %}
  174.                             {% set fin = page + 2 %}
  175.                         {% endif %}
  176.                     {% endif %}
  177.                 {% endif %}
  178.                 
  179.             {% endif %}
  180.             
  181.             <div class="row" style="margin: 15px  0px;">
  182.                <div class="col-md-12">
  183.                <div class="flex-container" style="background: #fafafa; ">
  184.                   <div class="paginate-ctn">
  185.                     <a href="{{ path('produit_produit_marques_prod', {'page': 1 }) }}" style="display: inline-block;" class="round-effect"> <span class="fa fa-fast-backward"></span> </a>
  186.                     <a href="{{ path('produit_produit_marques_prod', {'page': pagepre }) }}" style="display: inline-block;" class="round-effect"> <span class="fa fa-step-backward"></span> </a>
  187.                     {% for p in debut..fin %}
  188.                         <a href="{{ path('produit_produit_marques_prod', {'page': p }) }}" style="display: inline-block;" class="round-effect {% if p == page %}activepage{% endif %}">{{ p }}</a>
  189.                     {% endfor %}
  190.                     <a href="{{ path('produit_produit_marques_prod', {'page': pagesuiv }) }}" style="display: inline-block;" class="round-effect"> <span class="fa fa-step-forward"></span> </a>
  191.                     <a href="{{ path('produit_produit_marques_prod', {'page': nombrepage }) }}" style="display: inline-block;" class="round-effect"> <span class="fa fa-fast-forward"></span> </a>
  192.                  </div>
  193.                </div>
  194.                </div>
  195.             </div>
  196.             <div class="clearfix"></div>
  197.             {% else %}
  198.             <div class="row" style="margin: 15px  0px;">
  199.                <div class="col-md-12">
  200.                <div class="flex-container" style="background: #fafafa; ">
  201.                   <div class="paginate-ctn">
  202.                     <a href="{{ path('produit_produit_marques_prod', {'page': page }) }}" style="display: inline-block;" class="round-effect"> <span class="fa fa-fast-backward"></span> </a>
  203.                     <a href="{{ path('produit_produit_marques_prod', {'page': page }) }}" style="display: inline-block;" class="round-effect"> <span class="fa fa-step-backward"></span> </a>
  204.                         <a href="{{ path('produit_produit_marques_prod', {'page': 1 }) }}" style="display: inline-block;" class="round-effect activepage">1</a>
  205.                     <a href="{{ path('produit_produit_marques_prod', {'page': page }) }}" style="display: inline-block;" class="round-effect"> <span class="fa fa-step-forward"></span> </a>
  206.                     <a href="{{ path('produit_produit_marques_prod', {'page': page }) }}" style="display: inline-block;" class="round-effect"> <span class="fa fa-fast-forward"></span> </a>
  207.                 </div>
  208.                 </div>
  209.             </div>
  210.             </div>
  211.             <div class="clearfix"></div>
  212.             {% endif %}
  213.     </div>
  214. </div>
  215. </div>
  216. </div>
  217. {% endblock %}
  218. {% block srcjavascripttemplate %}
  219. <script src="{{ asset('template/js/onvisible.js') }}" type="text/javascript"></script>
  220. <script src="{{ asset('autocomplete/js/jquery.auto-complete.js') }}"></script>
  221. <link href="{{ asset('template/css/select2.min.css') }}" rel="stylesheet"/>
  222. <script src="{{ asset('template/js/select2.min.js') }}"></script>
  223. {% endblock %}
  224. {% block javascripttemplate %}
  225. var $disabledResults = $("#struct_pays_filtre");
  226. $disabledResults.select2();
  227. var bouge = 1;
  228. var dimension = 200;
  229. function activateelement()
  230. {
  231. var visibility = visibleElement('.animecourant-panel');
  232. if(visibility && bouge == 0){
  233.     bouge = 1;
  234.     $('.toutleblock').css('position','relative');
  235.     $('.toutleblock').css('bottom','0px');
  236.     $('.toutleblock').css('margin-bottom','0px');
  237. }
  238. }
  239. function stopelement()
  240. {
  241. var visibility = visibleElement('.stop-courant-panel');
  242. if(visibility && bouge == 1){
  243.     if(visibleElement('.animecourant-panel') && visibleElement('.stop-courant-panel'))
  244.     {
  245.     }else{
  246.     bouge = 0;
  247.     $('.toutleblock').css('position','fixed');
  248.     $('.toutleblock').css('width',dimension+'px');
  249.     $('.toutleblock').css('bottom','7px');
  250.     $('.toutleblock').css('margin-bottom','0px');
  251.     }
  252. }
  253. }
  254. function controlScroll()
  255. {
  256.     var largeur = ($(window).width());
  257.     dimension = $('.toutleblock').width();
  258.     if (largeur >= 768)
  259.     {
  260.         if(visibleElement('.animecourant-panel') && visibleElement('.stop-courant-panel'))
  261.         {
  262.         $('.toutleblock').css('position','fixed');
  263.         $('.toutleblock').css('width',dimension+'px');
  264.         }else{
  265.         window.setInterval(function() { stopelement(); }, 100);
  266.         window.setInterval(function() { activateelement(); }, 100);
  267.         }
  268.         
  269.     }
  270. }
  271. controlScroll();
  272. $('.modal-trigger-add-pme').click(function(){
  273.     openformNewProjet();
  274. });
  275. {% if add == 1 %}
  276.     openformNewProjet();
  277. {% endif %}
  278. function openformNewProjet()
  279. {
  280.     $('#modal-souscription-offert').modal('show');
  281.     
  282.     $('.wait-chargement-content-module').show();
  283.     $('.content-module-loading').hide();
  284.     $.post('{{ path('projet_projet_form_add_new_projet') }}', function(data){
  285.         $('.wait-chargement-content-module').hide();
  286.         $('.content-module-loading').html(data);
  287.         $('.content-module-loading').show();
  288.     });
  289. }
  290. var jsonresult = {{ render(controller("App\\Controller\\Produit\\Service\\VilleController:autorechercheville", {'taille': 500})) }};
  291. var j = 0;
  292. var departchoices = [];
  293. for(var n in jsonresult){
  294.     nom = jsonresult[n].nom;
  295.     drapeau = jsonresult[n].drapeau;
  296.     id = jsonresult[n].id;
  297.     num = nom+":"+drapeau;
  298.     courantelem = [nom,drapeau,id];
  299.     departchoices[j] = courantelem;
  300.     j++;
  301. }
  302. $('#departement_etab').autoComplete({
  303.     minChars: 0,
  304.     source: function(term, suggest){
  305.         term = term.toLowerCase();
  306.         var suggestions = [];
  307.         for (i=0;i< departchoices.length;i++)
  308.             if (~(departchoices[i][0]+' '+departchoices[i][1]).toLowerCase().indexOf(term)) suggestions.push(departchoices[i]);
  309.         suggest(suggestions);
  310.     },
  311.     renderItem: function (item, search){
  312.         search = search.replace(/[-\/\\^$*+?.()|[\]{}]/g, '\\$&');
  313.         var re = new RegExp("(" + search.split(' ').join('|') + ")", "gi");
  314.         return '<div class="autocomplete-suggestion" data-langname="'+item[0]+'" data-lang="'+item[1]+'" data-id="'+item[2]+'"  data-val="'+search+'" data-img="'+item[1]+'"><img src="{{ asset('') }}'+item[1]+'" style="width: 30px; height: 20px; padding: 2px; margin-bottom: -5px!important;"> '+item[0].replace(re, "<b>$1</b>")+'</div>';
  315.     },
  316.     onSelect: function(e, term, item){
  317.         $('#departement_etab').val(item.data("langname"));
  318.     },
  319.     cache: false
  320. });
  321. $("#departement_etab").focus(function(){
  322.     rechercheutilisateur(); 
  323. });
  324. function rechercheutilisateur()
  325. {
  326.     if($('#departement_etab').val().length >= 2)// on vérifier si l'utilisateur a entré plus de 5 caractères
  327.     {
  328.       var libre = $('.zone-recherche-quartier').attr('value'); // on initialise la variable libre
  329.       var donnee = $('#departement_etab').val();  //on récupère la donnée
  330.       if (libre == 0 && donnee != $('.zone-recherche-quartier').attr('name')){ // on vérifier si la requête précedente est rétournée et que la recherche ne corespnd pas à la dernière effectuée
  331.       $('.zone-recherche-quartier').attr('value',1); // on bloque d'autres recherches
  332.       $('.zone-recherche-quartier').attr('name',donnee); // on enregistre la recherche effectuer.
  333.      
  334.       $.ajax({
  335.             url : '{{ path('produit_service_auto_recherche_ville') }}',
  336.             data : 'donnee='+donnee+'',
  337.             type : 'POST',
  338.             dataType : 'json',
  339.             success : function(data, statut){
  340.                 
  341.                 $('.zone-recherche-quartier').attr('value',0); // on libère d'autre recherches
  342.                 compt = departchoices.length;
  343.                 jsonresulta =  data;
  344.                 
  345.                 
  346.                 for(var n in jsonresulta){
  347.                     nom = jsonresulta[n].nom;
  348.                     drapeau = jsonresulta[n].drapeau;
  349.                     id = jsonresulta[n].id;
  350.                     num = nom+":"+drapeau;
  351.                     courantelem = [nom,drapeau,id];
  352.                     departchoices[compt] = courantelem;
  353.                     compt++;
  354.                 }
  355.               setTimeout(function(){ rechercheutilisateur(); }, 100);  // on relance la fonction après 200 ms.
  356.               
  357.             }
  358.         });
  359.       }else{
  360.         setTimeout(function() { rechercheutilisateur(); }, 100);
  361.       }
  362.     }else{
  363.         setTimeout(function() { rechercheutilisateur(); }, 100);
  364.     }
  365. }
  366. {% endblock %}