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.

141 lines
4.6 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. "node[amenity~'^(post_office|internet_cafe)$'];",
  26. "way[amenity~'^(post_office|internet_cafe)$'];",
  27. "relation[amenity~'^(post_office|internet_cafe)$'];",
  28. "nwr[office~\"^(telecommunication|it|newspaper|publisher|advertising_agency)$\"];",
  29. ");"
  30. ],
  31. "16": [
  32. "(node[amenity~'^(post_office|internet_cafe|post_box|telephone)$'];",
  33. "way[amenity~'^(post_office|internet_cafe)$'];",
  34. "relation[amenity~'^(post_office|internet_cafe)$'];",
  35. "nwr[office~\"^(telecommunication|it|newspaper|publisher|advertising_agency)$\"];",
  36. ");"
  37. ]
  38. },
  39. "feature": {
  40. "pre": [
  41. "{% if tags.amenity %}",
  42. " {% set key = 'amenity' %}",
  43. " {% set value = tags.amenity %}",
  44. "{% else %}",
  45. " {% set key = 'office' %}",
  46. " {% set value = tags.office %}",
  47. "{% endif %}"
  48. ],
  49. "description": [
  50. "{% if key == 'office' %}",
  51. " {{ keyTrans('office') }} ({{ tagTrans('office', tags.office) }})",
  52. "{% else %}",
  53. " {{ tagTrans(key, value) }}",
  54. "{% endif %}"
  55. ],
  56. "body": "{% if tags.operator %}{{ keyTrans('operator') }}: {{ localizedTag(tags, 'operator') }}<br/>{% endif %}",
  57. "markerSign": [
  58. "{% set data = const[key ~ '=' ~ value] %}",
  59. "{% if data %}",
  60. "{{ data.sign|raw }}",
  61. "{% endif %}"
  62. ]
  63. },
  64. "info": [
  65. "<table>",
  66. "{% for kv, data in const %}",
  67. "{% if data.zoom <= map.zoom %}",
  68. " <tr>",
  69. " <td>{{ markerCircle({})|raw }}<div class='sign'>{{ data.sign|raw }}</div></td>",
  70. " <td>",
  71. " {% if kv|split('=')[0] == 'office' %}",
  72. " {{ keyTrans('office') }}",
  73. " ({{ tagTrans('office', kv|split('=')[1]) }})",
  74. " {% else %}",
  75. " {{ tagTrans(kv|split('=')[0], kv|split('=')[1]) }}",
  76. " {% endif %}",
  77. " </td>",
  78. " </tr>",
  79. "{% endif %}",
  80. "{% endfor %}",
  81. "</table>"
  82. ],
  83. "const": {
  84. "amenity=post_office": {
  85. "sign": "<img src='maki:post?size=15'>",
  86. "zoom": 13
  87. },
  88. "amenity=post_box": {
  89. "sign": "<img src='maki:post?size=11'>",
  90. "zoom": 16
  91. },
  92. "amenity=internet_cafe": {
  93. "sign": "<i class='fa fa-laptop' aria-hidden='true'></i>",
  94. "zoom": 13
  95. },
  96. "office=telecommunication": {
  97. "sign": "<i class='fas fa-mobile-alt'></i>",
  98. "zoom": 13
  99. },
  100. "office=it": {
  101. "sign": "<i class='fas fa-desktop'></i>",
  102. "zoom": 13
  103. },
  104. "office=newspaper": {
  105. "sign": "<i class='fas fa-newspaper'></i>",
  106. "zoom": 13
  107. },
  108. "office=publisher": {
  109. "sign": "<i class='fas fa-book'></i>",
  110. "zoom": 13
  111. },
  112. "office=advertising_agency": {
  113. "sign": "<i class='fas fa-sign'></i>",
  114. "zoom": 13
  115. },
  116. "office=public_relations": {
  117. "sign": "<i class='fas fa-sign'></i>",
  118. "zoom": 13
  119. },
  120. "office=audiovisual_production": {
  121. "sign": "<i class='fas fa-film'></i>",
  122. "zoom": 13
  123. },
  124. "office=film_production": {
  125. "sign": "<i class='fas fa-film'></i>",
  126. "zoom": 13
  127. },
  128. "amenity=telephone": {
  129. "sign": "<img src='maki:telephone'>",
  130. "zoom": 16
  131. }
  132. },
  133. "filter": {
  134. "type": {
  135. "name": "{{ trans('filter:type') }}",
  136. "show_default": "true",
  137. "type": "select",
  138. "values": "{% for k, v in const %}<option value=\"{{ k }}\" query=\"nwr[{{ k }}]\" minzoom=\"{{ v.zoom }}\">{{ tagTrans(k) }}</option>{% endfor %}"
  139. }
  140. }
  141. }