summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAaron Stone <aaron@serendipity.cx>2014-08-11 11:06:15 -0700
committerAaron Stone <aaron@serendipity.cx>2015-02-13 23:49:12 -0800
commit252ee4e7e51ae18f30f4b9089be850daaca958ac (patch)
tree56599d3fc9d0156b0efafe7222eed447db2c2676
parentd785b20c43b114bbae385a5446f9369370fbd3bf (diff)
downloadgitlab-ce-252ee4e7e51ae18f30f4b9089be850daaca958ac.tar.gz
Improve login screen when only OmniAuth providers are enabled
Avoids an empty Sign in box when signup_enabled? is false, and avoids showing "No authentication methods configured" unless there really are none. OmniAuth signin gets its own file for consistency with signin and signup and LDAP.
-rw-r--r--app/views/devise/sessions/new.html.haml16
-rw-r--r--app/views/devise/shared/_omniauth_box.html.haml10
-rw-r--r--app/views/devise/shared/_signin_box.html.haml16
3 files changed, 24 insertions, 18 deletions
diff --git a/app/views/devise/sessions/new.html.haml b/app/views/devise/sessions/new.html.haml
index fa2460518fc..89e4e229ac0 100644
--- a/app/views/devise/sessions/new.html.haml
+++ b/app/views/devise/sessions/new.html.haml
@@ -1,6 +1,18 @@
%div
- = render 'devise/shared/signin_box'
+ - if signin_enabled? || ldap_enabled?
+ = render 'devise/shared/signin_box'
- - if signup_enabled?
+ -# Omniauth fits between signin/ldap signin and signup and does not have a surrounding box
+ - if Gitlab.config.omniauth.enabled && devise_mapping.omniauthable?
+ .clearfix.prepend-top-20
+ = render 'devise/shared/omniauth_box'
+
+ -# Signup only makes sense if you can also sign-in
+ - if signin_enabled? && signup_enabled?
.prepend-top-20
= render 'devise/shared/signup_box'
+
+ -# Show a message if none of the mechanisms above are enabled
+ - if !signin_enabled? && !ldap_enabled? && !(Gitlab.config.omniauth.enabled && devise_mapping.omniauthable?)
+ %div
+ No authentication methods configured.
diff --git a/app/views/devise/shared/_omniauth_box.html.haml b/app/views/devise/shared/_omniauth_box.html.haml
new file mode 100644
index 00000000000..4cd1c303b22
--- /dev/null
+++ b/app/views/devise/shared/_omniauth_box.html.haml
@@ -0,0 +1,10 @@
+%p
+ %span.light
+ Sign in with &nbsp;
+ - providers = additional_providers
+ - providers.each do |provider|
+ %span.light
+ - if default_providers.include?(provider)
+ = link_to authbutton(provider, 32), omniauth_authorize_path(resource_name, provider)
+ - else
+ = link_to provider.to_s.titleize, omniauth_authorize_path(resource_name, provider), class: "btn"
diff --git a/app/views/devise/shared/_signin_box.html.haml b/app/views/devise/shared/_signin_box.html.haml
index 805cf816231..8faa6398a60 100644
--- a/app/views/devise/shared/_signin_box.html.haml
+++ b/app/views/devise/shared/_signin_box.html.haml
@@ -24,19 +24,3 @@
- elsif signin_enabled?
= render 'devise/sessions/new_base'
- - else
- %div
- No authentication methods configured.
-
-- if Gitlab.config.omniauth.enabled && devise_mapping.omniauthable?
- .clearfix.prepend-top-20
- %p
- %span.light
- Sign in with &nbsp;
- - providers = additional_providers
- - providers.each do |provider|
- %span.light
- - if default_providers.include?(provider)
- = link_to authbutton(provider, 32), omniauth_authorize_path(resource_name, provider)
- - else
- = link_to provider.to_s.titleize, omniauth_authorize_path(resource_name, provider), class: "btn" \ No newline at end of file