The purpose of the About Me Tab is to display user information, like name, year, and email, to the current user. The About Me Tab allows users to update their year, reset their password, and logout. The update year button increments the user’s year by one and automatically changes their year status on the About Me Tab. The reset password button allows users to change their current password (by sending them a reset password email) to use for all future log ins. The sign out button signs the user out of the app, the Firebase database, and sends them back to the home page of the app.
The biggest challenge I faced while creating this tab was reading from the Firebase database. I kept getting an error that I didn’t have permission to access the database when I tried to access the user’s name, year, and email. I could still log in to the app, which requires database authentication, so I confused as to why I didn’t have access to read from the database. I spent several hours debugging code and searching through Stack Overflow forums for tips, but I couldn’t find anything useful. I finally found an answer buried in the comments of an old Stack Overflow question. There was a setting within my Firebase database that was incorrectly configured. The rules for accessing the database were set to false when they needed to be set to true. The error took less than a minute to fix, but finding the error wasted a lot of time. Once it was fixed, I was able to retrieve and display user information on the tab.