puppet node classifier
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.
 
 
 
 
 
 

107 lines
4.0 KiB

  1. {% extends "page.html" %}
  2. {% block title %}{{ image.title or image.uuid }}{% endblock %}
  3. {% block subtitle %}{{ image.date }}{% endblock %}
  4. {% block buttons %}
  5. <form action="/photo/{{ image.uuid }}/op" method="post">
  6. {% if image.status == PhotoStatus.private %}
  7. <input type="submit" class="secondary-button pure-button" name="op" value="Make public" />
  8. {% else %}
  9. <input type="submit" class="secondary-button pure-button" name="op" value="Make private" />
  10. {% endif %}
  11. </form>
  12. <a href="/photo/{{ image.uuid }}/edit"><button class="secondary-button pure-button">Edit</button></a>
  13. {% endblock %}
  14. {% block body %}
  15. <div class="photo-view pure-g">
  16. <div class="photo-preview pure-u-2-3">
  17. <a href="/thumb/set/big/{{ image.uuid }}.jpg">
  18. <img src="/thumb/set/preview/{{ image.uuid }}.jpg" />
  19. </a>
  20. </div>
  21. <div class="photo-info pure-u-1-3">
  22. {% if image.description %}
  23. <div class="photo-description">
  24. <h2>Description</h2>
  25. <p>{{ image.description }}</p>
  26. </div>
  27. {% endif %}
  28. <div class="photo-metadata">
  29. <h2>Information</h2>
  30. <ul>
  31. <li>
  32. <strong>Date:</strong> {{ image.date }}
  33. </li>
  34. {% if image.date_offset %}
  35. <li>
  36. <strong>Time offset: </strong> {{ image.date_offset }}m
  37. </li>
  38. <li>
  39. <strong>Embedded date: </strong>{{ image.date_real }}
  40. </li>
  41. {% endif %}
  42. <li>
  43. <strong>Status: </strong>{{ image.status | statusstr }}
  44. </li>
  45. <li>
  46. <strong>Versions:</strong> {{ image.files|length }}
  47. </li>
  48. {% if image.lat != 0 %}
  49. <li>
  50. <strong>Coordinates:</strong> <a href="/map?zoom=13&i={{ image.uuid }}">{{ image.lat }}, {{ image.lon }}</a>
  51. </li>
  52. {% endif %}
  53. </ul>
  54. </div>
  55. <div class="photo-formats">
  56. <h2>Versions</h2>
  57. <ul class="pure-g">
  58. {% for img in image.files %}
  59. <li class="pure-u-1 pure-g">
  60. <a href="/thumb/one/big/{{ img.uuid }}.jpg" class="pure-g-1-4">
  61. <img src="/thumb/one/small/{{ img.uuid }}.jpg" />
  62. </a>
  63. <div class="pure-u-3-4">
  64. <div>
  65. {{ img.uuid }}
  66. </div>
  67. <div>
  68. {{ img.path | basename }}
  69. </div>
  70. <div>
  71. {{ img.size | filesizeformat }}{% if img.width %} - {{ img.width }} x {{ img.height }}{% endif %}
  72. </div>
  73. {% if img.orientation > 0 %}
  74. <div>
  75. Rotation: {{ img.orientation * 90 }}&deg;
  76. </div>
  77. {% endif %}
  78. <div>
  79. {{ img.format }}
  80. </div>
  81. <div>
  82. <a href="/download/one/{{ img.uuid }}">download</a>
  83. <a href="/download/one/{{ img.uuid }}.{{ img.format | mime2ext }}?preview=true">preview</a>
  84. </div>
  85. </div>
  86. </li>
  87. {% endfor %}
  88. </ul>
  89. </div>
  90. <div class="photo-tags">
  91. <h2>Tags{% if auth %} <a href="/create_tags?uuid={{ image.uuid }}">add</a>{% endif %}</h2>
  92. <ul class="tags-picker">
  93. {% for tagi in image.tags %}
  94. <li>
  95. <a href="/tag/{{ tagi.tag.slug }}">{{ tagi.tag.name }}</a>
  96. </li>
  97. {% endfor %}
  98. </ul>
  99. </div>
  100. </div>
  101. </div>
  102. {% endblock %}