Commit Graph
12 Commits
Author SHA1 Message Date
Dasko 9cf4e66f00 Ograničenje konekcija BE emulatora, sopstveni kontekst fiskalizacije nezavisan od prekida zahteva, validacija porta na setup stranici, serverska optimizacija kratke pretrage bez eval-a, testovi 2026-07-13 15:10:02 +02:00
Dasko 72ec4cb2a0 Profil firme: preduzetnik_knjige pokriven u modulima + informativna tabela
ModulKpo sada obuhvata i preduzetnik_knjige (proste knjige)
Dodata tabela sa pregledom svih kombinacija pravnog oblika, PDV-a, fiskalizacije, KPO i dvojnog
Napomene: PDV prag 8M, paušalni limit 6M, fiskalizacija obavezna za sve
2026-06-25 23:13:14 +02:00
Dasko 53793549a2 gofmt -s -w . — formatiranje celog projekta 2026-06-22 02:05:46 +02:00
Dasko 3e79d94558 Demo mod, favicon ispravka i putanja ntech.env uz bazu
- NTECH_ENV=demo aktivira demo mod: korisnik Demo/Demo1234 (admin)
se kreira ili resetuje pri svakom pokretanju
- Login ekran u demo modu prikazuje pre-popunjena polja i "DEMO verzija"
- ntech.env se čuva u istom direktorijumu kao SQLite baza (umesto
uvek u radnom direktorijumu) — rešava Docker volume problem
- favicon.svg: uklonjen width="100%" koji je sprečavao prikaz ikone u brauzeru
2026-06-19 01:11:40 +02:00
Dasko 64657d5fee feat(moduli): mehanizam uključenih modula — Moduli mapa i RequireModul (Faza 0)
config.SviModuli + PodaciStranice.Moduli (uslovni meni, analogno Dozvole)
i middleware.RequireModul (zaštita ruta, analogno RequireDozvola). Sloj
iznad RBAC-a: zahtev mora proći i „modul uključen" i „korisnik sme".
Dopunjen test (TestSviModuli). Time je Faza 0 kompletna.
2026-06-13 20:23:24 +02:00
Dasko 98d6755f73 feat(config): helper ModulUkljucen — uključenost modula po profilu firme (Faza 0)
Čista funkcija izvodi iz profila firme (podesavanja) koji su zakonski
moduli aktivni. Režim „samo evidencija" gasi sve. Pravila: pdv prema
prekidaču obveznika, fiskalizacija zaseban prekidač, kpo za paušalce,
dvojno za doo. Table-driven test sa 18 slučajeva.
2026-06-13 19:38:54 +02:00
Dasko 4c1794ffc6 refactor(log): prelazak sa log na log/slog (strukturisano logovanje)
Uveden podrazumevani slog logger u main.go (podesiLog): JSON u produkciji,
tekst u razvoju, nivo Info. Svih ~70 poziva log.Printf/Println/Fatalf zamenjeno
slog.Error/Warn/Info: greška se prosleđuje kao atribut "error", informativne
vrednosti kao imenovani atributi (port, broj, putanja...), Fatalf -> Error +
os.Exit(1). Upozorenja (inicijalizacija/čišćenje dozvola, migracija kolone) idu
kao slog.Warn.
Auth log (internal/auth/log.go) namerno NIJE diran — ostaje zaseban *log.Logger
u fail2ban formatu. (slog.SetDefault usput preusmerava i standardni log paket.)
2026-06-12 22:33:42 +02:00
Dasko 588db54ed5 Sidebar — uklanjanje treptanja pri učitavanju skupljenog stanja
Inline skript u <head> odmah postavlja klasu na <html> pre iscrtavanja,
CSS je primenjuje bez tranzicije, JS je uklanja nakon što doda .skupljen.
Changes to be committed:
	modified: build.sh
	modified: go.mod
	modified: go.sum
	modified: internal/config/setup.go
	modified: web/static/css/main.css
	modified: web/templates/teme/podrazumevana/base.html
2026-06-04 15:33:17 +02:00
Dasko a884c06331 Embed implementacija, animacije, sidebar hover 2026-06-04 02:50:48 +02:00
Dasko 1f66655f8e Optimizacije — SQLite WAL, template keš, gzip kompresija, build skript 2026-06-03 21:18:12 +02:00
Dasko 417737adb1 Uklanjanje Kate privremenih fajlova iz praćenja 2026-05-31 17:09:56 +02:00
Dasko 1890cd11ef Izmene 2026-05-31 16:30:17 +02:00