moved create visit logic to user model