refactor: update user edit view and refactor controllers