Files
idriz/admin
idriz a2d7adc8c7 Nova aplikacija "Raspored časova" (raspored)
Više djece, smjene se računaju iz "sidra" (jedan datum + smjena tad; mijenja se
sedmično 1,2,1,2...). Odgovara: koje časove ima, kad počinje/završava, koja smjena
— za danas/sutra/prekosutra/juče/naziv dana/konkretan datum.
- store.py: djeca, sidro->smjena za bilo koji datum, raspored po smjeni/danu,
  uparivanje imena (padeži), CSV import (kolone dijete..predmet), grid uređivanje.
- manifest.py: alat raspored_upit(dijete, kada, sta=casovi|pocetak|kraj|smjena);
  bosanska gramatika (N časa/časova, akuzativ dana). Sve lokalno (inline).
- admin.py + templates: pregled djece (+smjena danas), dodaj/obriši dijete,
  postavi razred+sidro, grid rasporeda (uredi/dodaj/obriši po času), CSV upload.
- Registrovano u load_apps() i ADMIN_APPS.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LzKpYaEsuWDevuNnvSjcFW
2026-09-13 08:20:25 +02:00
..

Idriz Admin

Jednostavan LAN web panel za mašinu idriz. Namjerno minimalan: Flask + waitress + python-pam, jedan fajl (app.py), bez baze podataka.

Šta radi

  • Prijava preko PAM-a (Linux korisnik idriz, ista lozinka kao sistemska).
  • Stranica Status servisa — pregled sistemskih i korisničkih servisa (idriz, CUPS, VNC, PipeWire...) sa stanjem, autostartom, uptime-om, PID-om i memorijom.
  • Vertikalni meni sa lijeve strane (spremno za dodavanje novih stranica).

Pristup

  • URL: http://192.168.1.10:8080/ (samo sa LAN-a).
  • Korisnik: idriz, lozinka: sistemska lozinka tog korisnika.

Pokretanje

Radi kao korisnički systemd servis (mora biti user servis zbog pristupa systemctl --user servisima kao što je idriz.service):

systemctl --user status idriz-admin
systemctl --user restart idriz-admin
journalctl --user -u idriz-admin -f

Enabled je za boot; Restart=always + StartLimitIntervalSec=0 (nikad ne odustaje).

Struktura

  • app.py — cijela aplikacija (konfiguracija servisa je lista SERVICES na vrhu).
  • templates/base.html — layout + vertikalni meni + stil.
  • templates/login.html, templates/status.html.
  • PAM servis: /etc/pam.d/idriz-admin.

Dodavanje novog servisa u praćenje

Dopiši red u listu SERVICES u app.py (unit, scope, label, desc) i restartuj: systemctl --user restart idriz-admin.

Dodavanje nove stranice u meni

  1. Nova ruta u app.py sa @login_required.
  2. Novi <a> u templates/base.html (u .nav), sa active klasom preko active_page.