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