diff --git a/inspector.html b/inspector.html index 8f6f088bd..3f63817fc 100644 --- a/inspector.html +++ b/inspector.html @@ -11,7 +11,7 @@
Loading inspector...
- + diff --git a/langs/en.json b/langs/en.json index 73114b29b..f235fb9e8 100644 --- a/langs/en.json +++ b/langs/en.json @@ -616,7 +616,28 @@ "title": "MapComplete" }, "inspector": { - "menu": "Inspect a contributor" + "aggregateView": "Aggregate", + "answeredCountTimes": "Answered {count} times", + "backToIndex": "Back to the map overview", + "createdBy": "Created by {contributor}", + "earlierInspected": "See contributors you've inspected before", + "images": "Created images", + "load": "Inspect changes for map area", + "mapView": "Map", + "menu": "Inspect a contributor", + "onlyGeometry": "Only changes in geometry", + "previouslySpied": { + "addLabel": "Add a label", + "allChanges": "Load all changes for users with this label", + "label": "Label", + "noLabels": "No labels", + "remove": "Remove", + "time": "Time of last inspection", + "title": "Earlier inspected constributors", + "username": "Username" + }, + "tableView": "Overview", + "title": "Inspect a contributor" }, "move": { "cancel": "Select a different reason", diff --git a/langs/layers/nl.json b/langs/layers/nl.json index 9415b23bc..140a409c2 100644 --- a/langs/layers/nl.json +++ b/langs/layers/nl.json @@ -2036,6 +2036,9 @@ }, "title": { "mappings": { + "0": { + "then": "{name}" + }, "1": { "then": "Vogelkijkhut {name}" }, @@ -6340,6 +6343,11 @@ } }, "title": { + "mappings": { + "0": { + "then": "{name}" + } + }, "render": "Natuurgebied" } }, @@ -6871,6 +6879,21 @@ "render": "Picknicktafel" } }, + "play_forest": { + "description": "Een speelbos is een vrij toegankelijke zone in een bos", + "name": "Speelbossen", + "title": { + "mappings": { + "0": { + "then": "{name}" + }, + "1": { + "then": "Speelbos {name}" + } + }, + "render": "Speelbos" + } + }, "playground": { "deletion": { "nonDeleteMappings": { @@ -8428,6 +8451,9 @@ }, "title": { "mappings": { + "0": { + "then": "{name}" + }, "1": { "then": "Voetpad" }, @@ -10580,13 +10606,25 @@ } }, "village_green": { - "description": "Een laag die dorpsgroen toont (gemeenschapsgroen, maar niet echt een park)" + "description": "Een laag die dorpsgroen toont (gemeenschapsgroen, maar niet echt een park)", + "name": "Speelweide", + "title": { + "mappings": { + "0": { + "then": "{name}" + } + }, + "render": "Speelweide" + } }, "visitor_information_centre": { "description": "Een bezoekerscentrum biedt informatie over een specifieke attractie of bezienswaardigheid waar het is gevestigd.", "name": "Bezoekerscentrum", "title": { "mappings": { + "0": { + "then": "{name:nl}" + }, "1": { "then": "{name}" } @@ -10816,4 +10854,4 @@ "render": "windturbine" } } -} +} \ No newline at end of file diff --git a/langs/themes/nl.json b/langs/themes/nl.json index 47a5f8968..3f55d0345 100644 --- a/langs/themes/nl.json +++ b/langs/themes/nl.json @@ -653,8 +653,37 @@ "building type": { "question": "Wat voor soort gebouw is dit?" }, + "grb-fixme": { + "mappings": { + "0": { + "then": "Geen fixme" + } + }, + "question": "Wat zegt de fixme?", + "render": "De fixme is {fixme}" + }, + "grb-housenumber": { + "mappings": { + "0": { + "then": "Geen huisnummer" + } + }, + "question": "Wat is het huisnummer?", + "render": "Het huisnummer is {addr:housenumber}" + }, + "grb-min-level": { + "question": "Hoeveel verdiepingen ontbreken?", + "render": "Dit gebouw begint maar op de {building:min_level} verdieping" + }, "grb-reference": { "render": "Werd geïmporteerd vanuit GRB, het referentienummer is {source:geometry:ref}" + }, + "grb-street": { + "question": "Wat is de straat?", + "render": "De straat is {addr:street}" + }, + "grb-unit": { + "render": "De wooneenheid-aanduiding is {addr:unit} " } } }, @@ -671,8 +700,35 @@ } } } + }, + "5": { + "override": { + "tagRenderings+": { + "0": { + "mappings": { + "0": { + "then": "Geen omliggend OSM-gebouw gevonden" + } + } + }, + "3": { + "mappings": { + "0": { + "then": "Geen omliggend OSM-gebouw gevonden. Een omliggend gebouw is nodig om dit punt als adres punt toe te voegen.
Importeer eerst de gebouwen. Vernieuw dan de pagina om losse adressen toe te voegen
" + } + }, + "render": { + "special": { + "text": "Voeg dit adres als een nieuw adrespunt toe" + } + } + } + } + } } - } + }, + "shortDescription": "Grb import helper tool", + "title": "GRB import helper" }, "guideposts": { "description": "Wegwijzers (ook wel handwijzer genoemd) zijn vaak te vinden langs officiële wandel-, fiets-, ski- of paardrijroutes om de richtingen naar verschillende bestemmingen aan te geven. Vaak zijn ze vernoemd naar een regio of plaats en geven ze de hoogte aan.\n\nDe positie van een wegwijzer kan door een wandelaar/fietser/renner/skiër worden gebruikt als bevestiging van de huidige positie, vooral als ze een gedrukte kaart zonder GPS-ontvanger gebruiken. ", @@ -1108,6 +1164,11 @@ }, "title": "Dierenartsen, hondenloopzones en andere huisdiervriendelijke plaatsen" }, + "play_forests": { + "description": "Een speelbos is een zone in een bos die vrij toegankelijk is voor spelende kinderen. Deze wordt in bossen van het Agentschap Natuur en bos altijd aangeduid met het overeenkomstige bord.", + "shortDescription": "Deze kaart toont speelbossen", + "title": "Speelbossen" + }, "playgrounds": { "description": "Op deze kaart vind je speeltuinen en kan je zelf meer informatie en foto's toevoegen", "shortDescription": "Een kaart met speeltuinen", @@ -1181,6 +1242,47 @@ "description": "Alles om te skiën", "title": "Skipistes en kabelbanen" }, + "speelplekken": { + "description": "

Welkom bij de Groendoener!

De Zuidrand dat is spelen, ravotten, chillen, wandelen,… in het groen. Meer dan 200 grote en kleine speelplekken liggen er in parken, in bossen en op pleintjes te wachten om ontdekt te worden. De verschillende speelplekken werden getest én goedgekeurd door kinder- en jongerenreporters uit de Zuidrand. Met leuke challenges dagen de reporters jou uit om ook op ontdekking te gaan. Klik op een speelplek op de kaart, bekijk het filmpje en ga op verkenning!

Het project groendoener kadert binnen het strategisch project Beleefbare Open Ruimte in de Antwerpse Zuidrand en is een samenwerking tussen het departement Leefmilieu van provincie Antwerpen, Sportpret vzw, een OpenStreetMap-België Consultent en Createlli vzw. Het project kwam tot stand met steun van Departement Omgeving van de Vlaamse Overheid.
", + "layers": { + "6": { + "name": "Wandelroutes van provincie Antwerpen", + "tagRenderings": { + "walk-description": { + "render": "

Korte beschrijving:

{description}" + }, + "walk-length": { + "render": "Deze wandeling is {_length:km}km lang" + }, + "walk-operator": { + "question": "Wie beheert deze wandeling en plaatst dus de signalisatiebordjes?" + }, + "walk-operator-email": { + "question": "Naar wie kan men emailen bij problemen rond signalisatie?", + "render": "Bij problemen met signalisatie kan men emailen naar {operator:email}" + }, + "walk-type": { + "mappings": { + "0": { + "then": "Dit is een internationale wandelroute" + }, + "1": { + "then": "Dit is een nationale wandelroute" + }, + "2": { + "then": "Dit is een regionale wandelroute" + }, + "3": { + "then": "Dit is een lokale wandelroute" + } + } + } + } + } + }, + "shortDescription": "Speelplekken in de Antwerpse Zuidrand", + "title": "Welkom bij de groendoener!" + }, "sport_pitches": { "description": "Een sportveld is een ingerichte plaats met infrastructuur om een sport te beoefenen", "shortDescription": "Deze kaart toont sportvelden", @@ -1301,6 +1403,10 @@ }, "title": "Straatverlichting" }, + "street_lighting_assen": { + "description": "Op deze kaart vind je alles over straatlantaarns + een dataset van Assen", + "title": "Straatverlichting - Assen" + }, "surveillance": { "description": "Op deze open kaart kan je bewakingscamera's vinden.", "shortDescription": "Bewakingscameras en dergelijke", @@ -1414,9 +1520,13 @@ "description": "Kaart met afvalbakken en recyclingfaciliteiten.", "title": "Afval" }, + "waste_assen": { + "description": "Kaart met afvalbakken en recyclingfaciliteiten + een dataset voor Assen.", + "title": "Afval - Assen" + }, "waste_basket": { "description": "Op deze kaart vind je afvalbakken bij jou in de buurt. Als er een afvalbak ontbreekt op deze kaart, kun je deze zelf toevoegen", "shortDescription": "Een kaart met vuilnisbakken", "title": "Vuilnisbakken" } -} +} \ No newline at end of file diff --git a/src/UI/History/History.svelte b/src/UI/History/History.svelte index d878f22fe..66792cefc 100644 --- a/src/UI/History/History.svelte +++ b/src/UI/History/History.svelte @@ -30,10 +30,11 @@ return true } console.log( - "Checking if ", + "Checking if", step.tags["_last_edit:contributor"], "is contained in", - onlyShowChangesBy + onlyShowChangesBy, + usernames.has(step.tags["_last_edit:contributor"]) ) return usernames.has(step.tags["_last_edit:contributor"]) }) @@ -49,7 +50,7 @@ * These layers are only shown if there are tag changes as well */ const ignoreLayersIfNoChanges: ReadonlySet = new Set(["walls_and_buildings"]) - const t = Translations.t.inspector.previousContributors + const t = Translations.t.inspector {#if !$allGeometry || !ignoreLayersIfNoChanges.has($lastStep?.layer?.id)} diff --git a/src/UI/History/PreviouslySpiedUsers.svelte b/src/UI/History/PreviouslySpiedUsers.svelte index a37e1262e..a9029a85a 100644 --- a/src/UI/History/PreviouslySpiedUsers.svelte +++ b/src/UI/History/PreviouslySpiedUsers.svelte @@ -5,7 +5,8 @@ import { createEventDispatcher } from "svelte" import { XCircleIcon } from "@babeard/svelte-heroicons/solid" import AccordionSingle from "../Flowbite/AccordionSingle.svelte" - import Dropdown from "../Base/Dropdown.svelte" + import Translations from "../i18n/Translations" + import Tr from "../Base/Tr.svelte" export let osmConnection: OsmConnection export let inspectedContributors: UIEventSource< @@ -41,23 +42,32 @@ inspectedContributors.data.sort((a, b) => (a[key] ?? "").localeCompare(b[key] ?? "")) inspectedContributors.ping() } + + const t = Translations.t.inspector.previouslySpied - + + + + + + + - {#each $inspectedContributors as c} @@ -85,7 +95,8 @@
Labels
{#if $labels.length === 0} - No labels +
+ {:else} {#each $labels as label}
@@ -102,7 +113,8 @@ ) }} > - See all changes for these users +
+ {/each} @@ -115,7 +127,7 @@ class:disabled={!(labelField?.length > 0)} class="disabled shrink-0" > - Add label + diff --git a/src/UI/InspectorGUI.svelte b/src/UI/InspectorGUI.svelte index 11e7625c3..c07d65c8e 100644 --- a/src/UI/InspectorGUI.svelte +++ b/src/UI/InspectorGUI.svelte @@ -28,6 +28,7 @@ import Translations from "./i18n/Translations" import Tr from "./Base/Tr.svelte" + console.log("Loading inspector GUI") let username = QueryParameters.GetQueryParameter("user", undefined, "Inspect this user") let step = new UIEventSource<"waiting" | "loading" | "done">("waiting") let map = new UIEventSource(undefined) @@ -121,7 +122,7 @@ const t = Translations.t.inspector -
+

@@ -192,7 +193,7 @@ selectedElement.set(undefined)} />

- + {/if} @@ -218,7 +219,9 @@
-
Earlier inspected constributors
+
+
+
- - -
- +
+
+
Remove