41 lines
1.6 KiB
HTML
41 lines
1.6 KiB
HTML
{% extends "base.html" %}
|
|
{% block content %}
|
|
<div class="page-header">
|
|
<h1 class="page-title">Files<span class="page-count">{{ items|length }}</span></h1>
|
|
<a href="/files/upload{{ '?context_type=' ~ context_type ~ '&context_id=' ~ context_id if context_type }}" class="btn btn-primary">+ Upload File</a>
|
|
</div>
|
|
|
|
{% if items %}
|
|
<div class="card">
|
|
{% for item in items %}
|
|
<div class="list-row">
|
|
<span class="row-title">
|
|
<a href="/files/{{ item.id }}/preview">{{ item.original_filename }}</a>
|
|
</span>
|
|
{% if item.mime_type %}
|
|
<span class="row-tag">{{ item.mime_type.split('/')|last }}</span>
|
|
{% endif %}
|
|
{% if item.size_bytes %}
|
|
<span class="row-meta">{{ "%.1f"|format(item.size_bytes / 1024) }} KB</span>
|
|
{% endif %}
|
|
{% if item.description %}
|
|
<span class="row-meta">{{ item.description[:50] }}</span>
|
|
{% endif %}
|
|
<div class="row-actions">
|
|
<a href="/files/{{ item.id }}/download" class="btn btn-ghost btn-xs">Download</a>
|
|
<form action="/files/{{ item.id }}/delete" method="post" data-confirm="Delete this file?" style="display:inline">
|
|
<button type="submit" class="btn btn-ghost btn-xs" style="color: var(--red)">Del</button>
|
|
</form>
|
|
</div>
|
|
</div>
|
|
{% endfor %}
|
|
</div>
|
|
{% else %}
|
|
<div class="empty-state">
|
|
<div class="empty-state-icon">📁</div>
|
|
<div class="empty-state-text">No files uploaded yet</div>
|
|
<a href="/files/upload" class="btn btn-primary">Upload First File</a>
|
|
</div>
|
|
{% endif %}
|
|
{% endblock %}
|