refactored userInfoCtrl