]> git.openstreetmap.org Git - rails.git/blob - app/views/languages_panes/_select_language_list.html.erb
Switch back to using a released version of active_record_union
[rails.git] / app / views / languages_panes / _select_language_list.html.erb
1 <div class="mb-3 px-2">
2   <%= text_field_tag :language_search,
3                      params[:language_search],
4                      :placeholder => t(".search_language", :default => "Search..."),
5                      :autocomplete => "off",
6                      :dir => "auto",
7                      :class => "form-control py-2 px-3" %>
8 </div>
9 <ul class="select_language_list list-unstyled column-gap-0">
10   <% AVAILABLE_LANGUAGES.each do |language| %>
11     <li class="language-item">
12       <% target_path = begin
13            uri = URI.parse(@source_page)
14            query_params = Rack::Utils.parse_nested_query(uri.query)
15            query_params["locale"] = language[:code]
16            uri.query = query_params.to_query
17            uri.to_s
18          rescue StandardError
19            "#{@source_page}?locale=#{language[:code]}"
20          end %>
21
22       <%= link_to target_path,
23                   :class => ["btn btn-link text-start",
24                              { "bg-body-secondary text-secondary-emphasis" => language[:code] == I18n.locale.to_s }],
25                   :data => { :turbo_prefetch => false,
26                              :bs_dismiss => "modal",
27                              :language_code => language[:code] } do %>
28         <span class="native_name d-block">
29           <% if language[:short_native_name] %>
30             <%= language[:short_native_name] %>
31             <% if language[:short_native_note] %>
32               <small>(<%= language[:short_native_note] %>)</small>
33             <% end %>
34           <% else %>
35             <%= language[:native_name] %>
36           <% end %>
37         </span>
38         <small class="current_locale_name d-block text-secondary">
39           <%= t ".languages.#{language[:code]}" %>
40         </small>
41       <% end %>
42     </li>
43   <% end %>
44 </ul>