provide modern autocomplete hints (fixes #6621)

This commit is contained in:
Niklas Fiekas 2020-05-15 12:02:30 +02:00
parent bde8938004
commit fd72ec8acb
7 changed files with 15 additions and 18 deletions

View file

@ -195,9 +195,6 @@ trait FormHelper { self: I18nHelper =>
tpe := "hidden"
)
def password(field: Field, content: Frag)(implicit ctx: Context): Frag =
group(field, content)(input(_, typ = "password")(required))
def passwordModified(field: Field, content: Frag)(modifiers: Modifier*)(implicit ctx: Context): Frag =
group(field, content)(input(_, typ = "password")(required)(modifiers))

View file

@ -18,9 +18,9 @@ object passwd {
h1(trans.changePassword()),
standardFlash(),
postForm(cls := "form3", action := routes.Account.passwdApply)(
form3.passwordModified(form("oldPasswd"), trans.currentPassword())(autofocus),
form3.password(form("newPasswd1"), trans.newPassword()),
form3.password(form("newPasswd2"), trans.newPasswordAgain()),
form3.passwordModified(form("oldPasswd"), trans.currentPassword())(autofocus, autocomplete := "current-password"),
form3.passwordModified(form("newPasswd1"), trans.newPassword())(autocomplete := "new-password"),
form3.passwordModified(form("newPasswd2"), trans.newPasswordAgain())(autocomplete := "new-password"),
form3.action(form3.submit(trans.apply()))
)
)

View file

@ -41,9 +41,9 @@ object twoFactor {
qrCode,
div(cls := "form-group explanation")(enterPassword()),
form3.hidden(form("secret")),
form3.passwordModified(form("passwd"), trans.password())(autofocus),
form3.passwordModified(form("passwd"), trans.password())(autofocus, autocomplete := "current-password"),
form3.group(form("token"), authenticationCode())(
form3.input(_)(pattern := "[0-9]{6}", autocomplete := "off", required)
form3.input(_)(pattern := "[0-9]{6}", autocomplete := "one-time-code", required)
),
form3.globalError(form),
div(cls := "form-group")(ifYouLoseAccess()),
@ -65,9 +65,9 @@ object twoFactor {
standardFlash(),
postForm(cls := "form3", action := routes.Account.disableTwoFactor)(
p(twoFactorDisable()),
form3.password(form("passwd"), trans.password()),
form3.passwordModified(form("passwd"), trans.password())(autocomplete := "current-password"),
form3.group(form("token"), authenticationCode())(
form3.input(_)(pattern := "[0-9]{6}", autocomplete := "off", required)
form3.input(_)(pattern := "[0-9]{6}", autocomplete := "one-time-code", required)
),
form3.action(form3.submit(disableTwoFactor()))
)

View file

@ -20,7 +20,7 @@ object username {
postForm(cls := "form3", action := routes.Account.usernameApply)(
form3.globalError(form),
form3.group(form("username"), trans.username(), help = trans.changeUsernameDescription().some)(
form3.input(_)(autofocus, required)
form3.input(_)(autofocus, required, autocomplete := "username")
),
form3.action(form3.submit(trans.apply()))
)

View file

@ -18,11 +18,11 @@ object bits {
frag(
form3.group(username, if (register) trans.username() else trans.usernameOrEmail()) { f =>
frag(
form3.input(f)(autofocus, required),
form3.input(f)(autofocus, required, autocomplete := "username"),
p(cls := "error username-exists none")(trans.usernameAlreadyUsed())
)
},
form3.password(password, trans.password()),
form3.passwordModified(password, trans.password())(autocomplete := (if (register) "new-password" else "current-password")),
emailOption.map { email =>
form3.group(email, trans.email(), help = frag("We will only use it for password reset.").some)(
form3.input(_, typ = "email")(required)
@ -83,8 +83,8 @@ object bits {
),
postForm(cls := "form3", action := routes.Auth.passwordResetConfirmApply(token))(
form3.hidden(form("token")),
form3.passwordModified(form("newPasswd1"), trans.newPassword())(autofocus),
form3.password(form("newPasswd2"), trans.newPasswordAgain()),
form3.passwordModified(form("newPasswd1"), trans.newPassword())(autofocus, autocomplete := "new-password"),
form3.passwordModified(form("newPasswd2"), trans.newPasswordAgain())(autocomplete := "new-password"),
form3.globalError(form),
form3.action(form3.submit(trans.changePassword()))
)
@ -108,7 +108,7 @@ object bits {
),
p("We will send you an email containing a link to log you in."),
postForm(cls := "form3", action := routes.Auth.magicLinkApply)(
form3.group(form("email"), trans.email())(form3.input(_, typ = "email")(autofocus)),
form3.group(form("email"), trans.email())(form3.input(_, typ = "email")(autofocus, autocomplete := "email")),
views.html.base.captcha(form, captcha),
form3.action(form3.submit(trans.emailMeALink()))
)

View file

@ -36,7 +36,7 @@ object login {
),
div(cls := "two-factor none")(
form3.group(form("token"), raw("Authentication code"), help = Some(twoFactorHelp))(
form3.input(_)(autocomplete := "off", pattern := "[0-9]{6}")
form3.input(_)(autocomplete := "one-time-code", pattern := "[0-9]{6}")
),
p(cls := "error none")("Invalid code."),
form3.submit(trans.signIn(), icon = none)

View file

@ -273,7 +273,7 @@ final private class TourFields(form: Form[_], editTeamBattle: Boolean = false)(i
trans.password(),
help = trans.makePrivateTournament().some,
half = true
)(form3.input(_))
)(form3.input(_)(autocomplete := "off"))
def startDate =
form3.group(
form("startDate"),