Several email-related bugfixes

A couple users on Discord brought some bugs to my attention. They’re all related to the sign-up flow, so I’m very thankful to have fixed these before Shmeppy’s early access launch (described in Roadmap Snapshot: Towards an Early Access Launch).

Here’s the breakdown of the bugs:

Periods at the end of URLs

Shmeppy’s validation email (the email you get when you register, that askes you to validate your email) had a link that looks like this: https://shmeppy.com/register/validate/abc. That period at the end is usually (correctly) recognized as not a part of the link, but some email clients would instead include the period, navigating the user to a malformed URL when they clicked it.

This would cause them to hit a 404 page on Shmeppy :frowning:. A pretty unpleasant experience. To correct this for all users, I’ve reworked the wording so the link appears in the middle of the senetence: no more period :slight_smile:.

Case insensitive emails

Shmeppy didn’t properly recognize that foo@bob.invalid and Foo@bob.invalid are the same email. Now Shmeppy does :slightly_smiling_face:.

Hopefully I fixed this everywhere emails are used in the code. I think I was thorough, but we’ll see if this bites us again.

Leading and trailing spaces in emails

Shmeppy didn’t trim whitespace around emails, so " foo@bob.invalid" is a legal email, and you would have to type in that leading space whenever you logged into Shmeppy.

Now Shmeppy correctly ignores leading and trailing whitespace.

I found a few more small bugs along the road to fix these three, but these are the big ones.

Happy Shmepping :slightly_smiling_face:!