src/NCBS/WebsiteBundle/Resources/views/layout.html.twig line 1

Open in your IDE?
  1. {% extends '::base.html.twig' %}
  2. {% set bInFrame = false %}
  3. {% if in_frame is defined and in_frame %}
  4.     {% set bInFrame = true %}    
  5. {% endif %}
  6. {% set current_locale_code = app.request.locale %}
  7. {% set sPath = path(app.request.attributes.get('_route'), app.request.attributes.get('_route_params')) %} 
  8. {% set bUseGoogleTag = not bInFrame and current_locale_code != 'zh' and 'localhost' not in app.request.schemeAndHttpHost %}
  9. {% block stylesheets %}
  10.   {{ parent() }}   
  11.       
  12.   {% include 'NCBSWBundle::layout_css.html.twig' %}
  13. {% endblock %}
  14. {#% block cache_control %}  
  15.     {% if 'bible' in sPath or 'swedenborg' in sPath or 'consider' in sPath or 'concepts' in sPath or 'search' in sPath or 'multi' in sPath %}   
  16.             <meta http-equiv="Cache-control" content="no-cache">
  17.             <meta name="expires" content="0">       
  18.     {% else %}      
  19.            <meta http-equiv="Cache-control" content="max-age=691200, public">  
  20.            <meta name="expires" content="never">
  21.     {% endif %}
  22. {% endblock %#}
  23. {% block javascripts %}
  24.   {{ parent() }}
  25. {% if bUseGoogleTag %}   
  26. <!-- Google Tag Manager -->
  27. <script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
  28. new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
  29. j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.defer=true;j.src=
  30. 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
  31. })(window,document,'script','dataLayer','GTM-KN9QFFX');</script>
  32. <!-- End Google Tag Manager -->
  33. {% endif %}
  34.   {% include 'NCBSWBundle::layout_js.html.twig' %}
  35.            
  36. {% endblock %}
  37. {% block body %}
  38. {% if bUseGoogleTag %}
  39. <!-- Google Tag Manager (noscript) -->
  40.     <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-KN9QFFX"
  41.     height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
  42. <!-- End Google Tag Manager (noscript) -->
  43. {% endif %}
  44.     
  45.     {% set sUserID = app.session.get('user_id') %}  
  46.     {% set bLoggedIn = false  %}
  47.     {% set sMainsiteMenu = ''  %}  
  48.     {% if log_out is not defined and sUserID != '' %}
  49.         {% set bLoggedIn = true  %}
  50.         <script>    
  51.             bLoggedIn = true;
  52.             $(document).ready(function () {
  53.                   checkFontSize();
  54.             });                         
  55.         </script>
  56.     {% endif %} 
  57.     
  58.     {% set bHasPortalPriv = false %}
  59.     {% set bAdminUser = false %}
  60.     {% set bLNCAdmin = false %}
  61.     {% set bGCEDAdmin = false %}
  62.     {% set bNeoSearchAdmin = false %}
  63.     {% set bReceiveVerseOfDay = false %}
  64.     {% set nUserLevelId = null %}
  65.     {% if bLoggedIn %}
  66.         {% set nUserLevelId = app.session.get('user_level') %}
  67.         {% if not (nUserLevelId == '' or nUserLevelId == '0' or nUserLevelId == '7' or nUserLevelId == '10' or nUserLevelId == '11' or nUserLevelId == '13') %}
  68.             {% set bHasPortalPriv = true %}
  69.         {% endif %} 
  70.         
  71.         {% if nUserLevelId == '-1' %}
  72.             {% set bAdminUser = true %}
  73.         {% endif %}  
  74.         
  75.         {% if nUserLevelId == '12' %}
  76.             {% set bLNCAdmin = true %}
  77.         {% endif %}
  78.         
  79.         {% if nUserLevelId == '8' %}
  80.             {% set bGCEDAdmin = true %}
  81.         {% endif %}
  82.         
  83.         {% if nUserLevelId == '14' %}
  84.             {% set bNeoSearchAdmin = true %}
  85.         {% endif %}
  86.         
  87.         {% set bReceiveVerseOfDay = app.session.get('user_receive_verse_of_day') %}
  88.           
  89.     {% endif %}
  90.   
  91.   {% if not bInFrame %} 
  92.       <div id="wrap" style="background:#fff;">
  93.     <div id="header-menu">
  94.       <div class="navbar-top" style="margin:0px;height:43px;background:#f5f5f5;">
  95.       <div class="navbar-top-inner">
  96.         <div class="container">
  97.         
  98. {% if on_new_window is not defined %}
  99. <div style="float:right;padding: 2px 0px 0px 1px;margin-top: -4px;" class="noprint" title="{{ app.session.get('ui_str')["generic.selectsitelanguage"]|raw }}">
  100. <div class="dropdown">
  101. <a id="language-select" data-toggle="dropdown" href="#" title="{{ app.session.get('ui_str')["generic.selectsitelanguage"]|raw }}">
  102.        <span style="font-size: 29px; color:#000; padding-left:5px;cursor: pointer;"><i class="fas fa-language"></i></span></a>
  103.        <div id='locale_dropdown'>
  104.           {% set sLocaleDropDown = '' %}
  105.           {% if available_locales is defined and available_locales is not null %}  
  106.                {% set sLocaleDropDown = '<div class="dropdown-menu" role="menu" aria-labelledby="language-select">' %}
  107.               {% for locale_code, locale_name in available_locales if locale_code != current_locale_code %}
  108.                 {% set sLocaleDropDown = sLocaleDropDown ~ '<a class="dropdown-item" id="link_' ~ locale_code ~ '" role="menuitem" href="' %}
  109.                 {% set sLocaleDropDown = sLocaleDropDown ~ path(app.request.attributes.get('_route'), app.request.attributes.get('_route_params')|merge(app.request.query.all)|merge({'_locale': locale_code})) %}
  110.                 {% set sLocaleDropDown = sLocaleDropDown ~ '">' ~ locale_name ~ '</a>' %}           
  111.               {% endfor %}
  112.               {% set sLocaleDropDown = sLocaleDropDown ~ '</div>' %}
  113.               {{ sLocaleDropDown|trim|raw }}
  114.           {% endif %}       
  115.         </div>   
  116.     </div>   
  117.     </div>
  118. {% endif %}
  119. <div style="float:right;padding: 0px 10px 0px 4px;" class="noprint">
  120. <span style="font-size: 25px; color:#000;"><a style="color:#000;" href="{{ path('new_church_map') }}" title="{{ app.session.get('ui_str')["newchurchmappage.iconhovertext"]|raw }}"><i class="fas fa-location-dot"></i></a></span>
  121. </div>
  122. <div style="float:right;padding: 4px 10px 0px 4px;margin-top: -2px;" class="noprint">
  123. <span style="font-size: 25px; color:#000;">
  124. <a href="javascript:goToLastViewed();" id="lastViewedLink" style="color:#000;" title="{{ app.session.get('ui_str')["generic.lastviewediconhover"]|raw }}"><i class="fas fa-clock-rotate-left"></i></a></span>
  125. </div>
  126. <script>
  127.     checkLastViewed();
  128. </script>
  129.     
  130.           <div><a href="{{ path('landing_page') }}"><img class="logo" alt="New Christian Bible Study" src="{{ asset('/bundles/ncbsw/img/logo-transparent-253.png') }}"/></a> </div>
  131.           <a class="navbar-brand" href="{{ path('landing_page') }}">{{ app.session.get('ui_str')["generic.ncbstitle"]|raw }}</a>
  132.         </div>  
  133.         </div>
  134.       </div>
  135.  
  136. <!-- menu starts --> 
  137. <div class="navbar noprint" style="width:100%;overflow: visible;margin-bottom: 9px;">
  138.       <div >
  139.         <div class="container main-nav">
  140. <nav class="navbar navbar-expand-lg navbar-dark bg-dark">
  141.   <div>
  142.    <ul class="navbar-nav always-show-menu">
  143.       {% if not bLoggedIn %}
  144.               <li id="loginLink" class="nav-item"><a class="nav-link" href="{{ path('login') }}">{{ app.session.get('ui_str')["linktitle.short.login"]|raw }}</a>
  145.       {% else %}
  146.         {% set sUrlEnd = '' %}
  147.         {% if bHasPortalPriv %}            
  148.             {% set sUrlEnd = '?pp=1' %}            
  149.         {% endif %}
  150.           {% set sUrl = path('select_loggedin_menu') ~ sUrlEnd %}
  151.         <li class="nav-item dropdown" id="login" >
  152.           <a class="nav-link dropdown-toggle" href='javascript:openNav("{{ app.session.get('ui_str')["popup.usermenu"]|raw }}","{{ sUrl }}")' id="navbarDropdown">
  153.           <span><i class="fas fa-user"></i></span> 
  154.           </a>
  155.    {% endif %}
  156.         <li class="nav-item" style="background:#2a836d;"><a class="nav-link" href="{{ path('chatbot') }}" target="_blank"><i class="fas fa-message-bot"></i></a></li>
  157.         
  158.    
  159.     {% include 'NCBSWBundle::quicksearchbox.html.twig' %}
  160.   
  161.   <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
  162.     <span class="navbar-toggler-icon"></span>
  163.   </button></div>
  164.   <div class="collapse navbar-collapse" id="navbarSupportedContent">
  165.     <ul class="navbar-nav mr-auto">
  166.         <li class="nav-item">
  167.             <a class="nav-link" href="{{ path('landing_page') }}">{{ app.session.get('ui_str')["linktitle.short.home"]|raw }}</a>
  168.         </li>
  169.         
  170.         <li class="nav-item">
  171.             <a class="nav-link" href="javascript:openBibleIndex();">{{ app.session.get('ui_str')["linktitle.short.bible.main"]|raw }}</a>
  172.         </li>
  173.                    
  174.           <li class="nav-item">
  175.             <a class="nav-link" href="{{ path('consider') }}">
  176.               {{ app.session.get('ui_str')["linktitle.short.consider"]|raw }}
  177.             </a>
  178.           </li>
  179.           <li class="nav-item">
  180.             <a class="nav-link" href="{{ path('swedenborg') }}">
  181.               {{ app.session.get('ui_str')["homepage.quadrants.swedenborg.title"]|raw }}
  182.             </a>
  183.           </li>
  184.           
  185.           <li class="nav-item dropdown" id="site-links">
  186.             <a class="nav-link dropdown-toggle" href="#" id="navbarDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">               
  187.               {{ app.session.get('ui_str')["linktitle.short.more"]|raw }}
  188.             </a>
  189. <div class="dropdown-menu" aria-labelledby="navbarDropdown">
  190.               <a class="dropdown-item" href="{{ path('news') }}"><i class="fa-regular fa-newspaper" style="color:#000;width:22px;"></i> {{ app.session.get('ui_str')["linktitle.short.news"]|raw }}</a>
  191.               <div class="dropdown-divider"></div>
  192.               <a class="dropdown-item" href="{{ path('bible_stories') }}"><i class="fas fa-book-open-reader" style="color:#296e47;width:22px;"></i> {{ app.session.get('ui_str')["linktitle.short.bible.stories"]|raw }}</a>
  193.               <a class="dropdown-item" href="{{ path('daily_verse') }}"><i class="fa-solid fa-quotes" style="color:#d27316;width:22px;"></i> {{ app.session.get('ui_str')["linktitle.short.dailyverse"]|raw }}</a>
  194.               <a class="dropdown-item" href="{{ path('reading_plan_index') }}"><i class="fas fa-list-check" style="color:#122880;width:22px;"></i> {{ app.session.get('ui_str')["linktitle.short.bible.readingplans"]|raw }}</a>
  195.               <a class="dropdown-item" href="{{ path('concepts') }}"><i class="fas fa-key" style="color:#f8b40b;width:22px;"></i> {{ app.session.get('ui_str')["linktitle.short.concepts"]|raw }}</a>
  196.               <div class="dropdown-divider"></div>
  197.               <a class="dropdown-item" href="{{ path('chatbot') }}" target="_blank"><i class="fas fa-message-bot" style="color:#2a836d; width:22px;"></i> {{ app.session.get('ui_str')["chatbot.heading"]|raw }}</a>
  198.               <a class="dropdown-item" href="{{ path('mobile_app') }}"><i class="fas fa-feather-pointed" style="color:#6c3a2a;"></i> {{ app.session.get('ui_str')["apppage.heading"] }}</a>
  199.               <div class="dropdown-divider"></div>
  200.               <a class="dropdown-item" href="{{ path('otle_videos') }}"><i class="fas fa-video" style="width:22px;"></i> {{ app.session.get('ui_str')["videopage.heading"]|raw }}</a>
  201.               <a class="dropdown-item" href="{{ path('audio_hub') }}"><i class="fas fa-volume-high" style="width:22px;"></i> {{ app.session.get('ui_str')["audiopage.heading"]|raw }}</a>
  202.               <a class="dropdown-item" href="{{ path('classes_and_groups') }}"><i class="fa-solid fa-users-line" style="width:22px;"></i> {{ app.session.get('ui_str')["classpage.heading"]|raw }}</a>
  203.               <a class="dropdown-item" href="{{ path('sermon_storehouse') }}"><i class="fa-solid fa-books" style="width:22px;"></i> {{ app.session.get('ui_str')["sermonstorehouse.heading"]|raw }}</a>
  204.               <a class="dropdown-item" href="{{ path('q_and_a') }}"><i class="fas fa-comments" style="width:22px;"></i> {{ app.session.get('ui_str')["qandapage.heading"]|raw }}</a>
  205.               <a class="dropdown-item" href="{{ path('new_church_map') }}"><i class="fas fa-location-dot" style="width:22px;"></i> {{ app.session.get('ui_str')["linktitle.short.newchurchmap"]|raw }}</a>
  206.               <div class="dropdown-divider"></div>
  207.               <a class="dropdown-item" href="{{ path('swedenborg_research_tools') }}">{{ app.session.get('ui_str')["linktitle.short.research"]|raw }}</a>
  208.               <a class="dropdown-item" href="{{ path('resources') }}">{{ app.session.get('ui_str')["linktitle.short.resources"]|raw }}</a>
  209.               <div class="dropdown-divider"></div>
  210.               <a class="dropdown-item" href="{{ path('about') }}">{{ app.session.get('ui_str')["linktitle.short.about"]|raw }}</a>
  211.                {% if not bLoggedIn  %}
  212.                       <a class="dropdown-item" href="{{ path('register') }}">{{ app.session.get('ui_str')["linktitle.short.register"]|raw }}</a>
  213.                {% endif  %}    
  214.               <a class="dropdown-item" href="{{ path('donate') }}">{{ app.session.get('ui_str')["linktitle.short.donate"]|raw }}</a>
  215.               <a class="dropdown-item" href="{{ path('contact') }}">{{ app.session.get('ui_str')["linktitle.short.contact"]|raw }}</a>
  216.             </div>
  217.           </li>
  218.           
  219. </ul>
  220.      
  221.                             
  222.      </ul>
  223.       
  224.   </div>
  225. </nav>
  226. </div>
  227.       </div>
  228.     </div>
  229. <!-- menu ends --> 
  230. {% endif %}
  231.     
  232. </div>
  233. {% set sStyleInFrame = "" %}
  234. {% if bInFrame or bible_new is defined %}
  235.     {% set sStyleInFrame = ' style="max-width:100%;" ' %}
  236. {% endif %}
  237.     <div class="container" {{ sStyleInFrame|raw }} >
  238.       {% block error_message_display %}
  239.         {% if error_message is defined %}
  240.           <div class="row">
  241.             <p style="color:red">{{ error_message|nl2br }}</p>
  242.           </div>
  243.         {% endif %}
  244. {% if not bInFrame %}
  245. {% set sDisplayStr = 'display:none;' %}
  246. {% if ('bible' in sPath and 'stories' not in sPath and 'translations' not in sPath) or 'exposition' in sPath or 'multi' in sPath %} 
  247.      {% set sDisplayStr = '' %}     
  248. {% endif %}
  249. {% set bNoExplanation = (app.session.get('current_explanation_translation_id') == 0) %}
  250. {% if bNoExplanation %} 
  251.     {% set sExplainStr = app.session.get('ui_str')["homepage.explainchapter"]|raw %} 
  252. {% else %}
  253.      {#% set sExplainStr = app.session.get('ui_str')["homepage.editexplanation"]|raw %#}     
  254. {% endif %} 
  255. <div style="padding-bottom:8px;">
  256. <div style="{{ sDisplayStr }} text-align:right;" id="BookmarkNote" >
  257. {% if bNoExplanation %}
  258.     <a class="btn btn-sm btn-outline-secondary user-button" style="display:none;" id="ExplainChapter" href="javascript:explainChapter();" title="{{ sExplainStr }}"><i class="fas fa-pencil"></i> {{ sExplainStr }}</a>
  259. {% endif %} 
  260. {% if verse_id_for_verse_of_day is defined and bAdminUser %} 
  261.     &nbsp;&nbsp;<a class="btn btn-sm btn-outline-secondary user-button"   href="javascript:addVerseOfDay({{ verse_id_for_verse_of_day }});" title="Add this verse to verse-of-the-day queue"><i class="fas fa-plus"></i> Add to Verse of the Day queue</a>  
  262. {% endif %}
  263. </div>
  264. </div>
  265. {% endif %} 
  266. {# end userstuff3 #}
  267.       {% endblock %}
  268.       
  269. <main class="flex-shrink-0">      
  270.       {% block container %}
  271.         <div class="container">
  272.             {% block content %}
  273.             {% endblock %}
  274.         </div>
  275.       {% endblock %}
  276. </main>
  277.          
  278.     </div>
  279.   </div>  
  280.   
  281.   <!-- Print footer -->
  282.         <div class="row print-footer">
  283.             <div class="col-lg-12">
  284.                 <hr />
  285.                 <p>{{ app.session.get('ui_str')["footer.print.notice"]|raw }}</p>   
  286.             </div>
  287.         </div>
  288.         
  289.   {% block footer %}
  290.     {% if not bInFrame and bible_new is not defined %} 
  291.        <div id="footer" class="footer mt-auto py-3">   
  292.         {% include 'NCBSWBundle:Includes:footer.html.twig' %}
  293.        </div>
  294.     {% endif %} 
  295.     
  296.   {% endblock %}
  297.     
  298.     {% include 'NCBSWBundle::layout_inc.html.twig' %}
  299. {% endblock %}