record_metadata_oarec.html 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. <!DOCTYPE html>
  2. {% macro render_item_value(v, width) -%}
  3. {% set val = v | string | trim %}
  4. {% if val|length and val.lower().endswith(('.jpg', '.jpeg', '.png', '.gif', '.bmp')) %}
  5. {# Ends with image extension: render img element with link to image #}
  6. <a href="{{ val }}"><img src="{{ val }}" alt="{{ val.split('/') | last }}" width="{{ width }}"/></a>
  7. {% elif v is string or v is number %}
  8. {{ val | urlize() }}
  9. {% elif v is mapping %}
  10. <ul>
  11. {% for i,j in v.items() %}
  12. <li><i>{{ gettext(i) }}:</i> {{ render_item_value(j, 60) }}</li>
  13. {% endfor %}</ul>
  14. {% elif v is iterable %}
  15. <ul>
  16. {% for i in v %}
  17. <li>{{ render_item_value(i, 60) }}</li>
  18. {% endfor %}
  19. </ul>
  20. {% else %}
  21. {{ val | urlize() }}
  22. {% endif %}
  23. {%- endmacro %}
  24. <html lang="{{ language }}">
  25. <head>
  26. <meta charset="utf-8"/>
  27. <title>{{ gettext('Record Metadata') }}</title>
  28. <style type="text/css">
  29. body, h3 {
  30. background-color: #ffffff;
  31. font-family: arial, verdana, sans-serif;
  32. text-align: left;
  33. float: left;
  34. }
  35. header {
  36. display: inline-block;
  37. }
  38. </style>
  39. </head>
  40. <body>
  41. <header>
  42. <h3>{{ gettext('Record Metadata') }} (<a href="{{ obj.url }}">{{ gettext('View JSON') }}</a>)</h3>
  43. </header>
  44. <section id="record-metadata">
  45. <table>
  46. <tr>
  47. <td>{{ gettext('Identifier') }}</td>
  48. <td>{{ obj['id'] }}</td>
  49. </tr>
  50. {% if (obj['properties']) %}
  51. {% for a,b in obj['properties'].items() %}
  52. {% if a not in ['extent'] %}
  53. <tr>
  54. <td>{{ gettext(a) }}</td>
  55. <td>{{ render_item_value( b, 120 ) }}</td>
  56. </tr>
  57. {% endif %}
  58. {% endfor %}
  59. {% endif %}
  60. </table>
  61. </section>
  62. </body>
  63. </html>