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>
This commit is contained in:
1 parent
d43a1dae40
commit
92dc2081d0
2 files changed
+28
-2
No files matched your search
@@ -591,6 +591,19 @@ export default function Home() {
|
||||
}));
|
||||
};
|
||||
|
||||
// Globálna platnosť akcie: prepíše sa do všetkých produktových sekcií aj vernostných zliav
|
||||
// (produkty s vlastnou platnosťou validityOverride si ju ponechajú)
|
||||
const handleSetGlobalValidity = (validity: string) => {
|
||||
setCampaign((prev) => ({
|
||||
...prev,
|
||||
modules: prev.modules.map((m) =>
|
||||
m.type === 'products_grid' || m.type === 'loyalty_club'
|
||||
? { ...m, data: { ...m.data, globalValidity: validity } }
|
||||
: m
|
||||
)
|
||||
}));
|
||||
};
|
||||
|
||||
const topCount = campaign.modules.filter((m) => isTopModule(m)).length;
|
||||
const firstBottomIdx = campaign.modules.findIndex((m) => isBottomModule(m));
|
||||
|
||||
@@ -795,6 +808,7 @@ export default function Home() {
|
||||
module={selectedModule}
|
||||
onUpdateModule={handleUpdateModule}
|
||||
onApplyBadgeToAll={handleApplyBadgeToAll}
|
||||
onSetGlobalValidity={handleSetGlobalValidity}
|
||||
availableBadges={availableBadges}
|
||||
onOpenBadgeManager={(pId) => {
|
||||
setTargetProductIdForBadge(pId);
|
||||
|
||||
Reference in new issue
Block a user