Commit Graph
47 Commits
Author SHA1 Message Date
Jakub_HostacnyandClaude Opus 5.5 419ad580ca feat: ziara tlacidla sa prisposobi farbe tlacidla
Tien tlacidiel v banneroch a letakoch sa odvodi z nastavenej farby
tlacidla namiesto napevno cervenej / modrej.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-21 11:50:35 +02:00
Jakub_HostacnyandClaude Opus 5.5 44f5ea822e feat: zalomenie riadku <br> aj v jednotkovej cene, gramazi a poznamke
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-21 11:49:33 +02:00
Jakub_HostacnyandClaude Opus 5.5 061e647180 feat: mazanie pripomienok v editore aj na stranke s odkazom
- editor: tlacidlo Zmazat v bubline pripomienky na platne
- odkaz: Zmazat v bubline aj ikona kosa v zozname pripomienok
- pred zmazanim potvrdenie (zmizne pre vsetkych s odkazom)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-21 11:44:59 +02:00
Jakub_HostacnyandClaude Opus 5.5 cfacf2474b feat: pripomienky cez zdielany odkaz; predvolena poloha stitkov a pouzit na vsetky
Pripomienky:
- odkaz /review/<token> so snimkou newslettra: nic sa neda upravit, da sa
  komentovat (spendlik), pisat text do newslettra a kreslit; meno autora sa pamata
- pripomienky su ukotvene k modulu a ulozene k odkazu - vidi ich kazdy s odkazom
- v editore: tlacidlo Pripomienky (pocet otvorenych), vytvorenie a kopirovanie
  odkazu, aktualizacia nahladu v odkaze, zoznam pripomienok, Hotovo a mazanie;
  pripomienky sa zobrazuju aj priamo na platne a daju sa tam oznacit ako hotove
- supabase/migrations/002_reviews.sql (tabulky reviews, review_comments)
- pismo Poppins v layoute (nahlad vernejsi e-mailu)

Stitky predajni:
- predvolena poloha -15 vodorovne / +5 zvisle od praveho horneho rohu pozadia cenovky
- tlacidlo Polohu stitkov pouzit na vsetky produkty

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-21 11:03:34 +02:00
Jakub_HostacnyandClaude Opus 5.5 b0a050bd12 fix: stitky predajni ukotvene k pravemu hornemu rohu pozadia cenovky
Pozadie cenovky moze mat v SVG priehladny okraj; jeho skutocne hranice sa
odmeraju v prehliadaci (getBBox) a stitky sa ukotvia k jeho pravemu
hornemu rohu namiesto rohu celeho SVG. Posun stitkov sa pocita od tohto rohu.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-21 10:53:40 +02:00
Jakub_HostacnyandClaude Opus 5.5 c426145c48 feat: klik na produkt v nahlade otvori jeho editor (harmonika)
- v paneli je otvoreny vzdy len jeden produkt, ostatne su zbalene
- klik na kartu produktu v nahlade vyberie sekciu aj produkt, panel sa
  posunie na jeho editor a karta sa v nahlade zvyrazni
- odkazy v nahlade sa klikom neotvaraju

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-21 10:52:09 +02:00
Jakub_HostacnyandClaude Opus 5.5 109d65a690 fix: auto-save nevytvara pri nacitani stranky kopie kampani
- auto-save sa spusti az po nacitani kampane z databazy (predtym sa pri
  pomalsom nacitani ulozila predvolena kampan ako nova kopia a dalsie zmeny
  sli do nej)
- pocas vkladania novej kampane sa nespusti druhe vlozenie
- id novej kampane sa nastavi, len ak medzitym nebola otvorena ina
- nacita sa naposledy upravena kampan bez ohladu na pocet modulov

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 17:15:56 +02:00
Jakub_HostacnyandClaude Opus 5.5 25771afc79 feat: produktove karty v style letaku a zjednoduseny panel produktu
Karta podla sablony coop_nws_009: fotka cez celu kartu, cenovka cez fotku
vpravo dole, stitky predajni nad cenovkou, pod tym texty.
- v editore sa vizual sklada zivo (HTML/CSS); pri exporte (ZIP/Brevo) sa ulozi
  ako JPG a do e-mailu ide ako jeden obrazok - funguje rovnako vo vsetkych
  klientoch; nezmenene karty sa znova nenahravaju
- /api/img: proxy obrazkov pre nahlad (inak by sa vizual nedal ulozit)
- novy ProductEditor pre bezne aj vernostne produkty: Texty, Fotka (zoom/posun),
  Cenovka (sablona, velkost, ceny), Dostupnost, Dalsie moznosti; zbalene po produktoch
- alt texty kariet s cenou a zlavou, mobilne styly textu, ochrana farieb
  v tmavom rezime (zelena karta, Apple Mail)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 17:06:48 +02:00
Jakub_HostacnyandClaude Opus 5.5 139e3569d0 feat: posun stitkov predajni pri kazdom produkte zvlast
Posuvniky Vodorovne / Zvisle su v nastaveniach cenovky produktu
(aj vernostneho) namiesto celej sekcie.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 16:52:34 +02:00
Jakub_HostacnyandClaude Opus 5.5 a2d009bcb8 feat: zalamovanie riadkov v nadpisoch, cely nahlad cenovky v zozname sablon
- Enter alebo <br> v nadpise = novy riadok (clanky, recepty, letaky, banner,
  nazov produktu); polia nadpisov su viacriadkove
- nahlad sablony v editore cenoviek uz nie je orezany zhora a zdola

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 16:50:27 +02:00
Jakub_HostacnyandClaude Opus 5.5 090fd8d1ce feat: tri styly textu produktu podla vzoru coop_nws_009
- nazov 15px/700, gramaz 15px/400 v tom istom riadku, jednotkova cena 11px #555
  pod nazvom, volitelna poznamka 10px #888 (napr. Ilustracne foto)
- text zarovnany vlavo s odsadenim 14px; jednotkova cena sa presunula spod cenovky
- nove polia Gramaz / mnozstvo a Poznamka pri produkte aj vernostnom produkte

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 16:48:42 +02:00
Jakub_HostacnyandClaude Opus 5.5 ffba0e0842 chore: typ pre renderStoresHtml
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 16:46:36 +02:00
Jakub_HostacnyandClaude Opus 5.5 ea2a9d85d0 feat: stitky predajni pri hornej hrane cenovky s nastavitelnym posunom
- stitky Potraviny/Supermarket/Tempo su nad cenovkou, zarovnane k jej
  pravemu okraju a posuvaju sa spolu s nou (pod/vedla obrazka, zarovnanie, sirka)
- posuvniky Vodorovne / Zvisle pre celu sekciu (aj vernostne zlavy);
  zaporny zvisly posun prekryje horny okraj cenovky
- spolocny helper na vykreslenie stitkov namiesto dvoch kopii

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 16:46:20 +02:00
Jakub_HostacnyandClaude Opus 5.5 98fdad535d feat: lista platnosti akcie nad produktmi, platnost na kartach predvolene skryta
- novy blok Lista platnosti akcie (vzhlad ako oznamovacia lista, bez badge a CTA):
  text + globalna platnost, da sa skryt a posuvat, nie zmazat; do existujucich
  kampani sa vlozi automaticky nad prvu produktovu sekciu
- platnost na kartach produktov sa da zobrazit prepinacom (predvolene skryta),
  produkty s vlastnou platnostou ju zobrazia vzdy

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 16:42:59 +02:00
Jakub_HostacnyandClaude Opus 5.5 5f6a39debe feat: export a import kampani a cenoviek pre prenos na novy server
- npm run db:export: kampane a sablony cenoviek do supabase/data/ (+ obrazky z uloziska)
- npm run db:import [-- --dry-run]: nahra data s povodnymi ID, prepise odkazy
  na nove ulozisko, da sa spustit opakovane
- aktualny export: 7 kampani, 1 sablona cenovky

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 11:00:35 +02:00
Jakub_HostacnyandClaude Opus 5.5 5d1900740c chore: zalozenie databazy a uloziska na novom serveri
- supabase/schema.sql: idempotentny skript (tabulky, RLS, bucket newsletter-assets)
- supabase/assets + npm run db:upload-assets: staticke obrazky sablony
- adresa uloziska sa sklada z NEXT_PUBLIC_SUPABASE_URL namiesto pevneho projektu
- .env.example a navod na instalaciu v README

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 10:54:55 +02:00
Jakub_HostacnyandClaude Opus 5.5 eb92d30dc3 chore: upratanie lint upozorneni z uloh 11-18
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 10:42:34 +02:00
Jakub_HostacnyandClaude Opus 5.5 9c2fb60fd6 feat: uprava produktovej fotky - zoom, posun a orezanie
- posuvniky Velkost / Vodorovne / Zvisle pri produkte aj vernostnom produkte
- upravena fotka sa vykresli ako pozadie bunky (background-size/position,
  funguje aj v Gmaile), co presahuje ramik sa oreze
- pri cenovke vedla obrazka je fotka pozadim celeho riadku a da sa
  zasunut pod cenovku; Outlook (mso) dostane povodny obrazok
- neupravene produkty sa vykresluju presne ako doteraz

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 10:36:30 +02:00
Jakub_HostacnyandClaude Opus 5.5 d72293a2e2 feat: jednoduchy HTML editor pre hlavicku a paticku (uloha 13)
Prepinac Vlastne HTML predvyplni aktualne vygenerovane HTML, ktore sa
da upravit v textovom poli; nahlad aj export pouziju vlastne HTML.
Tlacidlo Nacitat z formulara obnovi vygenerovane HTML, po vypnuti sa
vrati formular.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 10:32:10 +02:00
Jakub_HostacnyandClaude Opus 5.5 3bd93fde20 feat: premenne {cena_s_kartou} a {zlava_s_kartou} v cenovkach (uloha 12)
- bezne produkty maju volitelne polia Cena s kartou / Zlava s kartou,
  vernostne produkty pouzivaju svoje existujuce hodnoty
- editor cenoviek: tlacidla na pridanie vrstiev a nahlad premennych
- jedinecne ID novych vrstiev (rychle pridanie viacerych vrstiev)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 10:30:32 +02:00
Jakub_HostacnyandClaude Opus 5.5 22a9a51d00 feat: vlastna PNG cenovka pre vynimocny produkt (uloha 16)
- pri produkte aj vernostnom produkte sa da nahrat cela cenovka ako PNG,
  ktora prekryje generovanu sablonu
- tlacidlo Odstranit PNG vrati generovanu cenovku (sablona ostava zachovana)
- hromadne pouzitie cenovky (sekcia / cely newsletter) produkty s PNG neprepisuje

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 10:27:33 +02:00
Jakub_HostacnyandClaude Opus 5.5 92dc2081d0 feat: globalna platnost akcie sa prepisuje do vsetkych produktovych sekcii (uloha 15)
Zmena v ktorejkolvek produktovej sekcii alebo vo vernostnych zlavach
nastavi platnost vsade; produkty s vlastnou platnostou si ju ponechaju.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 10:25:35 +02:00
Jakub_HostacnyandClaude Opus 5.5 d43a1dae40 feat: automaticke alt texty s moznostou rucneho prepisu (uloha 14)
- produkt: nazov produktu, ostatne obrazky: nadpis okna / nazov modulu
- z alt textu sa odstrania HTML znacky (napr. <br> v nadpisoch)
- pri kazdom obrazku pole Alt text; ak je vyplnene, ma prednost

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 10:24:58 +02:00
Jakub_HostacnyandClaude Opus 5.5 23ac4dc830 feat: duplikovanie sablon cenoviek v editore (uloha 11)
Ikona Duplikovat pri sablone vytvori kopiu "(kopia)", hned ju ulozi
a otvori na upravu.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 10:23:33 +02:00
Jakub_HostacnyandClaude Opus 5.5 21320e792b fix: odkaz Otvorit v Brevo vedie priamo na upravu kampane (uloha 17)
Namiesto napevno zadaneho zoznamu kampani (404) sa odkaz sklada z ID
kampane: app.brevo.com/marketing-campaign/edit/{id}.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 10:22:36 +02:00
Jakub_HostacnyandClaude Opus 5.5 2c3f09f18f feat: moznost zmazat aj predvolene cenovky (uloha 10)
Stare predvolene sablony (badge-preset-*) ostali ulozene v localStorage
a nedali sa zmazat. Tlacidlo kosa je teraz pri kazdej sablone; pri
predvolenych sa preskoci mazanie v databaze, kde nie su.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 10:15:12 +02:00
Jakub_HostacnyandClaude Opus 5.5 48d071d48e feat: priblizenie platna v editore cenoviek (uloha 9)
- posuvnik a tlacidla +/- (50-400 %), klik na percenta vrati 100 %, Ctrl + koliesko
- tahanie vrstiev prepocitava posun podla priblizenia
- platno sa posuva a vyplna vysku stlpca, vrch cenovky sa uz neoreze

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 10:03:01 +02:00
Jakub_HostacnyandClaude Opus 5.5 61c8c2fb76 feat: hromadne pouzitie cenovky aj s polohou, rovnaka vyska clankov a receptov
- tlacidla "Pouzit v celom newsletteri" a "Pouzit pre vsetky produkty v tejto sekcii" kopiruju aj polohu cenovky (pod / vedla obrazka)
- sekcia Clanky a Recepty (aj letaky) ma karty v riadku rovnako vysoke

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 09:56:22 +02:00
Jakub_Hostacny 0aa664b08b feat: moznost pozicovania cenovky vedla produktu (uloha 8) 2026-10-08 10:15:39 +02:00
Jakub_Hostacny a82c2d5af8 feat: zarovnanie vysky produktovych kariet v riadku (uloha 7) 2026-10-08 10:11:27 +02:00
Jakub_Hostacny ad99aee117 feat: moznost nahrat podklad cenovky aj ako PNG 2026-10-08 09:59:10 +02:00
Jakub_Hostacny 317a42aaa7 feat: odstranenie moznosti samostatnej vlajky/srdca 2026-10-08 09:56:08 +02:00
Jakub_Hostacny 680883f047 feat: moznost skrytia oznamovacej listy 2026-10-08 09:53:12 +02:00
Jakub_Hostacny 00d681bec2 feat: zmena farby pozadia produktov a editovatelne nazvy modulov 2026-10-08 09:49:33 +02:00
Jakub_Hostacny 4e4e5e5af3 Feat: adjustable superscript index, loyalty badges, centered unit price, global badge apply, brevo url fix 2026-09-24 12:33:39 +02:00
Jakub_Hostacny 245e3f8471 chore: ignore docs directory 2026-09-24 12:14:12 +02:00
Jakub_Hostacny 5a6788b593 feat: reusable badge templates, dynamic price and superscript cents, size/align/padding controls, fix saving 2026-09-24 12:07:52 +02:00
Jakub_Hostacny f9aa2297ba feat: drag and drop text layers in badge editor, anchor flyers/recipes above footer, and editable titles in flyers section 2026-09-24 11:52:24 +02:00
Jakub_Hostacny 99dd0f272e feat: real Brevo API verifier, auto-reset if campaign missing, and update existing campaign support 2026-09-24 11:46:40 +02:00
Jakub_Hostacny 2b4d3643cb feat: anchor header/footer, editable header buttons, campaign management, image uploads, badge font customization, and brevo export fix 2026-09-24 11:42:45 +02:00
Jakub_Hostacny 3dc5778155 Fix module canvas backgrounds, clear dummy badges, add SVG upload, new template creation, and {jednotkova_cena} variable 2026-09-24 11:22:23 +02:00
Jakub_Hostacny ab74922b93 Fix canvas background to exact COOP gradient, remove module borders/gaps, add interactive Badge Editor SVG to PNG 2026-09-24 11:15:54 +02:00
Jakub_Hostacny 65f37a74b8 Exact 1:1 COOP template design, native email responsiveness without toggle switcher 2026-09-24 11:11:17 +02:00
Jakub_Hostacny 538f2ccae3 Implement WYSIWYG newsletter editor with live preview, import, Supabase auto-save and Brevo export 2026-09-24 11:04:13 +02:00
Jakub_Hostacny 8763c5bace Initialize Next.js app with Supabase, Brevo config and migration 2026-09-24 11:01:01 +02:00
Jakub_Hostacny af8dc721a1 Ignore .agent directory 2026-09-24 10:32:30 +02:00
Jakub_Hostacny d3c1598911 Initial commit with .gitignore 2026-09-24 10:24:18 +02:00