Changing app user account email address

My app (public with email) requires users to create short individual profiles. When they create their profiles, I have Glide auto-populate their email address with the address they used to sign-in.

The app allows them to edit their profiles, for example, change their profile picture, phone number, or “about me” statement. I’d like to allow them to change their email address, too (e.g., from a work to a personal address), but it’s not clear whether Glide would handle this. A few things I’ve observed so far:

  • The app could still track each user’s content by assigning each a unique ID at the time they create their profile (it won’t be visible to them). When they update their profile, it would be in the record (row) identified by the UID.
  • All content that is “filtered by user email” would no longer be visible, because the user is still signed-in under the old email address.
  • Glide does not currently have a sign-out function, so if the user closes and re-opens the app, they will still be signed-in under the old email address.

Based on the above, it sounds like I should not allow users to change their email addresses in their profile. Can somebody confirm this?

Generally, it’s probably not a good idea to let them change their email since it’s so ingrained into how Glide works. You could use Unique ID and attach it to all of your records, then use a relation to the user profile sheet and a lookup to pull in their email into each data sheet that uses Unique ID. That way you could still use email for per user data, but would probably lose chats and favorites for that user if they ever change it. I think they would still have to re-login with the new email, which isn’t an easy process (clearing browser cache to first logout). I haven’t tried it myself. Might be slightly doable, but with some complications. I suppose any app that uses email for authentication would run into this same problem.

2 Likes

Thanks. That’s where I was leaning; just wanted to confirm I wasn’t missing something. If @Jeff_Hager recommends against it, I’m not going to try it!

hehe, well, don’t consider me an authority on it. :wink: I just think it would bite you later on.

1 Like

I concur with Jeff, doing this somewhat after the fact is difficult and complex. Even if pre planned it has many extra links and lookups that would need to be created and maintained.

2 Likes

Thank you both for weighing in.

Just want to confirm: currently, there is no way to present the user’s email address to them when they first sign-in. I can (and do) capture it using the “User’s email address” special value when they create their profile, and it shows up in the menu button, but there’s no way to present it to them in a screen (i.e., “here’s the email address we’ll be using for your profile: xxx@xxx.xxx”) before it’s captured in a Google Sheet.

There is no way to modify the login screen at this time to include a statement like that, but you could probably put something on the Profile creation page, so they have a chance to change their mind before proceeding any further. You can also display the email address anywhere where you have the email address in the sheet. You just can’t make it an editable field in Add/Edit mode.

Again, since there is no logout option, you would have to explain the process of clearing cache if they logged in and later decided to change their email address. You could maybe hack this if using email whitelist. You could allow them to delete their whitelist record which may log them out since the email is invalid.