added image caching to avoid hotlinking