using job to run sync background with monitor
don't refresh if it's preview