refactored notification preview (strategy pattern)