article update function