diff --git a/modules/portal/app/assets/css/portal/_layout.scss b/modules/portal/app/assets/css/portal/_layout.scss
index 8bb488f6b..0b9526ddf 100644
--- a/modules/portal/app/assets/css/portal/_layout.scss
+++ b/modules/portal/app/assets/css/portal/_layout.scss
@@ -126,8 +126,8 @@ ul.dropdown-menu {
.login-or-signup {
@include make-col-ready();
- @include make-col(8);
- @include make-col-offset(2);
+ @include make-col(6);
+ @include make-col-offset(3);
}
}
}
diff --git a/modules/portal/app/assets/css/portal/_style.scss b/modules/portal/app/assets/css/portal/_style.scss
index 3af1ca469..4128e5cf7 100644
--- a/modules/portal/app/assets/css/portal/_style.scss
+++ b/modules/portal/app/assets/css/portal/_style.scss
@@ -953,25 +953,70 @@ lock.errors,
@extend .fa-spin;
}
+%button-signin {
+ text-align: start;
+ background-position: 1rem center;
+ background-repeat: no-repeat;
+ padding-inline-start: 3.5rem;
+}
+
// Login / Register social buttons
-.btn-facebook {
- @include button-variant(#354E84, #354E84);
+.btn-signin-facebook {
+ //@include button-variant(#1877F2, #1877F2);
+ @include button-variant(#FFF, #DDD);
+ @extend %button-signin;
+ background-image: url(/v/img/facebook-signin-icon.svg);
+ background-size: 1.5rem;
+}
+
+.btn-signin-google {
+ @include button-variant(#FFF, #DDD);
+ @extend %button-signin;
+ background-image: url(/v/img/google-signin-icon.svg);
+ background-position: 0.4rem center;
+}
+
+.btn-signin-microsoft {
+ @include button-variant(#FFF, #DDD);
+ @extend %button-signin;
+ background-image: url(/v/img/microsoft-signin-icon.svg);
}
-.btn-google {
- @include button-variant(#DD4B39, #DD4B39);
+.btn-signin-yahoo {
+ @include button-variant(#FFF, #DDD);
+ @extend %button-signin;
+ background-image: url(/v/img/yahoo-signin-icon.svg);
+ background-position: 0.5rem center;
}
-.btn-microsoft {
- @include button-variant(#00A4EF, #00A4EF);
+.btn-signin-openid {
+ @include button-variant(#FFF, #DDD);
+ @extend %button-signin;
+ background-image: url(/v/img/openid-signin-icon.svg);
+ background-size: 1.7rem;
+ background-position: 1rem 0.5rem;
}
-.btn-yahoo {
- @include button-variant(#7B0099, #7B0099);
+.oauth-providers {
+ display: flex;
+ flex-direction: column;
+ row-gap: $margin-sm;
}
-.btn-openid {
- @include button-variant(#949494, #949494);
+.or-oauth {
+ color: $text-muted;
+ font-style: italic;
+ font-weight: normal;
+ width: 100%;
+ text-align: center;
+ border-bottom: 1px solid lighten($text-muted, 20%);
+ line-height: 0.1em;
+ margin: $margin-lg 0;
+
+ span {
+ background:#fff;
+ padding: 0 $margin-sm;
+ }
}
.more-login-options {
@@ -982,6 +1027,10 @@ lock.errors,
}
}
+.login-button {
+ width: 100%;
+}
+
.login-disclaimer {
font-size: $font-size-sm;
color: $text-darkened;
diff --git a/modules/portal/app/views/account/changePasswordForm.scala.html b/modules/portal/app/views/account/changePasswordForm.scala.html
index 78815acc5..305ddc6a8 100644
--- a/modules/portal/app/views/account/changePasswordForm.scala.html
+++ b/modules/portal/app/views/account/changePasswordForm.scala.html
@@ -4,12 +4,24 @@
@formHelpers.csrfToken()
@formHelpers.globalErrors(form)
- @helper.inputPassword(form("current"), 'type -> "password", 'placeholder -> Messages("login.password.current"))
- @helper.inputPassword(form("password"), 'type -> "password", 'placeholder -> Messages("login.password.new"))
- @helper.inputPassword(form("confirm"), 'type -> "password", 'placeholder -> Messages("login.password.new.confirm"))
+ @helper.inputPassword(
+ form("current"),
+ 'type -> "password",
+ 'placeholder -> Messages("login.password.current")
+ )
+ @helper.inputPassword(
+ form("password"),
+ 'type -> "password",
+ 'placeholder -> Messages("login.password.new")
+ )
+ @helper.inputPassword(
+ form("confirm"),
+ 'type -> "password",
+ 'placeholder -> Messages("login.password.new.confirm")
+ )
}
diff --git a/modules/portal/app/views/account/forgotPassword.scala.html b/modules/portal/app/views/account/forgotPassword.scala.html
index be9939e69..577c2093b 100644
--- a/modules/portal/app/views/account/forgotPassword.scala.html
+++ b/modules/portal/app/views/account/forgotPassword.scala.html
@@ -9,10 +9,16 @@
@formHelpers.csrfToken()
@formHelpers.globalErrors(form)
@common.recaptcha(recaptchaKey)
- @helper.inputText(form("email"), 'autofocus -> "autofocus", 'placeholder -> Messages("login.email"), 'type -> "email")
+ @helper.inputText(
+ form("email"),
+ 'autofocus -> "autofocus",
+ 'placeholder -> Messages("login.email"),
+ 'type -> "email",
+ 'class -> "form-control form-control-lg"
+ )
-
+
}
}
diff --git a/modules/portal/app/views/account/login.scala.html b/modules/portal/app/views/account/login.scala.html
index 5aa27a8ac..37cea60f2 100644
--- a/modules/portal/app/views/account/login.scala.html
+++ b/modules/portal/app/views/account/login.scala.html
@@ -20,13 +20,16 @@
Html(s"${Messages("login.signup.prompt.text")}")))
+ @views.html.account.loginForm(pwForm)
+
+
Or
+
@views.html.account.oauth2Form(
openIdForm,
oauthConfig,
isLogin = true,
oauth2Call = name => controllers.portal.account.routes.Accounts.oauth2Login(name)
)
- @views.html.account.loginForm(pwForm)
}
diff --git a/modules/portal/app/views/account/loginForm.scala.html b/modules/portal/app/views/account/loginForm.scala.html
index f717031b7..9da549edc 100644
--- a/modules/portal/app/views/account/loginForm.scala.html
+++ b/modules/portal/app/views/account/loginForm.scala.html
@@ -7,7 +7,7 @@
@helper.inputText(
pwForm("email"),
'id -> "login_email",
- 'class -> "form-control",
+ 'class -> "form-control form-control-lg",
'autocomplete -> "email",
'autofocus -> "autofocus",
'placeholder -> Messages("login.email"),
@@ -18,7 +18,7 @@
@helper.inputPassword(
pwForm("password"),
'id -> "login_password",
- 'class -> "form-control",
+ 'class -> "form-control form-control-lg",
'autocomplete -> "current-password",
'placeholder -> Messages("login.password"),
'_label -> Messages("login.password"),
@@ -36,6 +36,6 @@
Html(s"${Messages("termsAndConditions").toLowerCase(messages.lang.toLocale)}")
))
-
+
}
diff --git a/modules/portal/app/views/account/oauth2Form.scala.html b/modules/portal/app/views/account/oauth2Form.scala.html
index 1bfb44dfc..915f22def 100644
--- a/modules/portal/app/views/account/oauth2Form.scala.html
+++ b/modules/portal/app/views/account/oauth2Form.scala.html
@@ -8,30 +8,35 @@
@defining(if (isLogin) conf.oauth2LoginProviders else conf.oauth2RegistrationProviders) { enabledProviders =>
-
-
- @helper.inputText(
- openIdForm("openid_identifier"),
- 'id -> s"${if(isLogin) "login" else "signup"}_openid_identifier",
- 'placeholder -> Messages("login.openid.urlPlaceholder"),
- 'type -> "url"
- )
-
+ @if(isLogin) {
+
+ }
}
}
}
diff --git a/modules/portal/app/views/account/register.scala.html b/modules/portal/app/views/account/register.scala.html
index 2f9afa597..fb102e702 100644
--- a/modules/portal/app/views/account/register.scala.html
+++ b/modules/portal/app/views/account/register.scala.html
@@ -28,13 +28,16 @@
Html(s"
${Messages("login.login.prompt.text")}")))
+ @views.html.account.signupForm(registerForm, registerAction, recaptchaKey)
+
+
Or
+
@views.html.account.oauth2Form(
openIdForm,
oauthConfig,
isLogin = false,
oauth2Call = name => controllers.portal.account.routes.Accounts.oauth2Register(name)
)
- @views.html.account.signupForm(registerForm, registerAction, recaptchaKey)
}
diff --git a/modules/portal/app/views/account/resetPassword.scala.html b/modules/portal/app/views/account/resetPassword.scala.html
index 415d54085..eeaa9c177 100644
--- a/modules/portal/app/views/account/resetPassword.scala.html
+++ b/modules/portal/app/views/account/resetPassword.scala.html
@@ -9,11 +9,20 @@
@formHelpers.csrfToken()
@formHelpers.globalErrors(form)
- @helper.inputPassword(form("password"), 'autofocus -> "autofocus", 'placeholder -> Messages("login.password.new"))
- @helper.inputPassword(form("confirm"), 'placeholder -> Messages("login.password.new.confirm"))
+ @helper.inputPassword(
+ form("password"),
+ 'autofocus -> "autofocus",
+ 'placeholder -> Messages("login.password.new"),
+ 'class -> "form-control form-control-lg"
+ )
+ @helper.inputPassword(
+ form("confirm"),
+ 'placeholder -> Messages("login.password.new.confirm"),
+ 'class -> "form-control form-control-lg"
+ )
-
+
}
}
diff --git a/modules/portal/app/views/account/signupForm.scala.html b/modules/portal/app/views/account/signupForm.scala.html
index 549736530..8f8a7e837 100644
--- a/modules/portal/app/views/account/signupForm.scala.html
+++ b/modules/portal/app/views/account/signupForm.scala.html
@@ -12,6 +12,7 @@
form(NAME),
'autocomplete -> "name",
'required -> "required",
+ 'class -> "form-control form-control-lg",
'placeholder -> Messages("profile.name"),
'_label -> Messages("profile.name")
)
@@ -19,6 +20,7 @@
form(EMAIL),
'id -> "login_email",
'autocomplete -> "email",
+ 'class -> "form-control form-control-lg",
'placeholder -> Messages("login.email"),
'_label -> Messages("login.email"),
'type -> "email",
@@ -27,6 +29,7 @@
@helper.inputPassword(
form(PASSWORD),
'id -> "signup_password",
+ 'class -> "form-control form-control-lg",
'autocomplete -> "new-password",
'placeholder -> Messages("login.password"),
'_label -> Messages("login.password")
@@ -34,6 +37,7 @@
@helper.inputPassword(
form(CONFIRM),
'autocomplete -> "new-password",
+ 'class -> "form-control form-control-lg",
'placeholder -> Messages("login.password.confirm"),
'_label -> Messages("login.password.confirm")
)
@@ -51,6 +55,6 @@
-
+
}
diff --git a/modules/portal/public/img/facebook-signin-icon.svg b/modules/portal/public/img/facebook-signin-icon.svg
new file mode 100644
index 000000000..bc2d2257b
--- /dev/null
+++ b/modules/portal/public/img/facebook-signin-icon.svg
@@ -0,0 +1,56 @@
+
+
diff --git a/modules/portal/public/img/google-signin-icon.svg b/modules/portal/public/img/google-signin-icon.svg
new file mode 100644
index 000000000..8f87efa8d
--- /dev/null
+++ b/modules/portal/public/img/google-signin-icon.svg
@@ -0,0 +1,65 @@
+
+
diff --git a/modules/portal/public/img/microsoft-signin-icon.svg b/modules/portal/public/img/microsoft-signin-icon.svg
new file mode 100644
index 000000000..1f7397648
--- /dev/null
+++ b/modules/portal/public/img/microsoft-signin-icon.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/modules/portal/public/img/openid-signin-icon.svg b/modules/portal/public/img/openid-signin-icon.svg
new file mode 100644
index 000000000..827c3e61e
--- /dev/null
+++ b/modules/portal/public/img/openid-signin-icon.svg
@@ -0,0 +1,113 @@
+
+
+
+
diff --git a/modules/portal/public/img/yahoo-signin-icon.svg b/modules/portal/public/img/yahoo-signin-icon.svg
new file mode 100644
index 000000000..db3ed5cea
--- /dev/null
+++ b/modules/portal/public/img/yahoo-signin-icon.svg
@@ -0,0 +1,52 @@
+
+
+
+
diff --git a/project/plugins.sbt b/project/plugins.sbt
index 98c04264a..446caf07b 100644
--- a/project/plugins.sbt
+++ b/project/plugins.sbt
@@ -9,7 +9,7 @@ resolvers += "Typesafe repository" at "https://repo.typesafe.com/typesafe/releas
// Use the Play sbt plugin for Play projects
addSbtPlugin("com.typesafe.play" % "sbt-plugin" % "2.8.20")
-addSbtPlugin("org.irundaia.sbt" % "sbt-sassify" % "1.5.1")
+addSbtPlugin("io.github.irundaia" % "sbt-sassify" % "1.5.2")
addSbtPlugin("com.typesafe.sbt" % "sbt-uglify" % "2.0.0")