Main categories of OpenStreetBrowser
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

217 lines
7.6 KiB

3 years ago
3 years ago
  1. {
  2. "type": "overpass",
  3. "query": {
  4. "11": [
  5. "(",
  6. "node[historic~\"^(monument)$\"];",
  7. "way[historic~\"^(monument)$\"];",
  8. "relation[historic~\"^(monument)$\"];",
  9. ")"
  10. ],
  11. "14": [
  12. "(",
  13. "node[historic~\"^(memorial|monument)$\"];",
  14. "way[historic~\"^(memorial|monument)$\"];",
  15. "relation[historic~\"^(memorial|monument)$\"];",
  16. ")"
  17. ]
  18. },
  19. "feature": {
  20. "pre": [
  21. "{% set memtype = 'yes' %}",
  22. "{% if tags.memorial %}",
  23. " {% set memtype = tags.memorial %}",
  24. "{% elseif attribute(tags, 'memorial:type') %}",
  25. " {% set memtype = attribute(tags, 'memorial:type') %}",
  26. "{% elseif attribute(tags, 'monument') %}",
  27. " {% set memtype = attribute(tags, 'monument') %}",
  28. "{% elseif attribute(tags, 'memorial_type') %}",
  29. " {% set memtype = attribute(tags, 'memorial_type') %}",
  30. "{% endif %}",
  31. "",
  32. "{% set memgroup = memtype %}",
  33. "{% for value, data in const %}",
  34. "{% if memtype in data.alias %}",
  35. "{% set memgroup = value %}",
  36. "{% endif %}",
  37. "{% endfor %}"
  38. ],
  39. "description": [
  40. "{{ tagTrans('historic', tags.historic) }}",
  41. "",
  42. "{% if memtype != 'yes' %}",
  43. " ({{ tagTrans('memorial', memtype) }})",
  44. "{% endif %}"
  45. ],
  46. "priority": [
  47. "{% if tags.historic == 'monument' %}0[% else %}1{% endif %}"
  48. ],
  49. "body": [
  50. "<ul>",
  51. "{% if tags.inscription %}",
  52. " <li class='hasSymbol'>",
  53. " <i class=\"fa fa-pencil-alt\" aria-hidden=\"true\"></i>",
  54. " <span class='key'>{{ keyTrans('inscription') }}:</span>",
  55. " <span class='value'>{{ localizedTag(tags, 'inscription') }}</span>",
  56. " </li>",
  57. "{% elseif attribute(tags, 'inscription:url') %}",
  58. " <li class='hasSymbol'>",
  59. " <i class=\"fa fa-pencil-alt\" aria-hidden=\"true\"></i>",
  60. " <span class='key'><a href=\"{{ attribute(tags, 'inscription:url') }}\">{{ keyTrans('inscription') }}</a></span>",
  61. " </li>",
  62. "{% endif %}",
  63. "",
  64. "{% if attribute(tags, 'historic:civilization') %}",
  65. " <li class='hasSymbol'>",
  66. " <i class=\"fa fa-users\" aria-hidden=\"true\"></i>",
  67. " <span class='key'>{{ keyTrans('historic:civilization') }}:</span>",
  68. " <span class='value'>{{ tagTrans('historic:civilization', attribute(tags, 'historic:civilization')) }}</span>",
  69. " </li>",
  70. "{% endif %}",
  71. "",
  72. "{% if attribute(tags, 'memorial:conflict') %}",
  73. " <li class='hasSymbol'>",
  74. " <i class=\"fa fa-bolt\" aria-hidden=\"true\"></i>",
  75. " <span class='key'>{{ keyTrans('memorial:conflict') }}:</span>",
  76. " <span class='value'>{{ tagTransList('memorial:conflict', attribute(tags, 'memorial:conflict')) }}</span>",
  77. " </li>",
  78. "{% endif %}",
  79. "",
  80. "{% if tags.artist_name %}",
  81. " <li class='hasSymbol'>",
  82. " <i class=\"fa fa-palette\" aria-hidden=\"true\"></i>",
  83. " <span class='key'>{{ keyTrans('artist_name') }}:</span>",
  84. " <span class='value'>{{ enumerate(tags.artist_name) }}</span>",
  85. " </li>",
  86. "{% endif %}",
  87. "</ul>"
  88. ],
  89. "markerSign": "{{ const[memgroup].sign|raw }}"
  90. },
  91. "info": [
  92. "<table>",
  93. "{% for value, data in const %}",
  94. "{% if data.zoom <= map.zoom %}",
  95. " <tr>",
  96. " <td>{{ markerCircle({})|raw }}<div class='sign'>{{ data.sign|raw }}</div></td>",
  97. " <td>{{ tagTrans('memorial', value) }}</td>",
  98. " </tr>",
  99. "{% endif %}",
  100. "{% endfor %}",
  101. "{% if 14 <= map.zoom %}",
  102. " <tr>",
  103. " <td>{{ markerCircle({})|raw }}<div class='sign'></div></td>",
  104. " <td>{{ trans('other') }}</td>",
  105. " </tr>",
  106. "{% endif %}",
  107. "</table>"
  108. ],
  109. "const": {
  110. "plaque": {
  111. "alias": [ "plate" ],
  112. "sign": "<img data-src='img/plaque.svg'>",
  113. "zoom": 14
  114. },
  115. "blue_plaque": {
  116. "sign": "<img data-src='img/blue_plaque.svg'>",
  117. "zoom": 14
  118. },
  119. "statue": {
  120. "sign": "<i class=\"fas fa-female\"></i>",
  121. "zoom": 14
  122. },
  123. "war_memorial": {
  124. "alias": [ "war_monument" ],
  125. "sign": "<img data-src='maki:horse-riding'>",
  126. "zoom": 14
  127. },
  128. "stolperstein": {
  129. "sign": "",
  130. "zoom": 14
  131. },
  132. "stone": {
  133. "sign": "",
  134. "zoom": 14
  135. },
  136. "bust": {
  137. "alias": [ "person", "public_person" ],
  138. "sign": "<i class=\"fas fa-user-alt\"></i>",
  139. "zoom": 14
  140. },
  141. "stele": {
  142. "sign": "",
  143. "zoom": 14
  144. },
  145. "obelisk": {
  146. "sign": "",
  147. "zoom": 14
  148. },
  149. "sculpture": {
  150. "sign": "",
  151. "zoom": 14
  152. },
  153. "ghost_bike": {
  154. "sign": "<i style=\"color: white;\" class=\"fas fa-bicycle\"></i>",
  155. "zoom": 14
  156. },
  157. "vehicle": {
  158. "alias": [ "tank" ],
  159. "sign": "<i class=\"fas fa-car\"></i>",
  160. "zoom": 14
  161. },
  162. "cross": {
  163. "sign": "<i class=\"fas fa-cross\"></i>",
  164. "zoom": 14
  165. }
  166. },
  167. "filter": {
  168. "type": {
  169. "name": "{{ trans('filter:type') }}",
  170. "show_default": "true",
  171. "type": "select",
  172. "values": "{% for k, v in const %}<option value='{{ k }}' query='nwr[~\"^(memorial|memorial:type|memorial_type|monument)$\"~\"^({{ k }}{% for alias in v.alias %}|{{ alias }}{% endfor %})$\"]'>{{ tagTrans('memorial', k) }}</option>{% endfor %}"
  173. },
  174. "size": {
  175. "name": "{{ keyTrans('memorial') }} | {{ keyTrans('monument') }}",
  176. "type": "radio",
  177. "values": "<option value='*' query=''>{{ trans('any value') }}</option>\n<option value='memorial' query='nwr[historic=memorial]'>{{ keyTrans('memorial') }}</option>\n<option value='monument' query='nwr[historic=monument]'>{{ keyTrans('monument') }}</option>",
  178. "default": "*"
  179. },
  180. "conflict": {
  181. "key": "memorial:conflict",
  182. "op": "has",
  183. "name": "{{ keyTrans('memorial:conflict') }}",
  184. "type": "select",
  185. "values": [
  186. "WW1",
  187. "WW2"
  188. ],
  189. "valueName": "{{ tagTrans('memorial:conflict', value) }}"
  190. },
  191. "civilization": {
  192. "key": "historic:civilization",
  193. "op": "has",
  194. "name": "{{ keyTrans('historic:civilization') }}",
  195. "type": "select",
  196. "values": [
  197. "ancient_egyptian",
  198. "ancient_greek",
  199. "ancient_roman",
  200. "byzantine",
  201. "celtic",
  202. "etruscan",
  203. "imperial_chinese",
  204. "korean",
  205. "medieval",
  206. "modern",
  207. "neolithic",
  208. "nuragic",
  209. "ottoman",
  210. "prehistoric",
  211. "roman",
  212. "western_roman"
  213. ],
  214. "valueName": "{{ tagTrans('historic:civilization', value) }}"
  215. }
  216. }
  217. }