simplified push handler