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.

69 lines
2.0 KiB

  1. {
  2. "type": "overpass",
  3. "name": {
  4. "en": "Law",
  5. "fr": "Services législatifs",
  6. "pt-br": "Direito"
  7. },
  8. "query": {
  9. "14": [
  10. "(",
  11. "node[amenity~\"^(courthouse)$\"];",
  12. "way[amenity~\"^(courthouse)$\"];",
  13. "relation[amenity~\"^(courthouse)$\"];",
  14. "node[office~\"^(lawyer|notary)$\"];",
  15. "way[office~\"^(lawyer|notary)$\"];",
  16. "relation[office~\"^(lawyer|notary)$\"];",
  17. ")"
  18. ]
  19. },
  20. "feature": {
  21. "pre": [
  22. "{% if tags.amenity %}",
  23. " {% set key = 'amenity' %}",
  24. " {% set value = tags.amenity %}",
  25. "{% else %}",
  26. " {% set key = 'office' %}",
  27. " {% set value = tags.office %}",
  28. "{% endif %}"
  29. ],
  30. "description": "{{ tagTrans(key, value) }}",
  31. "markerSign": "{{ const[key ~ '=' ~ value].sign|raw }}"
  32. },
  33. "info": [
  34. "<table>",
  35. "{% for kv, data in const %}",
  36. "{% if data.zoom <= map.zoom %}",
  37. " <tr>",
  38. " <td>{{ markerCircle({})|raw }}<div class='sign'>{{ data.sign|raw }}</div></td>",
  39. " <td>",
  40. " {{ tagTrans(kv|split('=')[0], kv|split('=')[1]) }}",
  41. " </td>",
  42. " </tr>",
  43. "{% endif %}",
  44. "{% endfor %}",
  45. "</table>"
  46. ],
  47. "const": {
  48. "amenity=courthouse": {
  49. "sign": "<i class=\"fas fa-gavel\"></i>",
  50. "zoom": 14
  51. },
  52. "office=lawyer": {
  53. "sign": "⚖",
  54. "zoom": 14
  55. },
  56. "office=notary": {
  57. "sign": "<i class=\"fas fa-file-signature\"></i>",
  58. "zoom": 14
  59. }
  60. },
  61. "filter": {
  62. "type": {
  63. "name": "{{ trans('filter:type') }}",
  64. "show_default": "true",
  65. "type": "select",
  66. "values": "{% for k, v in const %}<option value=\"{{ k }}\" query=\"nwr[{{ k }}]\" minzoom=\"{{ v.zoom }}\">{{ tagTrans(k) }}</option>{% endfor %}"
  67. }
  68. }
  69. }