=== Cjenik 2026 ===
Contributors: dsigital
Tags: cjenik, cijene, pricing, usluge, b2b, b2c
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 7.4
Stable tag: 1.5.2
License: GPLv2 or later

Jednostavno upravljanje digitalnim cjenikom i poviješću cijena za WordPress.

== OPIS ==

Cjenik 2026 omogućuje:
* upravljanje uslugama i cijenama u WordPressu
* vođenje osnovne povijesti promjena cijena
* spremanje referentne/povijesne cijene kada je relevantna
* B2B/B2C/B2G postavku za informativni status
* prikaz cjenika putem shortcodea
* prikaz u karticama, tablici ili jednostavnom popisu
* kategorije usluga
* isticanje odabranih usluga

Plugin je informativni alat i ne predstavlja pravni savjet.

== INSTALACIJA ==

1. WordPress administracija → Plugins → Add New → Upload Plugin.
2. Učitaj cjenik-2026.zip.
3. Aktiviraj plugin.
4. U administraciji će se pojaviti izbornik Cjenik.
5. Dodaj usluge.
6. Po potrebi otvori Cjenik → Postavke.
7. Na stranicu ubaci shortcode:

[cjenik_2026]

Za jednostavni prikaz:
[cjenik_2026 style="simple"]

Za tablicu:
[cjenik_2026 style="table"]

Za prikaz spremljene referentne cijene na karticama:
[cjenik_2026 show_old_price="yes"]

== NAPOMENA ==

Plugin ne utvrđuje automatski primjenjuje li se određena zakonska obveza na konkretno poslovanje. Korisnik je odgovoran za točnost unesenih podataka i pravnu usklađenost svog poslovanja.


== WOOCOMMERCE INTEGRACIJA ==

Ako je WooCommerce aktivan, na uređivanju proizvoda pojavljuje se odjeljak "Cjenik 2026 – referentna cijena". Možete uključiti prikaz, upisati stvarnu referentnu cijenu, datum i oznaku.

Primjer prikaza:
500,00 €
Cijena na 10. 9. 2026.: 500,00 €

Plugin ne mijenja WooCommerce redovnu cijenu; dodaje zaseban red ispod aktualne cijene. Integracija koristi WooCommerce filter woocommerce_get_price_html. Nakon instalacije provjerite Shop, Product Archive i Single Product stranice, posebno ako tema koristi vlastito renderiranje cijena.

== VAŽNO ==

Službeno pojašnjenje Ministarstva gospodarstva od 22. 9. 2026. navodi da se primjena dodatne cijene proširuje na sve proizvode i usluge, a za novobuhvaćene proizvode i usluge referentni je datum 10. 9. 2026. Plugin ne utvrđuje automatski zakonsku obvezu i ne predstavlja pravni savjet. Korisnik mora unijeti točnu stvarnu povijesnu cijenu.


== WOOCOMMERCE BULK ALAT ==

U administraciji se pojavljuje:
Cjenik -> WooCommerce cijene

Gumb "Kopiraj trenutne cijene na sve proizvode" za svaki objavljeni WooCommerce proizvod:
* uzima njegovu trenutnu cijenu
* sprema je kao referentnu cijenu
* postavlja datum 10. 9. 2026.
* uključuje prikaz referentne cijene

Proizvodi bez cijene se preskaču.

Napomena: bulk radnja prepisuje postojeće referentne cijene.


== WOOCOMMERCE BULK ATRIBUTI ==

U administraciji:
Cjenik -> WooCommerce atributi

Alat koristi postojeći atribut "Vrsta uređaja" i njegove postojeće vrijednosti, primjerice:
* Mono split
* Monoblock
* Multi split

Može primijeniti odabranu vrijednost:
* na sve proizvode u odabranoj WooCommerce kategoriji, ili
* na ručno odabrane proizvode.

Opcionalno se postojeća vrijednost atributa može zamijeniti ili se nova vrijednost može samo dodati.


== DNEVNI CSV CJENIK ==

Plugin prema HOK predlošku generira CSV (UTF-8 s BOM-om, separator ;, CRLF) jednom dnevno u 07:00
prema vremenskoj zoni WordPressa i čuva zadnjih 30 dana. Za rad je potreban WooCommerce.

Naziv datoteke: Obrt_Kraljevička20_001_GGGGDDMM_7.00.csv
(godina, DAN, mjesec). Primjer za 28.09.2026.: Obrt_Kraljevička20_001_20262809_7.00.csv

Stupci:
1. Naziv proizvoda
2. Šifra
3. Marka
4. Jedinica mjere
5. Cijena za jedinicu mjere (ako je primjenjivo)
6. Maloprodajna cijena
7. Poseban oblik prodaje (DA/NE)
8. Naziv posebnog oblika prodaje
9. Cijena 10.9.2026.
10. Barkod (ako ima)
11. Dostupnost (dostupan ili nedostupan)

Pravila:
* Jedinica mjere: kom
* Cijena za jedinicu mjere: maloprodajna cijena
* Poseban oblik prodaje: DA
* Referentna cijena: spremljena WooCommerce referentna cijena
* Dostupnost: WooCommerce stock status
* Marka: atribut Proizvođač / product_brand
* Barkod: podržani GTIN/EAN meta ključevi
* Cijene sadrže znak €

Raspored: plugin zakazuje jednokratni WP-Cron event za točno sljedećih 07:00 (i nakon svakog
izvršavanja zakazuje idući) te sigurnosnu provjeru svaki sat. Runner generira cjenik najviše
jednom dnevno i nikad prije 07:00. Za točno izvršavanje u 07:00 preporučuje se server cron koji
u 07:00 poziva wp-cron.php.

Administracija: Cjenik -> Dnevni CSV (ručno generiranje, arhiva, preimenovanje, brisanje).

== JAVNI SHORTCODE ZA DNEVNI CJENIK ==

[cjenik_dnevni]

Prikazuje cjenike iz zadnjih 30 dana (zadano days="30"); tekst poveznice je datum (npr. 28.09.2026.), a poveznica vodi na
CSV datoteku. Prikazuju se samo datoteke čiji naziv odgovara predlošku.

Primjeri:
[cjenik_dnevni days="7" title="Dnevni cjenik"]
[cjenik_dnevni days="1" show_title="no"]

Alternativni shortcode: [dnevni_cjenik]

== CHANGELOG ==

1.5.2
* Nakon svakog uspješnog generiranja cjenika plugin sad sam čisti keš stranice (LiteSpeed Cache
  dodatak, izravno LiteSpeed web server preko X-LiteSpeed-Purge zaglavlja, WP Rocket, WP Super
  Cache, W3 Total Cache, WP Fastest Cache - ovisno koji je od njih aktivan). Rješava slučaj gdje
  je CSV na disku već ažuran, ali posjetitelji i dalje vide staru verziju stranice iz keša.

1.5.1
* Dodana "Povijest generiranja" na admin stranici Dnevni CSV: točno vrijeme svakog pokušaja
  (automatski preko crona ili ručno preko gumba) i je li uspio, zadnjih 90 zapisa.
* Arhiva sada prikazuje i stvarno vrijeme nastanka svake CSV datoteke (ne samo datum).

1.5.0
* Shortcode po zadanom prikazuje svih 30 dana (prije samo 3); arhiva čuva točno 30 dana uključujući današnji.
* Ispravljen naziv datoteke u svim dijelovima koda (ostatak "_vrijeme 7.00" onemogućavao je
  brisanje arhive starije od 30 dana i prikaz datuma). Stare datoteke se pri nadogradnji preimenuju.
* Popis cjenika sortira se po stvarnom datumu (GGGGDDMM se abecedno ne sortira kronološki).
* Shortcode više ne traži staru shemu naziva cjenik-YYYY-MM-DD.csv; datum je tekst poveznice.
* Jedan cron sustav umjesto dva: točno u 07:00 + sigurnosna provjera; uklonjen stari event
  c26_daily_generate_cron; deaktivacija i deinstalacija brišu sve evente i opcije.
* Zaštita od dvostrukog istovremenog generiranja, atomarno pisanje CSV-a.
* Preimenovanje/brisanje radi i za nazive s razmakom i s č/ć/š/ž/đ.
* CSV injection zaštita za tekstualne ćelije; onemogućeno listanje direktorija s CSV-ovima.
* WooCommerce stranice više ne uzrokuju fatalnu grešku kada WooCommerce nije aktivan.
* Ispravni URL-ovi admin stranica nakon generiranja/brisanja/preimenovanja.

1.4.1: Ispravljena putanja za brisanje i preimenovanje CSV cjenika.
1.4.0: Dodani gumbi Preimenuj i Obriši za pojedinačne CSV cjenike.
