]> git.openstreetmap.org Git - rails.git/blobdiff - app/views/application/_auth_providers.html.erb
Stack preferred auth button over other auth buttons on small screens
[rails.git] / app / views / application / _auth_providers.html.erb
index 12f8c4d7dbddb6903584904368426f2375b870ea..ddf143d968b26c6e618a9afb73fae7599edbd69d 100644 (file)
@@ -1,17 +1,18 @@
-<div>
-  <div class="list-inline justify-content-center d-flex align-items-center flex-wrap w-100 mb-3" id="login_auth_buttons">
+<% 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 = 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 -%>
+<div>
+  <%= tag.div :id => "login_auth_buttons",
+              :class => ["row row-cols-1", { "row-cols-sm-2" => prefered_auth_button_available }, "g-2 mb-3"] do %>
 
     <% if prefered_auth_button_available %>
-      <div class="list-inline justify-content-center d-flex align-items-center flex-wrap w-50">
+      <div class="col justify-content-center d-flex align-items-center flex-wrap">
         <% %w[google facebook microsoft github wikipedia].each do |provider| %>
           <% if Settings.key?("#{provider}_auth_id".to_sym) -%>
             <% if @preferred_auth_provider == provider %>
           <% end -%>
         <% end -%>
       </div>
-      <div class="list-inline justify-content-center d-flex align-items-center flex-wrap w-50">
-    <% else %>
-      <div class="list-inline justify-content-center d-flex align-items-center flex-wrap w-100">
     <% end %>
 
-      <%= link_to image_tag("openid.png",
-                            :alt => t("application.auth_providers.openid.title"),
-                            :size => "36"),
-                  "#",
-                  :id => "openid_open_url",
-                  :title => t("application.auth_providers.openid.title"),
-                  :class => "p-2 d-block" %>
+    <div class="col justify-content-center d-flex align-items-center flex-wrap gap-2">
+      <%= 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 %>
         <% end %>
       <% end -%>
     </div>
-  </div>
+  <% end %>
 
   <%# :tabindex starts high to allow rendering at the bottom of the template %>
   <%= form_tag(auth_path(:provider => "openid"), :id => "openid_login_form") do %>
     <div id="login_openid_url" class="mb-3">
-      <label for="openid_url" class="form-label"><%= t ".openid_html", :logo => openid_logo %></label>
+      <label for="openid_url" class="form-label">
+        <%= image_tag "openid.svg", :size => "36", :alt => "", :class => "align-text-bottom" %>
+        <%= t ".openid_url" %>
+      </label>
       <%= hidden_field_tag("referer", params[:referer], :autocomplete => "off") %>
-      <%= text_field_tag("openid_url", "", :tabindex => 20, :autocomplete => "on", :class => "openid_url form-control") %>
+      <%= text_field_tag("openid_url", "", :tabindex => 20, :autocomplete => "on", :class => "form-control") %>
       <span class="form-text text-body-secondary">(<a href="<%= t "accounts.edit.openid.link" %>" target="_new"><%= t "accounts.edit.openid.link text" %></a>)</span>
     </div>