Pretty much a follow along of Antonio Erdeljac's project using his video tutorial but using TOTP rather than OTP via mail (because sending emails for OTP just seems excessive to me) and fixed the issue while changing email with new verification in Settings page.