|
| 1 | +{% extends "file_browser/file_content/content_base.html" %} |
1 | 2 | {% load airlock %} |
2 | | -{% load django_vite %} |
3 | | -{% load static %} |
4 | | - |
5 | | -<!DOCTYPE html> |
6 | | -<html lang="en" class="min-h-screen"> |
7 | | - <head> |
8 | | - <meta charset="UTF-8"> |
9 | | - <meta http-equiv="X-UA-Compatible" content="IE=edge"> |
10 | | - <meta name="viewport" content="width=device-width, initial-scale=1.0"> |
11 | | - |
12 | | - {% vite_hmr_client %} |
13 | | - {% vite_asset "assets/src/scripts/main.js" %} |
14 | | - |
15 | | - </head> |
16 | | - |
17 | | - <body> |
18 | | - |
19 | | - <div id="airlock-table"> |
20 | | - {% if use_clusterize_table %} |
21 | | - {% fragment as header_row %} |
22 | | - <tr> |
23 | | - <th class="sort-ascending"> |
| 3 | +{% block metatitle %}{{ filename }}{% endblock %} |
| 4 | +{% block content %} |
| 5 | + <div id="airlock-table"> |
| 6 | + {% if use_clusterize_table %} |
| 7 | + {% fragment as header_row %} |
| 8 | + <tr> |
| 9 | + <th class="sort-ascending"> |
| 10 | + <button class="clusterize-table-sorter p-2 relative text-left w-full"> |
| 11 | + <div class="flex flex-row gap-2 items-center"> |
| 12 | + <span class="sort-icon h-4 w-4 [&_img]:h-4 [&_img]:w-4"> |
| 13 | + {% datatable_sort_icon %} |
| 14 | + </span> |
| 15 | + </div> |
| 16 | + </button> |
| 17 | + </th> |
| 18 | + {% for header in headers %} |
| 19 | + <th> |
24 | 20 | <button class="clusterize-table-sorter p-2 relative text-left w-full"> |
25 | 21 | <div class="flex flex-row gap-2 items-center"> |
| 22 | + {{ header }} |
26 | 23 | <span class="sort-icon h-4 w-4 [&_img]:h-4 [&_img]:w-4"> |
27 | 24 | {% datatable_sort_icon %} |
28 | 25 | </span> |
29 | 26 | </div> |
30 | 27 | </button> |
31 | 28 | </th> |
| 29 | + {% endfor %} |
| 30 | + </tr> |
| 31 | + {% endfragment %} |
| 32 | + {% #clusterize_table header_row=header_row %} |
| 33 | + {% for index, row in rows %} |
| 34 | + <tr><td class="datatable-row-number">{{ index }}</td> |
| 35 | + {% for cell in row %}<td>{{ cell }}</td>{% endfor %}</tr> |
| 36 | + {% endfor %} |
| 37 | + {% /clusterize_table %} |
| 38 | + |
| 39 | + {% else %} |
| 40 | + <table> |
| 41 | + <thead> |
| 42 | + <tr> |
| 43 | + <th></th> |
32 | 44 | {% for header in headers %} |
33 | 45 | <th> |
34 | | - <button class="clusterize-table-sorter p-2 relative text-left w-full"> |
35 | | - <div class="flex flex-row gap-2 items-center"> |
36 | | - {{ header }} |
37 | | - <span class="sort-icon h-4 w-4 [&_img]:h-4 [&_img]:w-4"> |
38 | | - {% datatable_sort_icon %} |
39 | | - </span> |
40 | | - </div> |
41 | | - </button> |
| 46 | + {{ header }} |
42 | 47 | </th> |
43 | 48 | {% endfor %} |
44 | 49 | </tr> |
45 | | - {% endfragment %} |
46 | | - {% #clusterize_table header_row=header_row %} |
| 50 | + </thead> |
| 51 | + <tbody> |
47 | 52 | {% for index, row in rows %} |
48 | | - <tr><td class="datatable-row-number">{{ index }}</td> |
49 | | - {% for cell in row %}<td>{{ cell }}</td>{% endfor %}</tr> |
50 | | - {% endfor %} |
51 | | - {% /clusterize_table %} |
52 | | - |
53 | | - {% else %} |
54 | | - <table> |
55 | | - <thead> |
56 | 53 | <tr> |
57 | | - <th></th> |
58 | | - {% for header in headers %} |
59 | | - <th> |
60 | | - {{ header }} |
61 | | - </th> |
| 54 | + <td>{{ index }}</td> |
| 55 | + {% for cell in row %} |
| 56 | + <td>{{ cell }}</td> |
62 | 57 | {% endfor %} |
63 | 58 | </tr> |
64 | | - </thead> |
65 | | - <tbody> |
66 | | - {% for index, row in rows %} |
67 | | - <tr> |
68 | | - <td>{{ index }}</td> |
69 | | - {% for cell in row %} |
70 | | - <td>{{ cell }}</td> |
71 | | - {% endfor %} |
72 | | - </tr> |
73 | | - {% endfor %} |
74 | | - </tbody> |
75 | | - </table> |
76 | | - {% endif %} |
77 | | - |
78 | | - </div> |
79 | | - </body> |
| 59 | + {% endfor %} |
| 60 | + </tbody> |
| 61 | + </table> |
| 62 | + {% endif %} |
80 | 63 |
|
81 | | -</html> |
| 64 | + </div> |
| 65 | +{% endblock %} |
0 commit comments