added guards, fixed frontend for forgot pass