X-Git-Url: https://git.openstreetmap.org./rails.git/blobdiff_plain/d80fac7ad90bfd20d1ad66fba034c2a93e5713d2..738e66afa6231390f52679fe8b343478643f5684:/app/views/application/_auth_providers.html.erb?ds=sidebyside diff --git a/app/views/application/_auth_providers.html.erb b/app/views/application/_auth_providers.html.erb index ddf143d96..f6665cefe 100644 --- a/app/views/application/_auth_providers.html.erb +++ b/app/views/application/_auth_providers.html.erb @@ -1,59 +1,45 @@ -<% prefered_auth_button_available = false %> -<% %w[google facebook microsoft github wikipedia].each do |provider| %> - <% if Settings.key?("#{provider}_auth_id".to_sym) -%> - <% if @preferred_auth_provider == provider %> - <% prefered_auth_button_available = true %> - <% end %> - <% end -%> -<% end -%> +<% prefered_auth_button_available = @preferred_auth_provider != "openid" && Auth.providers.value?(@preferred_auth_provider) %>
<%= tag.div :id => "login_auth_buttons", - :class => ["row row-cols-1", { "row-cols-sm-2" => prefered_auth_button_available }, "g-2 mb-3"] do %> + :class => ["collapse show row row-cols-1", { "row-cols-sm-2" => prefered_auth_button_available }, "g-2 mb-3"] do %> <% if prefered_auth_button_available %>
- <% %w[google facebook microsoft github wikipedia].each do |provider| %> - <% if Settings.key?("#{provider}_auth_id".to_sym) -%> - <% if @preferred_auth_provider == provider %> - <%= auth_button_preferred provider, provider %> - <% end %> - <% end -%> - <% end -%> + <%= auth_button_preferred @preferred_auth_provider %>
<% end %>
- <%= button_tag image_tag("openid.svg", - :alt => t(".openid.alt"), - :size => "36"), - :type => "button", - :id => "openid_open_url", - :title => t(".openid.title"), - :class => "btn btn-light p-2" %> - - <% %w[google facebook microsoft github wikipedia].each do |provider| %> - <% unless @preferred_auth_provider == provider %> - <% if Settings.key?("#{provider}_auth_id".to_sym) -%> - <%= auth_button provider, provider %> - <% end -%> - <% end %> + <% Auth.providers.each_value do |provider| %> + <% if provider == "openid" %> + <%= button_tag image_tag("auth_providers/openid.svg", + :alt => t(".openid.alt"), + :size => "36"), + :type => "button", + :data => { "bs-toggle" => "collapse", + "bs-target" => "#login_auth_buttons, #openid_login_form" }, + :title => t(".openid.title"), + :class => "btn btn-light p-2" %> + <% elsif provider != @preferred_auth_provider %> + <%= auth_button provider %> + <% end -%> <% end -%>
<% end %> <%# :tabindex starts high to allow rendering at the bottom of the template %> - <%= form_tag(auth_path(:provider => "openid"), :id => "openid_login_form") do %> -
+ <%= form_tag auth_path(:provider => "openid"), :id => "openid_login_form", :class => "collapse" do %> +
<%= hidden_field_tag("referer", params[:referer], :autocomplete => "off") %> - <%= text_field_tag("openid_url", "", :tabindex => 20, :autocomplete => "on", :class => "form-control") %> + <%= text_field_tag("openid_url", "https://", :tabindex => 20, :autocomplete => "on", :class => "form-control") %> (" target="_new"><%= t "accounts.edit.openid.link text" %>)
- <%= submit_tag t(".openid_login_button"), :tabindex => 21, :id => "openid_login_button", :class => "btn btn-primary" %> + <%= submit_tag t(".openid_login_button"), :tabindex => 21, :class => "btn btn-primary" %> <% end %>