fixing bugs with email ignore case feature
This commit is contained in:
parent
ff38858c74
commit
eba3bd6a5a
@ -50,15 +50,15 @@ def login():
|
||||
errors.append("too many logins. please use one of the existing login links that have been emailed to you")
|
||||
else:
|
||||
link = f"{current_app.config['BASE_URL']}/auth/magic/{token}"
|
||||
|
||||
|
||||
message = (f"Navigate to {link} to log into Capsul.\n"
|
||||
"\nIf you didn't request this, ignore this message.")
|
||||
|
||||
if len(ignoreCaseMatches) > 0:
|
||||
joinedMatches = " or ".join(ignoreCaseMatches)
|
||||
message = (f"You tried to log in as '{email}', but that account doesn't exist yet. "
|
||||
"If you would like to create a new account for '{email}', click here {link} "
|
||||
"If you meant to log in as {joinedMatches}, please return to capsul.org "
|
||||
joinedMatches = " or ".join(map(lambda x: f"'{x}'", ignoreCaseMatches))
|
||||
message = (f"You tried to log in as '{email}', but that account doesn't exist yet. \n"
|
||||
f"If you would like to create a new account for '{email}', click here {link} \n\n"
|
||||
f"If you meant to log in as {joinedMatches}, please return to https://capsul.org \n"
|
||||
"and log in again with the correct (case-sensitive) email address.")
|
||||
|
||||
current_app.config["FLASK_MAIL_INSTANCE"].send(
|
||||
|
@ -15,8 +15,8 @@ class DBModel:
|
||||
everLoggedIn = len(self.cursor.fetchall())
|
||||
ignoreCaseMatches = []
|
||||
if everLoggedIn == 0:
|
||||
self.cursor.execute("SELECT email FROM accounts WHERE lower_case_email = %s", (email.lower(), ))
|
||||
ignoreCaseMatches = self.cursor.fetchall()
|
||||
self.cursor.execute("SELECT email FROM accounts WHERE lower_case_email = %s AND email != %s", (email.lower(), email))
|
||||
ignoreCaseMatches = list(map(lambda x: x[0], self.cursor.fetchall()))
|
||||
|
||||
if hasExactMatch == 0:
|
||||
self.cursor.execute("INSERT INTO accounts (email, lower_case_email) VALUES (%s, %s)", (email, email.lower()))
|
||||
|
Loading…
Reference in New Issue
Block a user