Skip to content
This repository has been archived by the owner on Jan 26, 2021. It is now read-only.

Settings

Yugantar Jain edited this page Jul 25, 2020 · 5 revisions

The Settings screen consists of five settings as of now. These settings have been divided into two sections.

Section 1 (About, Feedback, and Change Password)

These settings are non-destructive settings (eg. unlike delete user) and use navigation to take the user to a new screen for them.

  1. About - The About screen tells the user about the Mentorship System and its founding organization (Systers). It also features links to the 'Privacy Policy' and 'Terms Of Use' of AnitaB.org.

  2. Feedback - The Feedback form hasn't been implemented as of now, due to unavailability of an API in the backend.

  3. Change Password - The Change Password screen allows the user to change their Login password for the Mentorship System (and hence the app). It takes the current password, new password, and confirm new password as inputs.

Section 2 (Logout and Delete)

These are destructive settings (with varying degrees) and are action based. Their implementation includes showing of an confirmation alert and then performing the action. Also, these settings are highlighted in red color.

  1. Logout - This setting allows the user to log out from the app. This is an on-device operation and includes deleting of the user token from the keychain plus changing the isLoggedIn state in UserDefaults. Combine has been used with UserDefaults which observes for state changes, changing the isLoggedIn state automatically takes the user to the login screen.

  2. Delete Account - This settings permanently deletes the user account from the Mentorship System. A confirmation alert is shown, and on the user's confirmation for this action the backend network request is made. On a successful network request for deletion of account, the user is then logged out. After this step (deletion), the user will need to sign up as a new user to use the mentorship system.