Storno kroz modal + ispravka about:blank u fiskalnom tabu Prodaje

- Servis i Prodaja: storniranje naloga sad ide kroz modal — dugme
  'Storniraj nalog' prvo traži potvrdu, tek onda otvara modal sa poljem za
  PIB/JMBG (kad je potrebno za refund); dugme 'Potvrdi storno' ostaje
  zaključano dok se polje ne popuni. Posle uspešnog storna modal se gasi i
  sadržaj stranice se osvežava (data-refresh=#sadrzaj).
- Dnevni pazar (Fiskalni presek): link u sidebaru i sve tri rute
  (FiskalniPazar, ZakljuciFiskalniDan, FiskalniIzvestaj) sad proveravaju
  modul fiskalizacije, ne samo RBAC dozvolu i tehničku dostupnost PFR-a.
- Prodaja: čekboks 'Prikaži fiskalni račun' se više ne nudi kad firma ne
  fiskalizuje, a pripremiFiskalniTab() više ne otvara prazan tab u tom
  slučaju — do sad je ostajao trajno na about:blank jer odredišna stranica
  nikad nije imala fiskalni račun da ga popuni. Dodata i odbrana za slučaj
  kad fiskalizacija jeste uključena ali PFR nije dostupan (zatvara osiroteli
  tab umesto about:blank).

Detalji u docs/Greške.md (van git-a).
This commit is contained in:
2026-07-03 02:22:13 +02:00
parent c87dc67857
commit edba23ae50
6 changed files with 157 additions and 25 deletions
+4
View File
@@ -226,6 +226,10 @@ document.addEventListener('alpine:init', () => {
this.artikliOpcije = window._ntechArtikli || []
this.klijenti = window._ntechKlijenti || []
this.pdvObveznik = window._ntechPdvObveznik === true
// ako firma ne fiskalizuje, ne otvaramo ni prazan tab u pripremiFiskalniTab() —
// stranica detalja nikad neće imati FiskalniRacun da ga popuni, pa bi ostao
// trajno na about:blank (v. docs/Greške.md)
this.prikaziRacun = window._ntechFiskalizacija === true
this.isMobile = window.matchMedia('(max-width: 768px)').matches
window.matchMedia('(max-width: 768px)').addEventListener('change', e => {
this.isMobile = e.matches