extend active model callbacks