diff --git a/frontend/identities.html b/frontend/identities.html index 2be9f5d..138d14d 100755 --- a/frontend/identities.html +++ b/frontend/identities.html @@ -20,24 +20,22 @@ function createFace(faceId, photoId, selectable) { div.setAttribute("photo-id", photoId); div.setAttribute("face-id", faceId); div.style.backgroundImage = "url(face-data/" + (faceId % 100) + "/" + faceId + "-original.png)"; - if (!selectable) { - div.addEventListener("click", (event) => { + div.addEventListener("click", (event) => { + if (!selectable || event.ctrlKey) { let photoId = parseInt(event.currentTarget.getAttribute("photo-id")); if (photoId) { window.open("face-explorer.html?" + photoId, "photo-" + photoId); } else { alert("No photo id mapped to face."); } - }); - } else { - div.addEventListener("click", (event) => { + } else { if (event.currentTarget.hasAttribute("disabled")) { event.currentTarget.removeAttribute("disabled"); } else { event.currentTarget.setAttribute("disabled", ""); } - }); - } + } + }); return div; } diff --git a/server/routes/faces.js b/server/routes/faces.js index 064100a..7895cde 100644 --- a/server/routes/faces.js +++ b/server/routes/faces.js @@ -111,7 +111,7 @@ router.get("/:id?", (req, res) => { }).then((relatedFaces) => { faces.forEach((face) => { face.relatedFaces = relatedFaces.filter((related) => { - return (related.photoId != id && (related.face1Id == face.id || related.face2Id == face.id)); + return (related.photoId != faces[0].photoId && (related.face1Id == face.id || related.face2Id == face.id)); }).map((related) => { return { distance: related.distance,