Commit Graph
13 Commits
Author SHA1 Message Date
Dasko 8bdefd0561 Klijent: izbor JMBG/Br. lične karte i kontakt osoba za pravno lice
- Nova kolona tip_identifikacije ('jmbg'/'licna_karta'), migracija 062; postojeći klijenti podrazumevano 'jmbg'
- model.Klijent: polje TipIdentifikacije + helper OznakaIdentifikacije za prikaz
- sqlite/klijent.go: kolona u svim upitima (Lista, DohvatiID, ListaFilter, Kreiraj, Izmeni)
- parseFormuKlijenta i mozdaKreirajKlijenta čitaju tip_identifikacije (fallback 'jmbg')
- Forme klijenta i servisnog naloga: selektor vrste dokumenta + polje vrednosti
- Servisni nalog: kontakt osoba (ime/prezime) za pravno lice
- Validnost broja (JMBG 13 cifara, broj lične karte) ostavljena za kasnije
2026-06-21 12:28:39 +02:00
Dasko 045ea766f1 Servis novi nalog: kartice, izbor/kreiranje klijenta, novi broj naloga
- Forma naloga razdvojena u zasebne kartice (Uređaj, Klijent, Status i datumi, Cene/Napomena)
- Nova kartica Klijent: radio fizičko/pravno, živa pretraga postojećih (Alpine, CSP-safe) po punom imenu/imenu/prezimenu odnosno nazivu firme; izbor postojećeg ili unos novog
- Enter u pretrazi bez izbora popunjava polja novog klijenta (ime/prezime ili naziv firme)
- SacuvajNalog/SacuvajIzmenaNaloga: helper mozdaKreirajKlijenta kreira novog klijenta iz forme kada nije izabran postojeći
- Broj naloga: format SN-MMGG-NNN sa mesečnim resetom brojača (001-999)
- Dodat CSRF token u formu naloga (POST je ranije vraćao 403)
- Šablonski helper json za ugradnju liste klijenata u Alpine
2026-06-21 12:15:59 +02:00
Dasko bd2e781139 Servis: preimenovanje labela, čuvanje garancije pri toglu, avans na otpremnici
- „Konačna cena" → „Cena rada" u formi i štampanom nalogu
- toggleGarancija čuva prethodnu vrednost datuma pre brisanja i vraća je pri ponovnom uključivanju
- Otpremnica ne prikazuje red avansa kada je avans 0 ili nije unesen
2026-06-20 00:41:54 +02:00
Dasko 9e76e10307 Servis forma, animacije, hover efekti i pojačane senke
Servis:
- Nova polja: ostecenja, pin_uredjaja, pribor (migracija 051)
- Default garancija iz podešavanja, svič "Bez garancije" u formi
- Podešavanja → Servis: konfigurabilan rok garancije (migracija 052)
- Default datum prijema = danas; datum_prijema se eksplicitno upisuje
- Sidebar link za Servis podešavanja
PDV/Nivelacije:
- Default raspon datuma = početak/kraj tekućeg meseca (KIR, KPR, Nivelacije)
- Dodata class="tabela" na tabele bez klase (KIR, KPR, Obračun, Nivelacije)
Animacije (Moj profil → Tema):
- Korisnik bira vrstu animacije: bez, fadeInUp, fadeIn, scaleIn, slideLeft
- Čuva se po korisniku u korisnici.lokalna_animacija (migracija 053)
- CSS [data-animacija] radi na body (globalno) i na preview wrapperima (izolovano)
- Preview animacije izolovan: data-animacija na #anim-preview-wrap, ne na body
- Mobilne kartice se animiraju kad korisnik odabere stil (podrazumevano ne)
- Animacija primenjena direktno na .tabela tbody tr (bez potrebe za .animiraj)
Hover efekti (Moj profil → Tema):
- Opcije: podrazumevano, bez, podizanje, svetlost, zoom, boja
- Čuva se po korisniku u korisnici.lokalni_hover (migracija 054)
- CSS [data-hover] radi izolovano; preview menja samo #hover-preview-wrap
- Pojačane senke u oba teme (--senka i nova --senka-hover promenljiva)
- Transition dodat za transform i background na karticama
Grafikon (Izveštaji): toggle zamenjen globalnim .toggl/.toggl-klizac svičom
2026-06-18 02:21:06 +02:00
Dasko aebcfa11e6 refactor(css): animacije poruka iz dupliranih <style> u main.css
.poruka-animacija (10 fajlova) i .greska-animacija (7 fajlova) bile su identično
duplirane po stranicama; keyframes (slideDown/shake) su već bili u main.css.
Izdvojene klase u main.css uz keyframes, uklonjeni duplikati. Forma-strane
(dobavljac/podsetnik/magacin/servis_forma) ostale prazan dodatni-css blok →
uklonjen (base.html koristi {{block}} sa difoltom, pa je bezbedno izostaviti).
HTML class= upotrebe netaknute; build, handler testovi i parsiranje prolaze.
2026-06-13 01:11:50 +02:00
Dasko e922d76331 refactor(css): layout utili .kolona i .red-izmedju
Nove utility klase: .kolona (display:flex;flex-direction:column) i .red-izmedju
(display:flex;justify-content:space-between) — struktura bez razmaka. Izdvojena
strukturna flex deklaracija iz 50 elemenata (32 kolona + 18 red-izmedju); gap/
margin ostaju kao kontekstualni override po instanci.
Visoko varirani page-header redovi (sa border-bottom/flex-wrap) ostavljeni —
jednokratni. Bez promene izgleda; šabloni parsiraju.
2026-06-13 00:57:07 +02:00
Dasko 655e15b521 refactor(css): inline labele forme na .polje-labela klasu
59 inline labela (font-size:13px; color:--tekst-sporedni; display:block;
margin-bottom:6px — identično .polje-labela) zamenjeno klasom; ukupno 67 labela
sada koristi .polje-labela. Inputi se već globalno stilizuju (main.css 635-679),
pa nije bilo punih inline input-stilova. Preostale labele (12px/4px, 8px, flex
checkbox/radio) su namerne varijante — ostavljene.
Bez promene izgleda. Napomena: redundantni inline width:100% na inputima (globalni
stil ga već postavlja) ostavljen za kasnije (bezbedno uklanjanje traži ciljanje
po elementu jer je width:100% legitiman na tabelama).
2026-06-13 00:07:13 +02:00
Dasko 19ecdf30a3 Popravka sidebara: kolaps, podmeni i HTMX navigacija 2026-06-08 19:29:17 +02:00
Dasko be74b22508 Premešten responsive CSS u main.css zbog HTMX navigacije
- Premešten sav responsive CSS (display: none za kartice, @media pravila)
iz {{define "dodatni-css"}} blokova u globalni main.css
- Pogođene stranice: nabavke, dobavljači, klijenti, magacin, servis,
prodaja, podsetnici, nabavka forma/detalji, servis forma, podešavanja
- Razlog: HTMX pri navigaciji menja samo <main> sadržaj, <head> ostaje —
page-specifičan CSS iz dodatni-css nije bio aktivan nakon navigacije
2026-06-07 22:41:09 +02:00
Dasko 742d0a528c Bezbednost: ispravke kontrole pristupa u admin i handler sloju 2026-06-05 22:41:20 +02:00
Dasko a884c06331 Embed implementacija, animacije, sidebar hover 2026-06-04 02:50:48 +02:00
Dasko e48354ed7a Ispravke — bezbednost, CSS teme, handleri, sidebar, servis forma 2026-06-03 23:13:15 +02:00
Dasko e4238628b2 feat: dodata podrška za servise
Dodana osnovna funkcionalnost za upravljanje servisima:
- Novi model (internal/model/service.go)
- SQLite repository (internal/db/sqlite/service.go)
- Handler (internal/handler/service.go)
- Tri nove stranice (lista, detalji, forma)
Izmenjeni:
- main.go
- repository.go
- utils.go
- handler.go
2026-06-02 00:15:30 +02:00