add image upload function and push function refresh