implement push
structuring web contrller and user model