Admin pristup
Nije dovoljna samo Supabase prijava — korisnik mora biti upisan i u tablicu admins.
Realtime
Promjene fotografa dolaze automatski. Ručni ↺ Osvježi dostupan je kao fallback.
Obračun
Za obavljene i otkazane naloge: troškovi, verifikacija i porezni izračun po fotografu.
Izvještaji
Pregled po mjesecima, Excel export, Print/PDF i Batch print za više fotografa odjednom.
1. Prijava i sigurnost
NaloziAdriatic je admin alat. Dvostruka provjera — Supabase Auth + admin tablica — sprečava da fotografi slučajno dobiju pristup.
Tijek prijave
Unesi e-mail i lozinku na login ekranu.
Supabase Auth provjerava vjerodajnice i vraća JWT token.
Aplikacija dodatno provjerava tablicu admins — ako korisnik nije tamo, pristup se odmah odbija.
JWT token se sprema lokalno i učitava se pri svakom idućem otvaranju aplikacije.
Ako korisnik nije u admins tablici, aplikacija ostaje na login ekranu bez ikakve veze prema ostatku sučelja.
Ruši JWT iz localStoragea, gasi realtime kanal i vraća login ekran. Nalazi se u headeru.
2. Pregled i navigacija
Sučelje je podijeljeno na lijevi panel s fotografima i desni radni panel s tri taba.
Popis svih fotografa s pretraživanjem. Badge na svakom imenu pokazuje broj aktivnih naloga.
Nakon odabira fotografa desno se aktiviraju tabovi:
U tabu Nalozi: Na čekanju / Svi / Obavljeno / Otkazano.
Toggle u headeru prebacuje između tamne i svijetle teme — postavka se pamti lokalno.
3. Nalozi
Kreiranje i uređivanje zadataka za fotografe. Gumb "Novi nalog" aktivan je tek nakon odabira fotografa.
Šifra objekta, broj ugovora, vlasnik, telefon, adresa, GPS, broj smještajnih jedinica, link i napomena agencije.
Admin i fotograf dijele isti zapis kroz merge — adminova poslovna polja i fotografova statusna/terenska polja ne pregaze jedna drugu.
Pri uređivanju nalog možeš prebaciti drugom fotografu bez ručnog kopiranja podataka.
Admin vidi fotografova polja (datum kontaktiranja, obrada, isporuka) na kartici naloga — samo za čitanje.
4. Obračun Ključno
Najjači dio aplikacije — financijski obračun za svaki završeni ili otkazani nalog s live kalkulacijom po fotografu.
Dostupan samo za obavljene i otkazane naloge. Kartica naloga pokazuje je li obračun već unesen.
Datum kontaktiranja, datum isporuke, tko je dogovorio posao, broj kategorija, kilometri, dron, akvizicija, otkaz, ostali troškovi i verifikacija.
Kad je označen otkaz, kategorije i dron se automatski gase — obračun ide kroz putni trošak i propuštenu dobit.
Modal odmah prikazuje bruto honorar, bruto isplatu, bruto + ZO i neto prema naknadama i poreznim postavkama tog fotografa.
5. Izvještaji
Pregled obračunskih podataka po vremenu i fotografima s više opcija izvoza.
Obračuni grupirani po mjesecu i fotografu, s jasno odvojenim bruto i neto iznosima.
Generira worksheet po poslovima i sažetak po mjesecima u jednoj .xlsx datoteci.
Strukturirani obračunski ispis spreman za print ili pretvaranje u PDF iz preglednika.
Otvara ispis za više fotografa zaredom — korisno pri većem obračunskom ciklusu krajem mjeseca.
6. Realtime i osvježavanje
Aplikacija drži otvorenu WebSocket vezu prema Supabase realtime kanalu i prikazuje promjene fotografa čim se dogode.
Veza aktivna, promjene dolaze automatski.
WebSocket se uspostavlja, čekaj kratko.
Realtime pao — koristi ručni refresh.
Upis se šalje na server, čekaj potvrdu.
Mali indikator u headeru zasebno prati zadnju operaciju upisa: u tijeku / uspješno / greška.
Gumb ↺ Osvježi u headeru povlači svježe podatke i služi kao fallback kad realtime kanal kasni ili nije aktivan.
7. Postavke i backup
Hamburger gumb (☰) u headeru otvara settings drawer s tri grupe postavki.
Po kategoriji, akvizicija, dron, kilometar, prag kilometara i propuštena dobit za otkaz. Vrijede za sve fotografe ako nemaju override.
Za svakog fotografa posebno: OIB, grad, status, paušalni izdaci, MIO, ZO, porez i informativni prirez. Utječe na live kalkulaciju u obračunu.
Backup sprema obračune, globalne naknade i porezne postavke svih fotografa. Nije cloud backup — to je lokalna sigurnosna kopija.
Uvoz JSON datoteke vraća sve porezne postavke i obračune iz prethodne kopije.
8. PWA i service worker
Aplikacija ima manifest i može se instalirati kao web app, ali nema agresivno cachiranje kao FotoKalk PRO.
Chrome / Edge nude instalacijsku traku automatski. Na iOS-u: Safari → Dijeli → Dodaj na početni zaslon.
sw-nalozi.js)Minimalan SW bez zasebne cache strategije za fetch — odmah aktivira novi worker i preuzima kontrolu nad klijentima. Nije zamišljeno za offline rad.
sw-nalozi.js i manifest-nalozi.json.
9. Pregled ključnih funkcionalnosti
Financijski obračun za svaki nalog s live kalkulacijom bruto honorara, bruto isplate, bruto + ZO i neta prema individualnim poreznim postavkama fotografa.
Pregled obračuna po vremenu i fotografima s Excel exportom, Print/PDF ispisom i Batch printom za više fotografa zaredom.
Globalne naknade i individualne porezne postavke po fotografu dostupne su u desnom draweru — sve na jednom mjestu, bez navigacije.
Brz JSON izvoz i import admin podataka — obračuni, globalne naknade i sve porezne postavke fotografa u jednoj datoteci.
Toggle u headeru prebacuje između tamne i svijetle teme. Postavka se pamti lokalno između sesija.
Admin i fotograf dijele isti zapis — adminova poslovna polja i fotografova terenska/statusna polja ne pregaze jedna drugu pri sinkronizaciji.