Web platform for sharing free data for ML and research

By using this site, you agree to have cookies stored on your device, strictly for functional purposes, such as storing your session and preferences.

Dismiss

 gallery.html

View raw Download
text/html • 5.92 kiB
HTML document, ASCII text
        
            
1
{% extends "default.html" %}
2
3
{% block nav_title %}{{ gallery.title }}{% endblock %}
4
{% block title %}Gallery {{ gallery.title }} | {{ site_name }}{% endblock %}
5
6
{% block content %}
7
8
<div id="picture-view">
9
<x-frame id="picture-actions">
10
<ul class="action-list">
11
<li><a href="/gallery/{{ gallery.id }}/users">
12
<iconify-icon icon="mdi:user"></iconify-icon>Users
13
</a></li>
14
{% if have_extended_permission %}
15
<li><a href="/gallery/{{ gallery.id }}/edit">
16
<iconify-icon icon="mdi:edit"></iconify-icon>Edit
17
</a></li>
18
{% endif %}
19
{% if have_extended_permission %}
20
<li><details>
21
<summary>
22
<iconify-icon icon="mdi:delete"></iconify-icon>Delete
23
</summary>
24
<a href="/gallery/{{ gallery.id }}/delete">Confirm deletion</a>
25
</details></li>
26
{% endif %}
27
</ul>
28
</x-frame>
29
<x-frame style="--width: 768px" class="vbox">
30
<h1>{{ gallery.title }}</h1>
31
<p>owned by <a href="/profile/{{ gallery.owner.username }}">{{ gallery.owner.formatted_name }}</a></p>
32
<p>{{ gallery.description }}</p>
33
{% if have_permission %}
34
<form class="buttonbox" method="POST" action="/gallery/{{ gallery.id }}/add-picture">
35
<input name="picture_id" type="text" placeholder="Picture ID" required aria-label="Picture ID">
36
<button type="submit">Add picture</button>
37
</form>
38
<details>
39
<summary>Add from query</summary>
40
<form method="POST" action="/gallery/{{ gallery.id }}/add-pictures-from-query">
41
<label>
42
<span class="required-asterisk">Query YAML</span>
43
<textarea name="query" required rows="8"></textarea>
44
</label>
45
<button type="submit">Add pictures</button>
46
</form>
47
</details>
48
{% endif %}
49
<h2>Pictures</h2>
50
<ul class="thumbnail-list">
51
{% for picture in gallery.pictures %}
52
<li>
53
<a href="/picture/{{ picture.resource.id }}">
54
<div class="annotation-zone">
55
<img src="/raw/picture/{{ picture.resource.id }}" alt="{{ picture.resource.title }}">
56
{% for region in picture.resource.regions %}
57
{% if region.json.type == "bbox" %}
58
<svg class="shape-container" viewBox="0 0 {{ picture.resource.width }} {{ picture.resource.height }}">
59
<rect x="{{ region.json.shape.x * picture.resource.width }}"
60
y="{{ region.json.shape.y * picture.resource.height }}"
61
width="{{ region.json.shape.w * picture.resource.width }}"
62
height="{{ region.json.shape.h * picture.resource.height }}"
63
fill="none" class="shape-bbox shape"
64
></rect>
65
</svg>
66
{% elif region.json.type == "polygon" %}
67
<svg class="shape-container" viewBox="0 0 {{ picture.resource.width }} {{ picture.resource.height }}">
68
<polygon points="{% for point in region.json.shape %}{{ point.x * picture.resource.width }},{{ point.y * picture.resource.height }} {% endfor %}" fill="none" class="shape-polygon shape"></polygon>
69
</svg>
70
{% elif region.json.type == "polyline" %}
71
<svg class="shape-container" viewBox="0 0 {{ picture.resource.width }} {{ picture.resource.height }}">
72
<polyline points="{% for point in region.json.shape %}{{ point.x * picture.resource.width }},{{ point.y * picture.resource.height }} {% endfor %}" fill="none" class="shape-polyline shape"></polyline>
73
</svg>
74
{% elif region.json.type == "point" %}
75
<svg class="shape-container" viewBox="0 0 {{ picture.resource.width }} {{ picture.resource.height }}">
76
<circle cx="{{ region.json.shape.x * picture.resource.width }}" cy="{{ region.json.shape.y * picture.resource.height }}" r="0" fill="none" class="shape-point shape"></circle>
77
</svg>
78
{% endif %}
79
{% endfor %}
80
</div>
81
<div class="list-detail">
82
{{ picture.resource.title }}
83
</div>
84
</a>
85
<div class="list-more">
86
<form action="/gallery/{{ gallery.id }}/remove-picture" method="POST">
87
<input type="hidden" name="picture_id" value="{{ picture.resource.id }}">
88
{% if have_permission %}
89
<button type="submit" class="button-flat"><iconify-icon icon="mdi:close">Remove</iconify-icon></button>
90
{% endif %}
91
</form>
92
</div>
93
</li>
94
{% endfor %}
95
</ul>
96
</x-frame>
97
</div>
98
{% endblock %}