Themes(public_notice_boards): new theme

Pull request: 
This commit is contained in:
Midgard 2025-03-13 21:54:21 +01:00
parent 3b0324d418
commit 606a7f53ae
Signed by: midgard
GPG key ID: 511C112F1331BBB4
6 changed files with 471 additions and 224 deletions

View file

@ -39,7 +39,14 @@
"osmTags": {
"and": [
"advertising~*",
"advertising!=no"
"advertising!=no",
{
"#": "These features are covered in the separate public_notice_boards layer",
"or": [
"advertising!=board",
"access!=yes"
]
}
]
}
},
@ -1427,236 +1434,151 @@
}
},
{
"id": "message_type",
"question": {
"ca": "Quin tipus de missatge es mostra?",
"es": "¿Qué tipo de mensaje se muestra?",
"en": "What kind of message is shown?",
"de": "Welche Art von Nachricht wird angezeigt?",
"cs": "Jaký typ zprávy je zobrazen?",
"nl": "Wat voor boodschap wordt hier getoond?",
"fr": "Quel est le type de message affiché ?",
"pt": "Que tipo de mensagem é mostrada?",
"he": "איזה סוג הודעה מוצגת?",
"pl": "Jaki rodzaj wiadomości jest pokazany?",
"pt_BR": "Que tipo de mensagem é exibido?",
"zh_Hans": "显示什么样的消息?",
"uk": "Яке повідомлення відображається?"
},
"mappings": [
{
"if": "message=commercial",
"ifnot": "message=",
"then": {
"ca": "Missatge comercial",
"es": "Mensaje comercial",
"en": "Commercial message",
"de": "Werbebotschaft",
"cs": "Komerční sdělení",
"fr": "Message commercial",
"pt": "Mensagem comercial",
"pt_BR": "Mensagem comercial",
"he": "מסר מסחרי",
"nl": "Commerciële boodschap",
"pl": "Wiadomość komercyjna",
"zh_Hans": "商业留言",
"uk": "Комерційне повідомлення"
}
"builtin": "public_notice_boards.message_type",
"override": {
"question": {
"ca": "Quin tipus de missatge es mostra?",
"es": "¿Qué tipo de mensaje se muestra?",
"en": "What kind of message is shown?",
"de": "Welche Art von Nachricht wird angezeigt?",
"cs": "Jaký typ zprávy je zobrazen?",
"nl": "Wat voor boodschap wordt hier getoond?",
"fr": "Quel est le type de message affiché ?",
"pt": "Que tipo de mensagem é mostrada?",
"he": "איזה סוג הודעה מוצגת?",
"pl": "Jaki rodzaj wiadomości jest pokazany?",
"pt_BR": "Que tipo de mensagem é exibido?",
"zh_Hans": "显示什么样的消息?",
"uk": "Яке повідомлення відображається?"
},
{
"if": "message=local",
"ifnot": "message=",
"then": {
"ca": "Informació municipal",
"es": "Información local",
"en": "Local information",
"de": "Lokale Informationen",
"cs": "Místní informace",
"fr": "Informations locales",
"pt": "Informação local",
"he": "מידע מקומי",
"nl": "Lokale informatie",
"pl": "Informacja lokalna",
"pt_BR": "Informações locais",
"zh_Hans": "本地信息",
"uk": "Місцева інформація"
}
},
{
"if": "message=safety",
"ifnot": "message=",
"then": {
"ca": "Informació de seguretat",
"es": "Información de seguridad",
"en": "Security information",
"de": "Sicherheitsinformationen",
"cs": "Bezpečnostní informace",
"fr": "Information de sécurité",
"pt": "Informação segura",
"he": "מידע אבטחה",
"pl": "Informacje dotyczące bezpieczeństwa",
"pt_BR": "Informações de segurança",
"zh_Hans": "安全信息",
"uk": "Інформація про безпеку",
"nl": "Veiligheidsinformatie"
"mappings+": [
{
"if": "message=commercial",
"ifnot": "message=",
"then": {
"ca": "Missatge comercial",
"es": "Mensaje comercial",
"en": "Commercial message",
"de": "Werbebotschaft",
"cs": "Komerční sdělení",
"fr": "Message commercial",
"pt": "Mensagem comercial",
"pt_BR": "Mensagem comercial",
"he": "מסר מסחרי",
"nl": "Commerciële boodschap",
"pl": "Wiadomość komercyjna",
"zh_Hans": "商业留言",
"uk": "Комерційне повідомлення"
}
},
"hideInAnswer": {
"and": [
"advertising=flag"
]
}
},
{
"if": "message=political",
"ifnot": "message=",
"then": {
"ca": "Publicitat electoral",
"es": "Publicidad electoral",
"en": "Electoral advertising",
"de": "Wahlwerbung",
"cs": "Volební reklama",
"fr": "Propagande électorale",
"pt": "Propaganda eleitoral",
"he": "פרסום בחירות",
"pl": "Reklamy wyborcze",
"pt_BR": "Propaganda eleitoral",
"zh_Hans": "选举广告",
"uk": "Передвиборча реклама",
"nl": "Verkiezingsadvertentie"
}
},
{
"if": "message=showbiz",
"ifnot": "message=",
"then": {
"ca": "Informació sobre teatres, concerts, …",
"es": "Información relacionada con teatro, conciertos,…",
"en": "Information related to theatre, concerts, …",
"de": "Informationen über Theater, Konzerte, …",
"cs": "Informace týkající se divadla, koncertů, …",
"fr": "Informations liées au théâtre, à des concerts, …",
"nl": "Informatie over cultuurevenementen zoals theaters, optredens, …",
"pt": "Informações relacionadas com teatro, concertos, ...",
"he": "מידע הקשור לתיאטרון, קונצרטים,…",
"eu": "Antzerkiari, kontzertuei eta abarri buruzko informazioa",
"pl": "Informacje dotyczące teatru, koncertów, …",
"pt_BR": "Informações relacionadas a teatro, concertos, …",
"zh_Hans": "与戏剧、音乐会等相关的信息……",
"uk": "Інформація, пов'язана з театром, концертами, …"
{
"if": "message=local",
"ifnot": "message=",
"then": {
"ca": "Informació municipal",
"es": "Información local",
"en": "Local information",
"de": "Lokale Informationen",
"cs": "Místní informace",
"fr": "Informations locales",
"pt": "Informação local",
"he": "מידע מקומי",
"nl": "Lokale informatie",
"pl": "Informacja lokalna",
"pt_BR": "Informações locais",
"zh_Hans": "本地信息",
"uk": "Місцева інформація"
}
},
"hideInAnswer": {
"and": [
"advertising=flag"
]
}
},
{
"if": "message=non_profit",
"ifnot": "message=",
"then": {
"ca": "Missatge d'organitzacions sense ànim de lucre",
"es": "Mensaje de organizaciones sin fines de lucro",
"en": "Message from non-profit organizations",
"de": "Nachricht von gemeinnützigen Organisationen",
"cs": "Zpráva od neziskových organizací",
"fr": "Message d'organisations sans but lucratif",
"nl": "Boodschap van NGO-organisaties",
"pt": "Mensagem de organizações sem fins lucrativos",
"pl": "Wiadomość od organizacji non-profit",
"pt_BR": "Mensagens de organizações sem fins lucrativos",
"zh_Hans": "来自非营利组织的消息",
"uk": "Повідомлення від неприбуткових організацій"
}
},
{
"if": "message=opinion",
"ifnot": "message=",
"then": {
"ca": "Per a expressar la teua opinió",
"es": "Para expresar tu opinión",
"en": "To express your opinion",
"de": "Um Ihre Meinung zu äußern",
"cs": "Pro vyjádření vašeho názoru",
"fr": "Expression d'opinion",
"pt": "Para expressar sua opinião",
"pl": "Żeby wyrazić swoją opinię",
"pt_BR": "Para expressar sua opinião",
"zh_Hans": "表达您的意见",
"uk": "Щоб висловити свою думку",
"nl": "Om je mening te geven"
{
"if": "message=safety",
"ifnot": "message=",
"then": {
"ca": "Informació de seguretat",
"es": "Información de seguridad",
"en": "Security information",
"de": "Sicherheitsinformationen",
"cs": "Bezpečnostní informace",
"fr": "Information de sécurité",
"pt": "Informação segura",
"he": "מידע אבטחה",
"pl": "Informacje dotyczące bezpieczeństwa",
"pt_BR": "Informações de segurança",
"zh_Hans": "安全信息",
"uk": "Інформація про безпеку",
"nl": "Veiligheidsinformatie"
},
"hideInAnswer": {
"and": [
"advertising=flag"
]
}
},
"hideInAnswer": {
"or": [
"advertising=flag",
"advertising=screen"
]
}
},
{
"if": "message=religion",
"ifnot": "message=",
"then": {
"ca": "Missatge religiós",
"es": "Mensaje religioso",
"en": "Religious message",
"de": "Religiöse Botschaft",
"cs": "Náboženská zpráva",
"fr": "Message religieux",
"nl": "Religieuze boodschap",
"pt": "Mensagem religiosa",
"pt_BR": "Mensagem religiosa",
"he": "מסר דתי",
"pl": "Przekaz religijny",
"zh_Hans": "宗教讯息",
"uk": "Релігійне послання"
}
},
{
"if": "message=funding",
"ifnot": "message=",
"then": {
"ca": "Cartell de financiació",
"es": "Cartel de financiación",
"en": "Funding sign",
"de": "Finanzierungsschild",
"cs": "Cedule pro financování",
"pt": "sinal de financiamento",
"pl": "Znak finansowania",
"pt_BR": "Placa de financiamento",
"zh_Hans": "资助标志",
"uk": "Ознака фінансування",
"nl": "Financieringsteken"
{
"if": "message=political",
"ifnot": "message=",
"then": {
"ca": "Publicitat electoral",
"es": "Publicidad electoral",
"en": "Electoral advertising",
"de": "Wahlwerbung",
"cs": "Volební reklama",
"fr": "Propagande électorale",
"pt": "Propaganda eleitoral",
"he": "פרסום בחירות",
"pl": "Reklamy wyborcze",
"pt_BR": "Propaganda eleitoral",
"zh_Hans": "选举广告",
"uk": "Передвиборча реклама",
"nl": "Verkiezingsadvertentie"
}
},
"hideInAnswer": {
"or": [
"advertising=flag",
"advertising=column"
]
{
"if": "message=funding",
"ifnot": "message=",
"then": {
"ca": "Cartell de financiació",
"es": "Cartel de financiación",
"en": "Funding sign",
"de": "Finanzierungsschild",
"cs": "Cedule pro financování",
"pt": "sinal de financiamento",
"pl": "Znak finansowania",
"pt_BR": "Placa de financiamento",
"zh_Hans": "资助标志",
"uk": "Ознака фінансування",
"nl": "Financieringsteken"
},
"hideInAnswer": {
"or": [
"advertising=flag",
"advertising=column"
]
}
},
{
"if": "information=map",
"ifnot": "information=",
"then": {
"en": "A map",
"ca": "Un mapa",
"es": "Un mapa",
"de": "eine Karte",
"cs": "Mapa",
"fr": "Une carte",
"nl": "Een kaart",
"pt": "Um mapa",
"pt_BR": "Um mapa",
"pl": "Mapa",
"zh_Hans": "地图",
"uk": "Карта"
}
}
},
{
"if": "information=map",
"ifnot": "information=",
"then": {
"en": "A map",
"ca": "Un mapa",
"es": "Un mapa",
"de": "eine Karte",
"cs": "Mapa",
"fr": "Une carte",
"nl": "Een kaart",
"pt": "Um mapa",
"pt_BR": "Um mapa",
"pl": "Mapa",
"zh_Hans": "地图",
"uk": "Карта"
}
}
],
"multiAnswer": true
]
}
},
{
"id": "Sides",
"id": "sides",
"condition": {
"and": [
"_referencing_ways=",
@ -1664,7 +1586,8 @@
"or": [
"advertising=poster_box",
"advertising=screen",
"advertising=billboard"
"advertising=billboard",
"advertising=board"
]
}
]
@ -1757,6 +1680,15 @@
"freeform": {
"key": "ref"
},
"mappings": [
{
"if": "noref=yes",
"then": {
"en": "This feature has no reference number",
"nl": "Dit object heeft geen referentienummer"
}
}
],
"condition": {
"and": [
"advertising!=sign"

View file

@ -0,0 +1,203 @@
{
"id": "public_notice_boards",
"name": {
"en": "Public notice boards",
"nl": "Afficheborden voor vrij aanplakken"
},
"description": {
"en": "Boards for posters for neighbourhood advertising, local events, opinions, etc.",
"nl": "Borden voor affiches voor buurtadvertenties, lokale evenementen, opinies, ..."
},
"source": {
"osmTags": {
"and": [
"advertising=board",
"access=yes"
]
}
},
"minzoom": 12,
"title": {
"render": {
"en": "Public notice board",
"nl": "Affichebord voor vrij aanplakken"
}
},
"pointRendering": [
{
"location": [
"point",
"centroid"
],
"anchor": {
"render": "bottom"
},
"marker": [
{
"icon": {
"render": "./assets/themes/advertising/Board_free.svg"
}
}
],
"iconSize": {
"render": "40,40"
}
}
],
"lineRendering": [
{
"width": "8",
"color": "#00f"
}
],
"presets": [
{
"tags": [
"advertising=board",
"access=yes"
],
"title": {
"en": "a public notice board",
"nl": "een affichebord voor vrij aanplakken"
},
"description": {
"en": "Small billboard for neighbourhood advertising, generally intended for pedestrians",
"nl": "Een klein uithangbord voor buurtadvertenties, meestal gericht op voetgangers"
},
"exampleImages": [
"./assets/themes/advertising/local_Board.jpg"
]
}
],
"tagRenderings": [
"images",
"advertising.operator",
{
"id": "message_type",
"question": {
"en": "What kind of message can be posted here?",
"nl": "Wat voor boodschap mag hier aangeplakt worden?"
},
"mappings": [
{
"if": "message=showbiz",
"ifnot": "message=",
"then": {
"ca": "Informació sobre teatres, concerts, …",
"es": "Información relacionada con teatro, conciertos,…",
"en": "Information related to theatre, concerts, …",
"de": "Informationen über Theater, Konzerte, …",
"cs": "Informace týkající se divadla, koncertů, …",
"fr": "Informations liées au théâtre, à des concerts, …",
"nl": "Informatie over cultuurevenementen zoals theaters, optredens, …",
"pt": "Informações relacionadas com teatro, concertos, ...",
"he": "מידע הקשור לתיאטרון, קונצרטים,…",
"eu": "Antzerkiari, kontzertuei eta abarri buruzko informazioa",
"pl": "Informacje dotyczące teatru, koncertów, …",
"pt_BR": "Informações relacionadas a teatro, concertos, …",
"zh_Hans": "与戏剧、音乐会等相关的信息……",
"uk": "Інформація, пов'язана з театром, концертами, …"
}
},
{
"if": "message=non_profit",
"ifnot": "message=",
"then": {
"ca": "Missatge d'organitzacions sense ànim de lucre",
"es": "Mensaje de organizaciones sin fines de lucro",
"en": "Message from non-profit organizations",
"de": "Nachricht von gemeinnützigen Organisationen",
"cs": "Zpráva od neziskových organizací",
"fr": "Message d'organisations sans but lucratif",
"nl": "Boodschap van NGO-organisaties",
"pt": "Mensagem de organizações sem fins lucrativos",
"pl": "Wiadomość od organizacji non-profit",
"pt_BR": "Mensagens de organizações sem fins lucrativos",
"zh_Hans": "来自非营利组织的消息",
"uk": "Повідомлення від неприбуткових організацій"
}
},
{
"if": "message=opinion",
"ifnot": "message=",
"then": {
"ca": "Per a expressar la teua opinió",
"es": "Para expresar tu opinión",
"en": "To express your opinion",
"de": "Um Ihre Meinung zu äußern",
"cs": "Pro vyjádření vašeho názoru",
"fr": "Expression d'opinion",
"pt": "Para expressar sua opinião",
"pl": "Żeby wyrazić swoją opinię",
"pt_BR": "Para expressar sua opinião",
"zh_Hans": "表达您的意见",
"uk": "Щоб висловити свою думку",
"nl": "Om je mening te geven"
},
"hideInAnswer": {
"or": [
"advertising=flag",
"advertising=screen"
]
}
},
{
"if": "message=religion",
"ifnot": "message=",
"then": {
"ca": "Missatge religiós",
"es": "Mensaje religioso",
"en": "Religious message",
"de": "Religiöse Botschaft",
"cs": "Náboženská zpráva",
"fr": "Message religieux",
"nl": "Religieuze boodschap",
"pt": "Mensagem religiosa",
"pt_BR": "Mensagem religiosa",
"he": "מסר דתי",
"pl": "Przekaz religijny",
"zh_Hans": "宗教讯息",
"uk": "Релігійне послання"
}
}
],
"multiAnswer": true
},
{
"id": "network",
"render": {
"en": "Part of network \"{network}\"",
"nl": "Onderdeel van netwerk \"{network}\""
},
"question": {
"en": "Is this board part of a network of related boards? E.g. \"Public Notices <city name>\"",
"nl": "Is dit bord deel van een netwerk van gerelateerde borden? Bv. \"Vrij aanplakken <naam van stad>\""
},
"freeform": {
"key": "network"
}
},
"advertising.ref",
"advertising.sides",
{
"id": "direction",
"render": {
"en": "Faces {direction}",
"nl": "Wijst richting {direction}"
},
"question": {
"en": "Which direction does the board face? (Which direction are you looking if you stand with your back to the board?)",
"nl": "Welke richting wijst het bord uit? (In welke richting kijk je als je met je rug tegen het bord staat?)"
},
"freeform": {
"key": "direction",
"type": "direction"
}
}
],
"deletion": true,
"allowMove": {
"enableImproveAccuracy": true,
"enableRelocation": false
}
}

View file

@ -0,0 +1,99 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
width="1000"
height="1000"
viewBox="0 0 937.50001 937.50001"
id="svg2"
version="1.1"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:dc="http://purl.org/dc/elements/1.1/">
<defs
id="defs4" />
<metadata
id="metadata7">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
</cc:Work>
</rdf:RDF>
</metadata>
<g
id="layer1"
transform="matrix(1.3495594,0,0,1.3495594,-32.38564,-67.228127)">
<rect
style="fill:#7c7c7c;fill-opacity:1;stroke:#2c6823;stroke-width:101.48;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="rect7422-8-4"
width="478.92584"
height="229.2673"
x="130.75348"
y="202.67671" />
<rect
style="fill:#fffe73;fill-opacity:1;stroke:#ff0000;stroke-width:0;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="rect4221-7-5"
width="566.664"
height="314.814"
x="86.892349"
y="162.05467" />
<rect
style="fill:#7c7c7c;fill-opacity:1;stroke:#2c6823;stroke-width:14.1347;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="rect7422-8"
width="8.5147648"
height="250.17702"
x="211.88652"
y="487.24167" />
<rect
style="fill:#2c6823;fill-opacity:1;stroke:#2c6823;stroke-width:14.1347;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="rect7422-8-0"
width="8.5147657"
height="250.177"
x="531.74725"
y="486.88589" />
<rect
style="fill:#7c7c7c;fill-opacity:1;stroke:#2c6823;stroke-width:38.4146;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="rect7422-8-4-2"
width="571.94531"
height="27.509706"
x="85.360123"
y="115.14492" />
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;line-height:0%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
x="270.02792"
y="201.84302"
id="text5160"
transform="scale(1.3817739,0.72370741)"><tspan
id="tspan5162"
x="270.02792"
y="201.84302"
style="font-size:60.8106px;line-height:1.25;font-family:sans-serif;text-align:center;text-anchor:middle">Affichage libre</tspan></text>
<rect
style="fill:#cc8a8a;fill-opacity:1;stroke:#7e7e7e;stroke-width:0;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="rect7352"
width="181.15384"
height="206.07597"
x="111.26551"
y="188.47469" />
<rect
style="fill:#909098;fill-opacity:1;stroke:#7e7e7e;stroke-width:0;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="rect7352-5-4"
width="250.69118"
height="229.86662"
x="374.40759"
y="200.36998" />
<rect
style="fill:#c0afaf;fill-opacity:1;stroke:#7e7e7e;stroke-width:0;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="rect7352-5"
width="347.67044"
height="83.072723"
x="209.70787"
y="275.82953" />
</g>
</svg>

After

(image error) Size: 3.5 KiB

View file

@ -0,0 +1,2 @@
SPDX-FileCopyrightText: Barnes38
SPDX-License-Identifier: CC-BY-SA-3.0

View file

@ -59,6 +59,7 @@
],
"layers": [
"advertising",
"public_notice_boards",
{
"builtin": "shelter",
"override": {

View file

@ -69,6 +69,16 @@
"https://commons.wikimedia.org/wiki/File:BS_Schraubenschluessel.JPG"
]
},
{
"path": "Board_free.svg",
"license": "CC-BY-SA-3.0",
"authors": [
"Barnes38"
],
"sources": [
"https://wiki.openstreetmap.org/wiki/File:Board_free.svg"
]
},
{
"path": "Capitol_wall.jpg",
"license": "CC-BY-SA-4.0",