radio: public read-only tracker for Opa (NL/EN toggle, bigger type and tap targets)
Deploy production / deploy (push) Successful in 1m22s
Deploy production / deploy (push) Successful in 1m22s
Visitors see frequencies, banks, nets, ISS passes and the log without logging in; every write stays owner-only (actions check the owner, hooks refuse non-GET). The public payload drops reminder switches, log notes and inactive nets, and the page no longer shows the observer coordinates (only "Gouda"). Dutch/English toggle (?lang, cookie, Accept-Language, NL fallback). Larger fonts, high-contrast labels and 44px+ controls for phones and tablets; radio listed as public (no lock) and in the sitemap; banks CSV public.
This commit is contained in:
1 parent
e1e2bee590
commit
96d7333fe9
16 files changed
+1061
-420
No files matched your search
@@ -1,17 +1,15 @@
|
||||
import { requireOwner } from '#lib/server/owner.js';
|
||||
import { channelRows } from '#lib/server/radio.js';
|
||||
import { scannerCsv } from '#lib/radio/index.js';
|
||||
import type { RequestHandler } from './$types';
|
||||
|
||||
// All 500 scanner memories as CSV (Uniden BC125AT/UBC125XLT programming software column order).
|
||||
export const GET: RequestHandler = async (event) => {
|
||||
requireOwner(event);
|
||||
// All 500 scanner memories as CSV, public like the page (station frequencies only) (Uniden BC125AT/UBC125XLT programming software column order).
|
||||
export const GET: RequestHandler = async () => {
|
||||
const csv = scannerCsv(await channelRows());
|
||||
return new Response(csv, {
|
||||
headers: {
|
||||
'content-type': 'text/csv; charset=utf-8',
|
||||
'content-disposition': 'attachment; filename="ubc125xlt-banks.csv"',
|
||||
'cache-control': 'private, no-store'
|
||||
'cache-control': 'public, max-age=300'
|
||||
}
|
||||
});
|
||||
};
|
||||
Reference in new issue
Block a user