commit 6952e5ee5f6f00399c5fdf2712fa4df8e78593c0
parent c3671ecb93d255ebce3b2bd61f0fa41dab0eb856
Author: Sergej Orlov <wladimirych@gmail.com>
Date: Wed, 9 Oct 2019 20:04:08 +0200
panoramas: handle images from wikimedia without coordinates #253
Wikimedia commons geosearch API often responds with images without
coordinates. As we did not expect it, the exception was thrown and no
images were displayed when multiple images were returned.
Now we simply skip such images in API responses. Also we now skip images
with file extensions other than ".jpg" and ".JPG"
Diffstat:
1 file changed, 4 insertions(+), 0 deletions(-)
diff --git a/src/lib/leaflet.control.panoramas/lib/wikimedia/index.js b/src/lib/leaflet.control.panoramas/lib/wikimedia/index.js
@@ -20,6 +20,10 @@ function parseSearchResponse(resp) {
const images = [];
if (resp && resp.query && resp.query.pages && resp.query.pages) {
for (let page of Object.values(resp.query.pages)) {
+ if (!page.coordinates || page.title.slice(-4).toLowerCase() != '.jpg') {
+ continue;
+ }
+
const iinfo = page.imageinfo[0];
let imageDescription = iinfo.extmetadata.ImageDescription ? iinfo.extmetadata.ImageDescription.value : null;
let objectDescription = iinfo.extmetadata.ObjectName ? iinfo.extmetadata.ObjectName.value : null;