Main categories of OpenStreetBrowser with public transport zoom level
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.

154 lines
5.4 KiB

  1. {
  2. "type": "overpass",
  3. "name": {
  4. "ast": "Comunicaciones",
  5. "ca": "Comunicacions",
  6. "cs": "Komunikace",
  7. "de": "Kommunikation",
  8. "el": "Επικοινωνίες",
  9. "en": "Communication",
  10. "et": "Kommunikatsioon",
  11. "fr": "Communication",
  12. "hu": "Kommunikácó",
  13. "it": "Communicazioni",
  14. "ja": "交流",
  15. "nl": "Communicatie",
  16. "pt": "Comunicação",
  17. "pt-br": "Comunicação",
  18. "ro": "Comunicatii",
  19. "ru": "Услуги связи",
  20. "uk": "Телекомунікації"
  21. },
  22. "query": {
  23. "13": [
  24. "(",
  25. "nwr[amenity~'^(post_office|internet_cafe)$'];",
  26. "nwr[office~\"^(telecommunication|it|newspaper|publisher|advertising_agency)$\"];",
  27. ");"
  28. ],
  29. "15": [
  30. "(",
  31. "nwr[amenity~'^(post_office|internet_cafe|post_box|parcel_locker|telephone)$'];",
  32. "nwr[office~\"^(telecommunication|it|newspaper|publisher|advertising_agency)$\"];",
  33. "nwr[vending~\"^(|.*;)parcel_pickup(;.*|)$\"];",
  34. "nwr[vending~\"^(|.*;)parcel_mail_in(;.*|)$\"];",
  35. ");"
  36. ]
  37. },
  38. "feature": {
  39. "pre": [
  40. "{% if tags.vending %}",
  41. " {% set key = 'amenity' %}",
  42. " {% set value = 'parcel_locker' %}",
  43. " {% set deprecated = ['vending=' ~ tags.vending, 'https://wiki.openstreetmap.org/wiki/Proposed_features/amenity%3Dparcel_locker'] %}",
  44. "{% elseif tags.amenity %}",
  45. " {% set key = 'amenity' %}",
  46. " {% set value = tags.amenity %}",
  47. "{% else %}",
  48. " {% set key = 'office' %}",
  49. " {% set value = tags.office %}",
  50. "{% endif %}"
  51. ],
  52. "description": [
  53. "{% if key == 'office' %}",
  54. " {{ keyTrans('office') }} ({{ tagTrans('office', tags.office) }})",
  55. "{% else %}",
  56. " {{ tagTransList(key, value) }}",
  57. "{% endif %}"
  58. ],
  59. "body": [
  60. "{% if deprecated %}<div class='warning'>{{ repoTrans('deprecated', deprecated[0], deprecated[1])|raw }}</div>{% endif %}",
  61. "{% if tags.operator %}{{ keyTrans('operator') }}: {{ localizedTag(tags, 'operator') }}<br/>{% endif %}"
  62. ],
  63. "markerSign": [
  64. "{% set data = const[key ~ '=' ~ value] %}",
  65. "{% if data %}",
  66. "{{ data.sign|raw }}",
  67. "{% endif %}"
  68. ],
  69. "markerSymbol": "{{ markerPointer({\"fillColor\": (deprecated ? 'red' : '#f2756a') })|raw }}",
  70. "listMarkerSymbol": "{{ markerCircle({\"fillColor\": (deprecated ? 'red' : '#f2756a')})|raw }}"
  71. },
  72. "info": [
  73. "<table>",
  74. "{% for kv, data in const %}",
  75. "{% if data.zoom <= map.zoom and not data.info_hide %}",
  76. " <tr>",
  77. " <td>{{ markerCircle({})|raw }}<div class='sign'>{{ data.sign|raw }}</div></td>",
  78. " <td>",
  79. " {% if kv|split('=')[0] == 'office' %}",
  80. " {{ keyTrans('office') }}",
  81. " ({{ tagTrans('office', kv|split('=')[1]) }})",
  82. " {% else %}",
  83. " {{ tagTrans(kv|split('=')[0], kv|split('=')[1]) }}",
  84. " {% endif %}",
  85. " </td>",
  86. " </tr>",
  87. "{% endif %}",
  88. "{% endfor %}",
  89. "</table>"
  90. ],
  91. "const": {
  92. "amenity=post_office": {
  93. "sign": "<img src='maki:post?size=15'>",
  94. "zoom": 13
  95. },
  96. "amenity=post_box": {
  97. "sign": "<img src='maki:post?size=11'>",
  98. "zoom": 16
  99. },
  100. "amenity=internet_cafe": {
  101. "sign": "<i class='fa fa-laptop' aria-hidden='true'></i>",
  102. "zoom": 13
  103. },
  104. "amenity=parcel_locker": {
  105. "sign": "<i class='fas fa-box'></i>",
  106. "query": "(nwr[vending~\"^(|.*;)parcel_pickup(;.*|)$\"];nwr[vending~\"^(|.*;)parcel_mail_in(;.*|)$\"];nwr[amenity=parcel_locker];)",
  107. "zoom": 16
  108. },
  109. "office=telecommunication": {
  110. "sign": "<i class='fas fa-mobile-alt'></i>",
  111. "zoom": 13
  112. },
  113. "office=it": {
  114. "sign": "<i class='fas fa-desktop'></i>",
  115. "zoom": 13
  116. },
  117. "office=newspaper": {
  118. "sign": "<i class='fas fa-newspaper'></i>",
  119. "zoom": 13
  120. },
  121. "office=publisher": {
  122. "sign": "<i class='fas fa-book'></i>",
  123. "zoom": 13
  124. },
  125. "office=advertising_agency": {
  126. "sign": "<i class='fas fa-sign'></i>",
  127. "zoom": 13
  128. },
  129. "office=public_relations": {
  130. "sign": "<i class='fas fa-sign'></i>",
  131. "zoom": 13
  132. },
  133. "office=audiovisual_production": {
  134. "sign": "<i class='fas fa-film'></i>",
  135. "zoom": 13
  136. },
  137. "office=film_production": {
  138. "sign": "<i class='fas fa-film'></i>",
  139. "zoom": 13
  140. },
  141. "amenity=telephone": {
  142. "sign": "<img src='maki:telephone'>",
  143. "zoom": 16
  144. }
  145. },
  146. "filter": {
  147. "type": {
  148. "name": "{{ trans('filter:type') }}",
  149. "show_default": "true",
  150. "type": "select",
  151. "values": "{% for k, v in const %}<option value=\"{{ k }}\" query=\"{% if v.query %}{{ v.query }}{% else %}nwr[{{ k }}]{% endif %}\" minzoom=\"{{ v.zoom }}\">{{ tagTrans(k) }}</option>{% endfor %}"
  152. }
  153. }
  154. }