show upload date next to filesize in slideshow

This commit is contained in:
Johannes
2026-05-06 05:11:12 +02:00
parent 9909fc4390
commit 931c9be0df
3 changed files with 10 additions and 4 deletions

View File

@@ -39,6 +39,7 @@ def slideshow():
tags_list = []
file_sizes = []
preview_sizes = []
created_ats = []
for r in results:
fname = r['filename']
@@ -47,6 +48,7 @@ def slideshow():
post_urls.append(r['post_url'])
tags_list.append(r['tags'].split())
file_sizes.append(os.path.getsize(os.path.join(pictures_dir, fname)))
created_ats.append(r['created_at'])
ppath = os.path.join(previews_dir, pname) if pname else ''
if pname and os.path.exists(ppath):
@@ -66,6 +68,7 @@ def slideshow():
tags_list=tags_list,
file_sizes=file_sizes,
preview_sizes=preview_sizes,
created_ats=created_ats,
active_tags=active_tags,
tag_query=raw_query,
selected_site=selected_site,

6
db.py
View File

@@ -76,13 +76,13 @@ def search_images(tag_query, sort=None):
with get_conn() as c:
if not terms:
rows = c.execute(
f"SELECT filename, preview_filename, post_url, tags FROM images ORDER BY {order}"
f"SELECT filename, preview_filename, post_url, tags, created_at FROM images ORDER BY {order}"
).fetchall()
else:
where = ' AND '.join(['tags LIKE ?'] * len(terms))
params = [f'%{t}%' for t in terms]
rows = c.execute(
f"SELECT filename, preview_filename, post_url, tags FROM images WHERE {where} ORDER BY {order}",
f"SELECT filename, preview_filename, post_url, tags, created_at FROM images WHERE {where} ORDER BY {order}",
params,
).fetchall()
return [{'filename': r[0], 'preview_filename': r[1], 'post_url': r[2], 'tags': r[3]} for r in rows]
return [{'filename': r[0], 'preview_filename': r[1], 'post_url': r[2], 'tags': r[3], 'created_at': r[4]} for r in rows]

View File

@@ -164,6 +164,7 @@
const tags_list = {{ tags_list|tojson }};
const file_sizes = {{ file_sizes|tojson }};
const preview_sizes = {{ preview_sizes|tojson }};
const created_ats = {{ created_ats|tojson }};
let use_full = false;
@@ -171,6 +172,8 @@
function cur_size(n) { return use_full ? file_sizes[n] : preview_sizes[n]; }
function fmt_size(b){ return b >= 1048576 ? (b/1048576).toFixed(1)+' MB' : Math.round(b/1024)+' KB'; }
function fmt_date(ts){ if (!ts) return ''; const d = new Date(ts*1000); return d.getFullYear()+'-'+String(d.getMonth()+1).padStart(2,'0')+'-'+String(d.getDate()).padStart(2,'0'); }
function fmt_label(n){ const d = fmt_date(created_ats[n]); return fmt_size(cur_size(n)) + (d ? ' · '+d : ''); }
const sidebar = document.getElementById('tag-sidebar');
const current_query = {{ tag_query|tojson }};
@@ -286,7 +289,7 @@
i = n;
img.src = cur_src(n);
counter.textContent = `${i+1} / ${images.length}`;
file_size_el.textContent = fmt_size(cur_size(n));
file_size_el.textContent = fmt_label(n);
render_tags(n);
reset_zoom();
preload_next();