templates/refonte/pages/home.html.twig line 1

Open in your IDE?
  1. {% extends 'refonte/base.html.twig' %}
  2. {% block content %}
  3.     {% set allCategories = publicationManager.getAllCategories()  %}
  4.     <!-- Load Facebook SDK for JavaScript -->
  5.     <div id="fb-root"></div>
  6.     <script>
  7.         (function(d, s, id) {
  8.             var js, fjs = d.getElementsByTagName(s)[0];
  9.             if (d.getElementById(id)) return;
  10.             js = d.createElement(s); js.id = id;
  11.             js.src = "https://connect.facebook.net/en_US/sdk.js#xfbml=1&version=v3.0";
  12.             fjs.parentNode.insertBefore(js, fjs);
  13.         }(document, 'script', 'facebook-jssdk'));
  14.     </script>
  15.     <div class=" ">
  16. {% include 'refonte/pages/parts/search-form.html.twig' %}
  17.         {% if not app.user %}
  18.         <div class="benefits-section refonte" style="background-image: url('{{ asset("assets/images/backgroundSigIn.svg") }}'); height: 610px; background-size: cover; background-repeat: no-repeat;">
  19.             <div class="container text-center my-1">
  20.                 <h2 class="title">Even more benefits<br> when you're logged in!</h2>
  21.                 <div class="benefits-icons row justify-content-center mt-3">
  22.                     <!-- Benefit 1 -->
  23.                     <div class="col-md-3 col-sm-6 benefit-item mt-5">
  24.                         <div class="icon">
  25.                             <img src="{{ asset('assets/images/icons/following-researchers.svg') }}" alt="Following Researchers" />
  26.                         </div>
  27.                         <p class="benefit-text">Following <br/>researchers</p>
  28.                     </div>
  29.                     <!-- Benefit 2 -->
  30.                     <div class="col-md-3 col-sm-6 benefit-item mt-5">
  31.                         <div class="icon">
  32.                             <img src="{{ asset('assets/images/icons/tracking-evolution.svg') }}" alt="Tracking Journal Evolution" />
  33.                         </div>
  34.                         <p class="benefit-text">Tracking journal <br/> evolution</p>
  35.                     </div>
  36.                     <!-- Benefit 3 -->
  37.                     <div class="col-md-3 col-sm-6 benefit-item mt-5">
  38.                         <div class="icon">
  39.                             <img src="{{ asset('assets/images/icons/editing-favorite.svg') }}" alt="Editing Favorite Journal List" />
  40.                         </div>
  41.                         <p class="benefit-text">Editing favorite <br/>journal list</p>
  42.                     </div>
  43.                 </div>
  44.                 <button class="btn btn-primary sign-in-btn"><a href="{{ path('registre_user') }}">Sign in</a> </button>
  45.             </div>
  46.         </div>
  47.         {% endif %}
  48.         <div class="field-of-research-section mb-5">
  49.                 <img style=
  50.                      " position: absolute;
  51.                        right: 18px;
  52.                        bottom: -4%;
  53.                       height: calc(34% - 91px);"
  54.                 src="{{ asset('assets/images/Star.svg') }}" alt="Illustration" class="illustration"/>
  55.             <img style=
  56.                  " position: absolute;
  57.                     right: 123px;
  58.                     top: 7%;
  59.                     height: calc(27% - 106px);"
  60.                  src="{{ asset('assets/images/refonte/icons/small-star.svg') }}" alt="Illustration" />
  61.             <div class="container">
  62.                 <h2 class="section-title section-title-one text-center">Scientific monitoring</h2>
  63.                 <div class="category-title">
  64.                     <span class="line"></span>
  65.                     <h3 class="categories-title text-left">Categories</h3>
  66.                 </div>
  67.                 <h2 class="section-title text-left">Field Of Research</h2>
  68.                 <div class="description" style="display: flex;align-items: center;gap: 26.5%;">
  69.                     <p class="section-description text-left">
  70.                         {% if app.user and app.user.categories.values is not empty %}
  71.                             These Field Of Research are based on your favorites, ensuring a personalized experience that  <br>aligns with your interests.
  72.                         {% else %}
  73.                             Research drives innovation, advances knowledge, and solves real-world challenges.<br>
  74.                             Explore our curated journals offering insights and breakthroughs across diverse scientific fields.
  75.                         {% endif %}
  76.                     </p>
  77.                     <a href="{{ path('check_categories') }}" class="btn btn-primary view-all-btn" style="color: white !important;">View ALL</a>
  78.                 </div>
  79.                 <div class="c-carousel owl-carousel d-none">
  80.                     {% for category,journals in journalsByCategory %}
  81.                         {% if category != '' and category != ' ' %}
  82.                             <div class="research-card" style="background-image: url('{{ asset("assets/images/bgCard.svg") }}'); background-size: cover; background-repeat: no-repeat;">
  83.                                 <div class="icon-container">
  84.                                 {% if journals["type"]=="medecine" %}
  85.                                     <!-- SVG for Math -->
  86.                                     <svg width="400" height="400" viewBox="0 0 130 133" fill="currentColor"  xmlns="http://www.w3.org/2000/svg">
  87.                                         <path d="M84.06 72.0891H45.88C38.35 72.0891 32.25 78.199 32.24 85.729V107.549C32.24 115.079 38.35 121.179 45.88 121.189H62.24V126.639H51.33C49.82 126.639 48.6 127.859 48.6 129.369C48.6 130.879 49.82 132.099 51.33 132.099H78.6C80.11 132.099 81.33 130.879 81.33 129.369C81.33 127.859 80.11 126.639 78.6 126.639H67.69V121.189H84.05C91.58 121.189 97.68 115.079 97.69 107.549V85.729C97.69 78.199 91.58 72.0991 84.05 72.0891H84.06ZM84.06 99.3591H75.97L71.33 106.329C70.82 107.089 69.97 107.549 69.05 107.539H68.88C67.91 107.479 67.04 106.909 66.61 106.039L60.53 93.869L57.68 98.1391C57.17 98.8991 56.32 99.3491 55.41 99.3491H45.86C44.35 99.3491 43.13 98.129 43.13 96.619C43.13 95.109 44.35 93.8891 45.86 93.8891H53.95L58.59 86.9191C59.12 86.0991 60.06 85.6391 61.04 85.7091C62.01 85.7691 62.88 86.3391 63.31 87.2091L69.39 99.369L72.24 95.0991C72.75 94.3391 73.6 93.8891 74.51 93.8891H84.06C85.57 93.8891 86.79 95.109 86.79 96.619C86.79 98.129 85.57 99.3491 84.06 99.3491V99.3591Z"/>
  88.                                         <path d="M17.5 10.9591C17.5 9.57905 18.62 8.45905 20 8.45905H29.91L34.17 2.06905C34.68 1.29905 35.58 0.879055 36.49 0.969055C37.41 1.05906 38.2 1.64905 38.56 2.49905L43.22 13.6891L46.83 9.35905C47.31 8.78905 48.01 8.45905 48.75 8.45905H57.5C58.88 8.45905 60 9.57905 60 10.9591C60 12.3391 58.88 13.4591 57.5 13.4591H49.92L44.42 20.0591C43.94 20.6291 43.23 20.9591 42.5 20.9591C42.37 20.9591 42.25 20.9491 42.13 20.9291C41.26 20.7991 40.53 20.2191 40.2 19.4191L35.75 8.72906L33.34 12.3391C32.87 13.0391 32.09 13.4491 31.26 13.4491H20.01C18.63 13.4491 17.51 12.3291 17.51 10.9491L17.5 10.9591ZM16.25 35.9591C19.7 35.9591 22.5 33.1591 22.5 29.7091C22.5 26.2591 19.7 23.4591 16.25 23.4591C12.8 23.4591 10 26.2591 10 29.7091C10 33.1591 12.8 35.9591 16.25 35.9591ZM50.17 20.9791L48.26 23.2691C46.83 24.989 44.73 25.9691 42.5 25.9691C42.15 25.9691 41.8 25.9391 41.45 25.8991C38.8 25.4991 36.51 23.5691 35.5 21.1691C30.93 22.0991 27.5 26.1291 27.5 30.9691V35.9691H60V30.9691C60 25.4991 55.61 21.0791 50.17 20.9891V20.9791ZM5 13.4591C5 12.0791 3.88 10.9591 2.5 10.9591C1.12 10.9591 0 12.0791 0 13.4591V58.4591C0 59.8391 1.12 60.9591 2.5 60.9591C3.88 60.9591 5 59.8391 5 58.4591V53.4591H55V58.4591C55 59.8391 56.12 60.9591 57.5 60.9591C58.88 60.9591 60 59.8391 60 58.4591V40.9591H5V13.4591Z" />
  89.                                         <path d="M110.77 37.729L91.21 57.289C88.85 59.649 85.7 60.959 82.36 60.959C79.02 60.959 75.87 59.659 73.51 57.289C68.63 52.409 68.63 44.459 73.51 39.579L93.07 20.019L110.78 37.729H110.77ZM106.8 0.959045L103.26 4.49905L105.92 7.15905L96.6 16.479L114.31 34.189L123.63 24.869L126.29 27.529L129.83 23.989L106.79 0.959045H106.8ZM127 58.029C128.89 56.139 129.93 53.619 129.93 50.949C129.93 48.279 128.89 45.759 126.98 43.849L119.92 36.939L112.84 43.869C110.95 45.759 109.91 48.279 109.91 50.949C109.91 53.619 110.95 56.139 112.84 58.029C114.73 59.919 117.25 60.959 119.92 60.959C122.59 60.959 125.11 59.919 127 58.029Z"/>
  90.                                     </svg>
  91.                                 {% elseif  journals["type"]=="science" %}
  92.                                     <!-- SVG for science -->
  93.                                     <svg width="130" height="131" viewBox="0 0 130 131" fill="currentColor" xmlns="http://www.w3.org/2000/svg">
  94.                                         <path d="M112.51 17.8701H130.01V30.3701C130.01 38.4901 126.82 46.0901 121.03 51.7801C115.37 57.3301 107.93 60.3701 100.02 60.3701C99.8301 60.3701 99.6501 60.3701 99.4601 60.3701C83.2301 60.0701 70.0201 46.2101 70.0201 29.4701V17.8801H87.5201V30.3801C87.5201 37.2801 93.1201 42.8801 100.02 42.8801C106.92 42.8801 112.52 37.2801 112.52 30.3801V17.8801L112.51 17.8701ZM87.5101 0.370117H70.0101V12.8701H87.5101V0.370117ZM112.51 0.370117V12.8701H130.01V0.370117H112.51Z" fill="currentColor"/>
  95.                                         <path d="M42.5101 22.9701V5.37012H47.5101V0.370117H12.5101V5.37012H17.5101V22.9701C15.1401 25.0401 8.77006 30.9201 4.40006 37.7401H49.5401C50.7601 39.3801 51.8801 41.0601 52.7901 42.7401H1.70006C0.650058 45.1701 6.10352e-05 47.6401 6.10352e-05 50.0101C6.10352e-05 57.6001 6.91006 60.1201 7.21006 60.2301L7.61006 60.3701H52.3901L52.8001 60.2301C53.0901 60.1301 60.0101 57.6001 60.0101 50.0101C60.0101 39.0401 46.2501 26.2401 42.5101 22.9701Z" fill="currentColor"/>
  96.                                         <path d="M47.6701 90.1808C47.6701 79.1608 56.6001 70.2208 67.6301 70.2208C78.6601 70.2208 87.5901 79.1508 87.5901 90.1808C87.5901 101.211 78.6601 110.141 67.6301 110.141C56.6101 110.131 47.6901 101.201 47.6701 90.1808ZM92.3401 107.081L88.2201 104.261C80.4401 115.631 64.9101 118.531 53.5401 110.751C42.1701 102.971 39.2701 87.4408 47.0501 76.0708C47.6801 75.1508 48.3701 74.2708 49.1201 73.4408L45.4201 70.0908C34.3301 82.3408 35.2701 101.261 47.5201 112.351C52.3901 116.761 58.5801 119.441 65.1201 119.981V125.101H55.1401V130.091H80.0801V125.101H70.1001V119.961C79.0701 119.221 87.2301 114.491 92.3201 107.071L92.3401 107.081Z" fill="currentColor"/>
  97.                                         <defs>
  98.                                             <linearGradient id="paint0_linear_452_215" x1="100.01" y1="0.370117" x2="100.01" y2="60.3701" gradientUnits="userSpaceOnUse">
  99.                                                 <stop />
  100.                                                 <stop offset="1" />
  101.                                             </linearGradient>
  102.                                             <linearGradient id="paint1_linear_452_215" x1="30.0051" y1="0.370117" x2="30.0051" y2="60.3701" gradientUnits="userSpaceOnUse">
  103.                                                 <stop />
  104.                                                 <stop offset="1" />
  105.                                             </linearGradient>
  106.                                             <linearGradient id="paint2_linear_452_215" x1="65.0103" y1="70.0908" x2="65.0103" y2="130.091" gradientUnits="userSpaceOnUse">
  107.                                                 <stop />
  108.                                                 <stop offset="1"/>
  109.                                             </linearGradient>
  110.                                         </defs>
  111.                                     </svg>
  112.                                 {% else %}
  113.                                     <!-- Default SVG -->
  114.                                     <svg width="400" height="400" viewBox="0 0 124 132" fill="currentColor" xmlns="http://www.w3.org/2000/svg">
  115.                                         <path d="M65.3818 20.8994V52.2794C65.3818 53.7794 64.1618 54.9994 62.6618 54.9994C61.1618 54.9994 59.9418 53.7794 59.9418 52.2794V29.8094L39.7818 39.4394C37.6518 40.6894 35.2318 41.3494 32.7618 41.3294C30.1718 41.3294 27.6318 40.6394 25.4018 39.3194L5.29179 29.7494C0.401787 27.1194 -1.42821 21.0194 1.20179 16.1294C2.09179 14.4694 3.43179 13.0994 5.07179 12.1594C5.14179 12.1194 5.22179 12.0794 5.30179 12.0394L25.6218 2.34944C30.0918 -0.210555 35.5918 -0.170553 40.0118 2.46945L60.1018 12.0394C63.3318 13.8294 65.3518 17.2094 65.3918 20.8894L65.3818 20.8994ZM32.7518 46.7794C29.2618 46.7794 25.8418 45.8694 22.8218 44.1294L10.9018 38.4394V45.7994C10.9018 51.7695 14.7918 57.0394 20.4918 58.8194C24.4618 59.9594 28.5718 60.5094 32.7018 60.4594C36.8318 60.5094 40.9418 59.9494 44.9118 58.8094C50.6118 57.0394 54.4918 51.7594 54.5018 45.7894V38.4594L42.3518 44.2594C39.4318 45.9394 36.1318 46.8094 32.7618 46.7894L32.7518 46.7794Z"/>
  116.                                         <path d="M118.102 52.5694V61.4594L113.102 56.4594L108.102 61.4594V52.5694C103.322 49.8094 101.682 43.6894 104.442 38.9094C107.202 34.1294 113.322 32.4894 118.102 35.2494C122.882 38.0094 124.522 44.1294 121.762 48.9094C120.882 50.4294 119.622 51.6894 118.102 52.5694ZM103.102 55.1194V56.4594H75.6018V8.95944C75.6018 4.81944 78.9618 1.45944 83.1018 1.45944H113.102C117.242 1.45944 120.602 4.81944 120.602 8.95944V30.9794C113.442 26.8194 104.282 29.2594 100.122 36.4094C96.5518 42.5594 97.7918 50.3794 103.102 55.1094V55.1194ZM85.6018 16.4594H110.602V11.4594H85.6018V16.4594ZM85.6018 26.4594H110.602V21.4594H85.6018V26.4594ZM85.6018 36.4594H98.1018V31.4594H85.6018V36.4594Z" />
  117.                                         <path d="M48.6218 126.589V131.589H32.3718V126.589C32.3718 123.829 34.6118 121.589 37.3718 121.589H43.6218C46.3818 121.589 48.6218 123.829 48.6218 126.589ZM87.3718 121.589H81.1218C78.3618 121.589 76.1218 123.829 76.1218 126.589V131.589H92.3718V126.589C92.3718 123.829 90.1318 121.589 87.3718 121.589ZM66.1218 121.589H58.6218C55.8618 121.589 53.6218 123.829 53.6218 126.589V131.589H71.1218V126.589C71.1218 123.829 68.8818 121.589 66.1218 121.589ZM84.2918 119.089C87.7418 119.089 90.5418 116.289 90.5418 112.839C90.5418 109.389 87.7418 106.589 84.2918 106.589C80.8418 106.589 78.0418 109.389 78.0418 112.839C78.0418 116.289 80.8418 119.089 84.2918 119.089ZM62.3718 119.089C65.8218 119.089 68.6218 116.289 68.6218 112.839C68.6218 109.389 65.8218 106.589 62.3718 106.589C58.9218 106.589 56.1218 109.389 56.1218 112.839C56.1218 116.289 58.9218 119.089 62.3718 119.089ZM40.4518 119.089C43.9018 119.089 46.7018 116.289 46.7018 112.839C46.7018 109.389 43.9018 106.589 40.4518 106.589C37.0018 106.589 34.2018 109.389 34.2018 112.839C34.2018 116.289 37.0018 119.089 40.4518 119.089ZM40.4518 101.589C45.8118 101.589 50.2918 105.359 51.4118 110.379C52.5418 105.359 57.0218 101.589 62.3718 101.589C67.7218 101.589 72.2118 105.359 73.3318 110.379C74.4618 105.359 78.9418 101.589 84.2918 101.589C87.4618 101.589 90.3218 102.919 92.3718 105.039V79.0894C92.3718 74.9494 89.0018 71.5894 84.8718 71.5894H39.8618C35.7218 71.5894 32.3618 74.9494 32.3618 79.0894V105.039C34.4118 102.919 37.2718 101.589 40.4418 101.589H40.4518Z" />
  118.                                         <defs>
  119.                                             <linearGradient id="paint0_linear_466_7824" x1="32.6959" y1="0.458984" x2="32.6959" y2="60.4626" gradientUnits="userSpaceOnUse">
  120.                                                 <stop stop-color="#FF8961"/>
  121.                                                 <stop offset="1" stop-color="#F05A26"/>
  122.                                             </linearGradient>
  123.                                             <linearGradient id="paint1_linear_466_7824" x1="99.3519" y1="1.45944" x2="99.3519" y2="61.4594" gradientUnits="userSpaceOnUse">
  124.                                                 <stop stop-color="#FF8961"/>
  125.                                                 <stop offset="1" stop-color="#F05A26"/>
  126.                                             </linearGradient>
  127.                                             <linearGradient id="paint2_linear_466_7824" x1="62.3668" y1="71.5894" x2="62.3668" y2="131.589" gradientUnits="userSpaceOnUse">
  128.                                                 <stop stop-color="#FF8961"/>
  129.                                                 <stop offset="1" stop-color="#F05A26"/>
  130.                                             </linearGradient>
  131.                                         </defs>
  132.                                     </svg>
  133.                                 {% endif %}
  134.                                 </div>
  135.                                 <h4 class="research-title">{{ category }}</h4>
  136.                                 <ul class="journal-list">
  137.                                     {% for journal in journals["journals"] %}
  138.                                     <li>
  139.                                         <a href="{{ path('journal_show', {'id': journal.id}) }}">
  140.                                         {{ journal.title }}
  141.                                         </a>
  142.                                     </li>
  143.                                     {% endfor %}
  144.                                 </ul>
  145.                             </div>
  146.                         {% endif %}
  147.                     {% endfor %}
  148.                 </div>
  149.                 <a href="{{ path('check_categories') }}" class="btn btn-primary view-all-btn d-mobile" style="color: white !important;">View ALL</a>
  150.                 {#                {% endif %}#}
  151.             </div>
  152.         </div>
  153.         {% if authors %}
  154.         <div class="researchers-section">
  155.             <div class="container">
  156.                 <div class="row">
  157.                     <div class="col-lg-3">
  158.                         <div class="category-title">
  159.                             <span class="line"></span>
  160.                             <h3 class="categories-title text-left">Researchers</h3>
  161.                         </div>
  162.                         <h2 class="section-title">Interesting Researchers</h2>
  163.                         <p class="section-description">
  164.                             {% if app.user and app.user.categories.values is not empty and not noAuthorsFound %}
  165.                                 Explore leading researchers in your favorite fields, making groundbreaking contributions to science and innovation.<br>
  166.                                 Dive into their work, achievements, and the impact they’re making in advancing knowledge and addressing global challenges.
  167.                             {% elseif app.user and noAuthorsFound %}
  168.                                 While we couldn't find researchers in your favorite fields, we recommend these influential experts from other domains who are making a significant impact in advancing knowledge and addressing global challenges.
  169.                             {% else %}
  170.                                 Discover leading researchers making significant contributions across various scientific fields.<br>
  171.                                 Learn about their work, innovations, and impact on advancing knowledge and solving global challenges.
  172.                             {% endif %}
  173.                         </p>
  174.                         <a href="{{ path('check_researchers')}}" class="btn btn-primary view-all-btn" style="color: white !important;">View ALL</a>
  175.                     </div>
  176.                     <div class="col-lg-9">
  177.                         <div id="researchers-carousel" class="owl-carousel researchers-carousel d-none">
  178.                             {% for author in authors %}
  179.                                <a class="col-author" href="{{ path('get_authors_publication', {"auteur":author.name})}}">
  180.                             <div class="researcher-card">
  181.                                 <img src="{{ asset('assets/images/icons/following-researchers.svg') }}" alt="Researcher 1" />
  182.                                 <h4 class="researcher-name">{{ author.name|length > 20 ? author.name[:20] ~ '...' : author.name  }}<br>
  183.                                     {% if author.lastKnownInstitutions and author.lastKnownInstitutions|length > 0 %}
  184.                                         <small style="font-size: 14px">
  185.                                             {{ author.lastKnownInstitutions[0].display_name|length > 20 ?  author.lastKnownInstitutions[0].display_name[:20] ~ '...' :  author.lastKnownInstitutions[0].display_name  }}
  186.                                             - {{ author.lastKnownInstitutions[0].country_code }}</small>
  187.                                     {% endif %}
  188.                                 </h4>
  189.                             </div>
  190.                                </a>
  191.                             {% endfor %}
  192.                         </div>
  193.                     </div>
  194.                 </div>
  195.             </div>
  196.         </div>
  197.         {% endif %}
  198.         <div class="container-banner">
  199.             <img
  200.                     src="{{ asset('assets/images/Stars.svg') }}"
  201.                     alt="Illustration"
  202.             />
  203.             <div class="container">
  204.                 <div class="row">
  205.                     <div class="col-lg-12">
  206.                         <div class="title-banner">
  207.                             <h2>In Numbers</h2>
  208.                         </div>
  209.                     </div>
  210.                 </div>
  211.                 <div class="statistics-section">
  212.                     <div class="container text-center">
  213.                         <div class="row justify-content-center mt-4">
  214.                             <div class="col-md-3 stat-item">
  215.                                 <svg width="27" height="27" viewBox="0 0 27 27" fill="none"  stroke="currentColor" xmlns="http://www.w3.org/2000/svg">
  216.                                     <path d="M13.5 17.7181C17.6939 17.7181 21.0938 14.3182 21.0938 10.1243C21.0938 5.93042 17.6939 2.53058 13.5 2.53058C9.30609 2.53058 5.90625 5.93042 5.90625 10.1243C5.90625 14.3182 9.30609 17.7181 13.5 17.7181Z" stroke="white" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
  217.                                     <path d="M21.2561 17.8804C19.199 19.9374 16.4091 21.0931 13.5 21.0931C10.5909 21.0931 7.80096 19.9374 5.74392 17.8804C3.68688 15.8233 2.53125 13.0334 2.53125 10.1243C2.53125 7.21521 3.68688 4.42526 5.74392 2.36823" stroke="white" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
  218.                                     <path d="M10.125 24.4681H16.875" stroke="white" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
  219.                                     <path d="M13.5 21.0931V24.4681" stroke="white" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
  220.                                 </svg>
  221.                                 <div class="stat-number" data-target="{{ countPublishers }}">0</div>
  222.                                 <p>Publishers <br/> Represented</p>
  223.                             </div>
  224.                             <div class="col-md-3 stat-item">
  225.                                 <svg width="27" height="27" viewBox="0 0 27 27" fill="none"  stroke="currentColor" xmlns="http://www.w3.org/2000/svg">
  226.                                     <path d="M13.5 23.625C19.0919 23.625 23.625 19.0919 23.625 13.5C23.625 7.90812 19.0919 3.375 13.5 3.375C7.90812 3.375 3.375 7.90812 3.375 13.5C3.375 19.0919 7.90812 23.625 13.5 23.625Z" stroke="white" stroke-width="1.5" stroke-miterlimit="10"/>
  227.                                     <path d="M3.95157 10.125H23.0483" stroke="white" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
  228.                                     <path d="M3.95197 16.875H23.0486" stroke="white" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
  229.                                     <path d="M13.5 23.3532C15.83 23.3532 17.7188 18.9418 17.7188 13.5C17.7188 8.05822 15.83 3.64679 13.5 3.64679C11.17 3.64679 9.28125 8.05822 9.28125 13.5C9.28125 18.9418 11.17 23.3532 13.5 23.3532Z" stroke="white" stroke-width="1.5" stroke-miterlimit="10"/>
  230.                                 </svg>
  231.                                 <div class="stat-number" data-target="{{ countCountries }}">0</div>
  232.                                 <p>Countries <br/>Represented</p>
  233.                             </div>
  234.                             <div class="col-md-3 stat-item">
  235.                                 <svg width="27" height="27" viewBox="0 0 27 27" fill="none"  stroke="currentColor" xmlns="http://www.w3.org/2000/svg">
  236.                                     <path d="M13.4994 16.875C14.6644 16.875 15.6088 15.9306 15.6088 14.7656C15.6088 13.6006 14.6644 12.6562 13.4994 12.6562C12.3344 12.6562 11.39 13.6006 11.39 14.7656C11.39 15.9306 12.3344 16.875 13.4994 16.875Z" stroke="white" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
  237.                                     <path d="M13.4994 16.875V19.4062" stroke="white" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
  238.                                     <path d="M21.9369 9.28125H5.06188C4.59589 9.28125 4.21813 9.65901 4.21813 10.125V21.9375C4.21813 22.4035 4.59589 22.7812 5.06188 22.7812H21.9369C22.4029 22.7812 22.7806 22.4035 22.7806 21.9375V10.125C22.7806 9.65901 22.4029 9.28125 21.9369 9.28125Z" stroke="white" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
  239.                                     <path d="M9.70251 9.28125V5.48438C9.70251 4.47738 10.1025 3.51163 10.8146 2.79958C11.5266 2.08753 12.4924 1.6875 13.4994 1.6875C14.5064 1.6875 15.4721 2.08753 16.1842 2.79958C16.8962 3.51163 17.2963 4.47738 17.2963 5.48438V9.28125" stroke="white" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
  240.                                 </svg>
  241.                                 <div class="stat-number" data-target="{{ allCategories|length }}">0</div>
  242.                                 <p>Fields <br/> Of Research</p>
  243.                             </div>
  244.                             <div class="col-md-3 stat-item">
  245.                                 <svg width="27" height="27" viewBox="0 0 27 27" fill="none"  stroke="currentColor" xmlns="http://www.w3.org/2000/svg">
  246.                                     <path d="M11.8125 11.8125H18.5625" stroke="white" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
  247.                                     <path d="M11.8125 15.1875H18.5625" stroke="white" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
  248.                                     <path d="M21.9375 4.21875H5.0625C4.59651 4.21875 4.21875 4.59651 4.21875 5.0625V21.9375C4.21875 22.4035 4.59651 22.7812 5.0625 22.7812H21.9375C22.4035 22.7812 22.7812 22.4035 22.7812 21.9375V5.0625C22.7812 4.59651 22.4035 4.21875 21.9375 4.21875Z" stroke="white" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
  249.                                     <path d="M8.4375 4.21875V22.7812" stroke="white" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
  250.                                 </svg>
  251.                                 <div class="stat-number" data-target="{{ journals }}">0</div>
  252.                                 <p>Journals</p>
  253.                             </div>
  254.                         </div>
  255.                     </div>
  256.                 </div>
  257.             </div>
  258.         </div>
  259.         <div class="journals-section">
  260.             <div class="container">
  261.                 <div class="row">
  262.                     <div class="col-lg-5 blog-intro">
  263.                         <div class="category-title">
  264.                             <span class="line"></span>
  265.                             <h3 class="categories-title text-left">Blog</h3>
  266.                         </div>
  267.                         <h2 class="section-title">Explore Our Blog: Stay Ahead in Research & Innovation</h2>
  268.                         <p class="section-description">
  269.                             Welcome to the <b>ResearchGuide.net Blog</b>.
  270.                             <br>Our editorial team curates insightful articles to keep researchers, institutions,
  271.                             and industry professionals informed about <b>emerging innovations, funding opportunities, collaboration strategies, and cutting-edge methodologies.</b>
  272.                         </p>
  273.                         <ul>
  274.                             <li> πŸŒ <b>Stay Updated </b> on major scientific breakthroughs and global research policies.</li>
  275.                             <li> πŸ“– <b>Learn Best Practices</b> to enhance research efficiency and impact.</li>
  276.                             <li>🀝 <b>Bridge Academia & Industry</b> with insights on technology transfer and collaboration.</li>
  277.                         </ul>
  278.                         <p>πŸš€ Explore, Learn, and Elevate Your Research with Us!</p>
  279.                         <a href="{{ path('blog_index') }}" class="btn btn-primary view-all-btn" style="color: white !important;">View ALL</a>
  280.                     </div>
  281.                     <div class="col-lg-7 slide-images-blog">
  282.                         <div class="owl-carousel journals-carousel d-none">
  283.                             {% for post in posts %}
  284.                                 {% set src=  asset('assets/images/refonte/homepage/article.svg') %}
  285.                                 {% if post.image %}
  286.                                     {% set media=post.image %}
  287.                                     {% set src= asset('uploads/blog/' ~ media.filePath) %}
  288.                                 {% endif %}
  289.                                 <div class="journal-card-block">
  290.                                     <a href="{{ path('blog_post',{'slug':post.slug}) }}">
  291.                                         <div class="journal-card" style="background-image: url('{{ src}}'); background-size: cover; background-repeat: no-repeat;">
  292.                                         </div>
  293.                                         <p class="m-2 p-2 text-center">{{ post.title }}</p>
  294.                                     </a>
  295.                                 </div>
  296.                             {% endfor %}
  297.                         </div>
  298.                     </div>
  299.                 </div>
  300.             </div>
  301.         </div>
  302.         <div class="conferences-section">
  303.             <div class="container">
  304.                 <div class="row">
  305.                     <div class="col-lg-7"  style="padding-top: 10%;">
  306.                         <div id="conferences-carousel" class="owl-carousel conferences-carousel">
  307.                             <!-- Conference Cards -->
  308.                             {% for conference in conferences %}
  309.                                 <a href="{{ conference.link }}" style="">
  310.                                     <div class="conference-card-info">
  311.                                         <div class="conference-card" style="background-image: url('{{ conference.image ? conference.image : asset('assets/images/refonte/reference.png') }}'); background-size: cover; background-repeat: no-repeat;">
  312.                                         </div>
  313.                                         <p class="m-2 p-2 text-center">{{ conference.title }}</p>
  314.                                     </div>
  315.                                 </a>
  316.                             {% endfor %}
  317.                         </div>
  318.                     </div>
  319.                     <div class="col-lg-5" >
  320.                         <div class="category-title">
  321.                             <span class="line"></span>
  322.                             <h3 class="categories-title text-left">Conferences</h3>
  323.                         </div>
  324.                         <h2 class="section-title">Upcoming Events</h2>
  325.                         <h3>Plan Your Research Journey</h3>
  326.                         <p class="section-description">
  327.                             Stay ahead with <b>ResearchGuide.net's Upcoming Events</b> section, where we feature key <b>conferences, workshops,
  328.                             and symposiums</b> from around the world. Whether you're looking to <b>present your research, network with experts,
  329.                                 or stay updated on the latest advancements</b>, our curated list helps you plan your academic and professional
  330.                             engagements effectively.
  331.                         </p>
  332.                         <ul>
  333.                             <li>πŸ“… Discover major scientific conferences and calls for papers.</li>
  334.                             <li>🎀  Find workshops to enhance your skills and knowledge.</li>
  335.                             <li>πŸ“ Plan your publications and submissions in advance.</li>
  336.                         </ul>
  337.                         <p>πŸš€ Stay informed, participate, and make an impact!</p>
  338.                         <a href="{{ path('future_conferences') }}" class="btn btn-primary view-all-btn" style="color: white !important;">View ALL</a>
  339.                     </div>
  340.                 </div>
  341.             </div>
  342.         </div>
  343.     </div>
  344.     {# should check if !catgories  #}
  345.     {% if app.user and app.user.categories.values is empty and app.request.cookies.get('skip-categories') != "true" %}
  346.         <form action="{{ path('save_favorite_categories') }}" method="post">
  347.             <div id="choose-categories-modal" class="modal registre-modal" style="display:flex; z-index: 100;">
  348.                 <div class="modal-content animate register-modal-content p-3" style="box-shadow: none !important;border: 0 !important;">
  349.                     <span class="close skip-check-categories d-flex justify-content-end" title="Close Modal" style="margin-left:0 !important;left:20px;top:20px;cursor: pointer;">
  350.                         <svg width="30" height="30" viewBox="0 0 50 50" fill="none" xmlns="http://www.w3.org/2000/svg" style="float: right">
  351.                             <path fill-rule="evenodd" clip-rule="evenodd" d="M21.4898 25.1794L0.521973 46.1519L4.0579 49.687L25.0249 28.7154L45.9919 49.687L49.5279 46.1519L28.5601 25.1794L49.5279 4.20702L45.9919 0.671875L25.0249 21.6435L4.0579 0.671875L0.521973 4.20702L21.4898 25.1794Z" fill="#58595B"/>
  352.                         </svg>
  353.                     </span>
  354.                     <h2 class="skip-check-categories modal-register-title w-100 mx-0 text-center my-2" style="margin-top: 60px; color:#3D1F5E;font-weight: 600">
  355.                         Select your favorite categories:
  356.                     </h2>
  357.                     <p class="text-center"> <i>This help us recommend the most useful journals</i></p>
  358.                     <div id="register-step-2" style="">
  359.                         <div class="d-flex flex-wrap register-categories">
  360.                             {% for category in allCategories|sort((a, b) => a.name <=> b.name) %}
  361.                                 {% if category.name != '' and category.name != ' ' %}
  362.                                     <div class="category-item">
  363.                                         <svg xmlns="http://www.w3.org/2000/svg" style="display:none" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-check"><polyline points="20 6 9 17 4 12"/></svg>
  364.                                         <span id="{{ category.id }}">{{category.name}}</span>
  365.                                     </div>
  366.                                 {% endif %}
  367.                             {% endfor %}
  368.                         </div>
  369.                     </div>
  370.                     <div class="d-flex px-4 px-sm-5 my-2">
  371.                         <input type="hidden" id="selected-categories" name="selected-categories">
  372.                         <input type="submit"
  373.                                id="register-btn-2"
  374.                                class="form-register-btn-text my-auto"
  375.                                style=" width: 100% !important;background: linear-gradient(180deg, #FF8961 0%, #F05A26 100%);color: white;border: none;padding: 10px;border-radius: 8px"
  376.                                value="Validate">
  377.                     </div>
  378.                     <br><a  href="/" class="skip-check-categories text-center form-register-btn-text my-auto text-dark"  style="font-weight: 300 !important;width: 100% !important;">Skip</a>
  379.                 </div>
  380.             </div>
  381.         </form>
  382.     {% endif %}
  383.     <!-- Fin pub 0001-->
  384. {% endblock %}
  385. {% block vignetteAd %}
  386.     <div class="fixed-pub-area w-100"></div>
  387.     {% include '_includes/pubs/custom-vignette-ad.html.twig' %}
  388. {% endblock %}
  389. {% block javascripts %}
  390.     <script>
  391.         $('.category-item').click(function (e) {
  392.             $('#register-btn-2').prop( "disabled", false );
  393.             let svg = e.currentTarget.firstElementChild;
  394.             let span = e.currentTarget.lastElementChild;
  395.             var categoryInput = document.getElementById('selected-categories')
  396.             svg.style.display === 'block' ? svg.style.display = 'none' : svg.style.display = 'block'
  397.             if(svg.style.display === 'block') {
  398.                 // remove category
  399.                 let spanValue = span.id;
  400.                 // put span value in input
  401.                 if(categoryInput.value){
  402.                     categoryInput.value = categoryInput.value+","+spanValue;
  403.                 } else {
  404.                     categoryInput.value = spanValue;
  405.                 }
  406.             }else{
  407.                 // add category
  408.                 let spanValue = span.id;
  409.                 if(categoryInput.value){
  410.                     let categories = categoryInput.value.split(",");
  411.                     let index = categories.indexOf(spanValue);
  412.                     if (index > -1) {
  413.                         categories.splice(index, 1);
  414.                     }
  415.                     categoryInput.value = categories.join(",");
  416.                 }
  417.             }
  418.             e.currentTarget.classList.toggle('active');
  419.         })
  420.         $(document).ready(function() {
  421.             $('.c-carousel').removeClass('d-none'); // Make the carousel visible
  422.             $('.c-carousel').owlCarousel({
  423.                 margin: 10,
  424.                 nav: true,
  425.                 loop: true,
  426.                 responsiveClass: true,
  427.                 autoplay: true,
  428.                 navText: [
  429.                     "<img src='/assets/images/refonte/homepage/previous.svg'>",
  430.                     "<img src='/assets/images/refonte/homepage/next.svg'>"
  431.                 ],
  432.                 responsive: {
  433.                     0: {
  434.                         items: 1,
  435.                         nav: true
  436.                     },
  437.                     500: {
  438.                         items: 2,
  439.                         nav: true
  440.                     },
  441.                     900: {
  442.                         items: 3,
  443.                         nav: true,
  444.                     }
  445.                 }
  446.             });
  447.         });
  448.         $(document).ready(function () {
  449.             // Researchers Carousel
  450.             $('#researchers-carousel').removeClass('d-none');
  451.             $('#researchers-carousel').owlCarousel({
  452.                 loop: true,
  453.                 margin: 25,
  454.                 nav: true,
  455.                 responsiveClass: true,
  456.                 autoplay: true,
  457.                 navText: [
  458.                     "<img src='/assets/images/refonte/homepage/previous.svg'>",
  459.                     "<img src='/assets/images/refonte/homepage/next.svg'>"
  460.                 ],
  461.                 responsive: {
  462.                     0: { items: 1, nav: true },
  463.                     500: { items: 2, nav: true },
  464.                     900: { items: 3, nav: true },
  465.                     992: { items: 3, nav: true }
  466.                 }
  467.             });
  468.         });
  469.         document.addEventListener("DOMContentLoaded", () => {
  470.             const counters = document.querySelectorAll('.stat-number');
  471.             counters.forEach(counter => {
  472.                 const target = +counter.getAttribute('data-target'); // Convert target to number
  473.                 const countUp = new CountUp(counter, target, { duration: 2 }); // 2-second animation
  474.                 if (!countUp.error) {
  475.                     countUp.start();
  476.                 } else {
  477.                     console.error(countUp.error);
  478.                 }
  479.             });
  480.         });
  481.         document.addEventListener("DOMContentLoaded", () => {
  482.             const counters = document.querySelectorAll('.stat-number');
  483.             counters.forEach(counter => {
  484.                 const updateCount = () => {
  485.                     const target = +counter.getAttribute('data-target');
  486.                     const current = +counter.innerText;
  487.                     const increment = target / 200;
  488.                     if (current < target) {
  489.                         counter.innerText = Math.ceil(current + increment);
  490.                         setTimeout(updateCount, 10); // Adjust speed
  491.                     } else {
  492.                         counter.innerText = target;
  493.                     }
  494.                 };
  495.                 updateCount();
  496.             });
  497.         });
  498.         $(document).ready(function () {
  499.             $('.journals-carousel').removeClass('d-none'); // Show the carousel
  500.             $('.journals-carousel').owlCarousel({
  501.                 items: 2,
  502.                 autoplay: true,
  503.                 margin: 20,
  504.                 nav: true,
  505.                 loop: true,
  506.                 navText: [
  507.                     "<img src='/assets/images/refonte/homepage/previous.svg'>",
  508.                     "<img src='/assets/images/refonte/homepage/next.svg'>"
  509.             ],
  510.                 responsive: {
  511.                 0: {
  512.                     items: 1
  513.                 },
  514.                 768: {
  515.                     items: 2
  516.                 }
  517.             }
  518.         });
  519.         });
  520.         document.addEventListener('DOMContentLoaded', function () {
  521.             // Initialize the owl carousel for conferences
  522.             // $('#conferences-carousel').removeClass('d-none'); // Show the carousel
  523.             $('#conferences-carousel').owlCarousel({
  524.                 items: 2,
  525.                 autoplay: true,
  526.                 margin: 20,
  527.                 nav: true,
  528.                 loop: true,
  529.                 navText: [
  530.                     "<img src='/assets/images/refonte/homepage/previous.svg'>",
  531.                     "<img src='/assets/images/refonte/homepage/next.svg'>"
  532.                 ],
  533.                 responsive: {
  534.                     0: {
  535.                         items: 1
  536.                     },
  537.                     768: {
  538.                         items: 2
  539.                     }
  540.                 }
  541.             });
  542.         });
  543.     </script>
  544. {% endblock %}