src/NCBS/WebsiteBundle/Resources/views/Bible/interface/translation_dropdown/dropdown.html.twig line 1

Open in your IDE?
  1. {# dropdown_target should be:
  2.   1 or 'left' to select translation in left column of two-column translation comparison view (without changing right column)
  3.   2 or 'right' to select translation in right column of two-column translation comparison view (without changing left column)
  4.   3 or '3col' to select translation in third column of three-column translation comparison view (without changing left/right column)
  5.   'index' to link to index page for translations (not displaying a passage)
  6.   null or undefined to link to translations of the current passage in a one-column view
  7.   'add' to link from a one-column view to a two-column view (with the current translation in the left column and the new translation in the right column)
  8.   'multicolumn' to change one column of an arbitrary multicolumn view (the column_num variable will indicate which column)
  9.   'readingplan' for translations in reading plans
  10.   'quickview' for translations in quick view (search)
  11. #}
  12. {% if dropdown_target is not defined %}
  13.   {% set dropdown_target = null %}
  14. {% elseif dropdown_target|lower == 'left' %}
  15.   {% set dropdown_target = 1 %}
  16. {% elseif dropdown_target|lower == 'right' %}
  17.   {% set dropdown_target = 2 %}
  18. {% elseif dropdown_target|lower == '3col' %}
  19.   {% set dropdown_target = 3 %}  
  20. {% endif %}
  21. {# Differentiate between simple one-column view, two-column translation comparison, and multicolumn with independent navigation #}
  22. {% set three_column = (translation3 is defined and translation3 is not null) %}
  23. {% set two_column = (not three_column and (translation2 is defined and translation2 is not null)) %}
  24. {% set multicolumn = (dropdown_target == 'multicolumn') %}
  25. {% set readingplan = (dropdown_target == 'readingplan') %}
  26. {% set quickview = (dropdown_target == 'quickview') %}
  27. <select id="compare_dd" onchange="{{ quickview? "loadQuickview(this.value);" : "location = this.value;" }}" class="form-control form-control-sm" style="display:inline;max-width:280px;">
  28.   {% set currently_selected = (dropdown_target == 1) ? translation1 : (dropdown_target == 2) ? translation2 : (dropdown_target == 3) ? translation3 : translation %}
  29.   {% if dropdown_target == 'add' %}
  30.     <option selected value="#">{{ app.session.get('ui_str')["bible.biblestudy.comparetranslations"] }}</option>
  31.   {% elseif two_column %}
  32.     {# Dropdown menu item to remove this column, showing only the other one #}
  33.     {% if dropdown_target == 2 %}
  34.       {% set contents_target = contents1 %}
  35.       {% set translation_target = translation1 %}
  36.     {% else %}
  37.       {% set contents_target = contents2 %}
  38.       {% set translation_target = translation2 %}
  39.     {% endif %}
  40.     {# If the content doesn't exist in one of the translations, do we just want to not show the "(remove)" option? #}
  41.     {% if contents_target|length > 0 %}
  42.       {% set v1 = contents_target|first|first.findMainVerse() %}
  43.       {% set vn = contents_target|last|last.findMainVerse() %}
  44.       {% set c1 = v1.chapter %}
  45.       {% set cn = vn.chapter %}
  46.       {% if contents_target|length == 1 %}
  47.         {% if v1.id == c1.verses|first.id and vn.id == cn.verses|last.id %}
  48.           {% set url_1col = uri(c1) %}
  49.         {% elseif v1.id == vn.id %}
  50.           {% set url_1col = uri(v1) %}
  51.         {% else %}
  52.           {% set url_1col = path('bible_verse_range', {'translationUrl': translation_target.url, 'bookUrl': c1.book.url, 'chapterIndex': c1.ordering, 'verseStartIndex': v1.indexDisplay, 'verseEndIndex': vn.indexDisplay}) %}
  53.         {% endif %}
  54.       {% else %} {# contents_target|length > 1 #}
  55.         {% if v1.id == c1.verses|first.id and vn.id == cn.verses|last.id %}
  56.           {% set url_1col = path('bible_chapter_range', {'translationUrl': translation_target.url, 'bookUrl': c1.book.url, 'chapterStartIndex': c1.ordering, 'chapterEndIndex': cn.ordering}) %}
  57.         {% else %}
  58.           {% set url_1col = path('bible_chapter_verse_range', {'translationUrl': translation_target.url, 'bookUrl': c1.book.url, 'chapterStartIndex': c1.ordering, 'chapterEndIndex': cn.ordering, 'verseStartIndex': v1.indexDisplay, 'verseEndIndex': vn.indexDisplay}) %}
  59.         {% endif %}
  60.       {% endif %}
  61.        <script>
  62.         aRemoveLink[{{ dropdown_target }}] = "{{ url_1col }}";
  63.        </script>          
  64.       <option value="{{ url_1col }}">{{ app.session.get('ui_str')["bible.breadcrumbs.removetranslation"] }}</option> 
  65.      {% endif %} 
  66.     {% elseif three_column %}
  67.     {# Dropdown menu item to remove this column, showing only the other two columns #}
  68.           {% set currentPath = path(app.request.attributes.get('_route'), app.request.attributes.get('_route_params')) %}  
  69.           {% set nOffset = 2 %}
  70.           {% if current_locale_code != 'en' %}
  71.               {% set nOffset = 3 %}
  72.           {% endif %}
  73.           {% set aPath = currentPath |split('/') %}           
  74.           {% set url_2col = '' %}
  75.           {% for item in aPath %}
  76.               {% if loop.index0 != dropdown_target+nOffset %}
  77.                   {% if url_2col == '' %}
  78.                       {% set url_2col = url_2col~item %}
  79.                   {% else %}
  80.                       {% set url_2col = url_2col~'/'~item %}
  81.                   {% endif %}
  82.               {% endif %}    
  83.         {% endfor %}
  84.           {% set url_2col = '/'~url_2col %}
  85.       <option value="{{ url_2col }}">{{ app.session.get('ui_str')["bible.breadcrumbs.removetranslation"] }}</option>  
  86.       <script>
  87.         aRemoveLink[{{ dropdown_target }}] = "{{ url_2col }}";
  88.        </script>  
  89.   {% endif %}
  90.     
  91.   {% if currently_selected is null %}
  92.     <option selected value="#">{{ app.session.get('ui_str')["bible.translation.unknown"] }}</option>  
  93.   {% endif %}
  94.         
  95.   {% include 'NCBSWBundle:Bible:interface/translation_dropdown/language_section.html.twig' %}
  96.     
  97. </select>