From f6876cf4819f3bb27d64ac5a377de2ee0fdb8160 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EA=B9=80=EB=B3=B4=EA=B3=A4?= Date: Mon, 16 Mar 2026 14:54:17 +0900 Subject: [PATCH] =?UTF-8?q?fix:=20[sales]=20Alpine.js=20promoFreeMonths=20?= =?UTF-8?q?=EB=AF=B8=EC=A0=95=EC=9D=98=20=EB=B0=8F=20closeModal=20?= =?UTF-8?q?=EB=AF=B8=EC=A0=95=EC=9D=98=20=EC=98=A4=EB=A5=98=20=EC=88=98?= =?UTF-8?q?=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - product-selection: Alpine x-data에 promoFreeMonths 속성 추가 및 저장 데이터에 포함 - price-simulator: promoFreeMonths 속성 추가 및 resetPromo()에 초기화 추가 - DemoTenantController: HX-Boosted 제외 조건 제거하여 hx-boost 탐색 시에도 전체 페이지 로드 --- app/Http/Controllers/Sales/DemoTenantController.php | 2 +- .../views/sales/modals/partials/product-selection.blade.php | 2 ++ resources/views/sales/price-simulator/index.blade.php | 2 ++ 3 files changed, 5 insertions(+), 1 deletion(-) diff --git a/app/Http/Controllers/Sales/DemoTenantController.php b/app/Http/Controllers/Sales/DemoTenantController.php index 56226b65..786f168e 100644 --- a/app/Http/Controllers/Sales/DemoTenantController.php +++ b/app/Http/Controllers/Sales/DemoTenantController.php @@ -37,7 +37,7 @@ class DemoTenantController extends Controller */ public function index(Request $request): View { - if ($request->header('HX-Request') && ! $request->header('HX-Boosted')) { + if ($request->header('HX-Request')) { return response('', 200)->header('HX-Redirect', route('sales.demo-tenants.index')); } diff --git a/resources/views/sales/modals/partials/product-selection.blade.php b/resources/views/sales/modals/partials/product-selection.blade.php index 20f9bfd3..164377dc 100644 --- a/resources/views/sales/modals/partials/product-selection.blade.php +++ b/resources/views/sales/modals/partials/product-selection.blade.php @@ -491,6 +491,7 @@ function productSelection() { promoDevWaive: {{ !empty($savedPromotion['dev_waive']) ? 'true' : 'false' }}, promoSubPercent: {{ $savedPromotion['sub_discount_percent'] ?? 0 }}, promoFreeTrial: {{ !empty($savedPromotion['free_trial']) ? 'true' : 'false' }}, + promoFreeMonths: {{ $savedPromotion['free_months'] ?? 0 }}, promoNote: '{{ addslashes($savedPromotion['note'] ?? '') }}', isSelected(id) { @@ -714,6 +715,7 @@ function productSelection() { dev_waive: this.promoDevWaive, sub_discount_percent: this.promoSubPercent, free_trial: this.promoFreeTrial, + free_months: this.promoFreeMonths, note: this.promoNote, }; } diff --git a/resources/views/sales/price-simulator/index.blade.php b/resources/views/sales/price-simulator/index.blade.php index 087b56c4..75745954 100644 --- a/resources/views/sales/price-simulator/index.blade.php +++ b/resources/views/sales/price-simulator/index.blade.php @@ -1295,6 +1295,7 @@ function buildRequiredSelected(catId) { promoWaiveRegistration: false, promoSubscriptionPercent: 0, promoFreeTrial: false, + promoFreeMonths: 0, promoNote: '', // --- 카테고리 선택 (상호 배타) --- @@ -1531,6 +1532,7 @@ function buildRequiredSelected(catId) { this.promoWaiveRegistration = false; this.promoSubscriptionPercent = 0; this.promoFreeTrial = false; + this.promoFreeMonths = 0; this.promoNote = ''; },