From ab7f6d5ebeb5533498ff13c36155534f181adad6 Mon Sep 17 00:00:00 2001 From: Lionel Guichard Date: Mon, 21 Oct 2024 08:56:10 +0200 Subject: [PATCH 1/7] Fix: case sensitivity typo (#1991) --- packages/admin/src/Support/Forms/Components/Attributes.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/admin/src/Support/Forms/Components/Attributes.php b/packages/admin/src/Support/Forms/Components/Attributes.php index 8df4b49223..429b3fde61 100644 --- a/packages/admin/src/Support/Forms/Components/Attributes.php +++ b/packages/admin/src/Support/Forms/Components/Attributes.php @@ -86,7 +86,7 @@ protected function setUp(): void } foreach ($state as $key => $value) { - if (! $value instanceof \Lunar\Base\Fieldtype) { + if (! $value instanceof \Lunar\Base\FieldType) { continue; } From ac92f140819f4ce0a73ffddcd9eb676ae82ed9a2 Mon Sep 17 00:00:00 2001 From: wychoong <67364036+wychoong@users.noreply.github.com> Date: Mon, 21 Oct 2024 14:57:00 +0800 Subject: [PATCH 2/7] Fix `class_implements` error on string 'product_variant' (#1964) fixes #1942 fix `class_implements` error on string 'product_variant' Co-authored-by: Alec Ritson --- packages/core/src/Observers/OrderLineObserver.php | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/packages/core/src/Observers/OrderLineObserver.php b/packages/core/src/Observers/OrderLineObserver.php index 967607dd53..af384a4281 100644 --- a/packages/core/src/Observers/OrderLineObserver.php +++ b/packages/core/src/Observers/OrderLineObserver.php @@ -32,8 +32,12 @@ public function creating(OrderLine $orderLine) */ public function updating(OrderLine $orderLine) { - if (! in_array(Purchasable::class, class_implements($orderLine->purchasable_type, true))) { - throw new NonPurchasableItemException($orderLine->purchasable_type); + $purchasableModel = class_exists($orderLine->purchasable_type) ? + $orderLine->purchasable_type : + Relation::getMorphedModel($orderLine->purchasable_type); + + if (! $purchasableModel || ! in_array(Purchasable::class, class_implements($purchasableModel, true))) { + throw new NonPurchasableItemException($purchasableModel); } } } From 694014e8940c303e2b3e3b6e5e3cc5fbf5639788 Mon Sep 17 00:00:00 2001 From: Aidas Klimas Date: Mon, 21 Oct 2024 15:09:30 +0800 Subject: [PATCH 3/7] Fix Order relation manager url generation (#1995) --- .../RelationManagers/OrdersRelationManager.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/admin/src/Filament/Resources/CustomerResource/RelationManagers/OrdersRelationManager.php b/packages/admin/src/Filament/Resources/CustomerResource/RelationManagers/OrdersRelationManager.php index 5598f7863e..99b114b773 100644 --- a/packages/admin/src/Filament/Resources/CustomerResource/RelationManagers/OrdersRelationManager.php +++ b/packages/admin/src/Filament/Resources/CustomerResource/RelationManagers/OrdersRelationManager.php @@ -6,6 +6,7 @@ use Filament\Tables\Table; use Lunar\Admin\Filament\Resources\OrderResource; use Lunar\Admin\Support\RelationManagers\BaseRelationManager; +use Lunar\Admin\Filament\Resources\OrderResource\Pages\ManageOrder; use Lunar\Models\Order; class OrdersRelationManager extends BaseRelationManager @@ -18,7 +19,7 @@ public function getDefaultTable(Table $table): Table OrderResource::getTableColumns() )->actions([ Tables\Actions\Action::make('viewOrder') - ->url(fn (Order $record): string => route('filament.lunar.resources.orders.order', $record)), + ->url(fn (Order $record): string => ManageOrder::getUrl(['record' => $record])), ]); } } From 19858f375dd1b90e21301e836bdef55d493b4d90 Mon Sep 17 00:00:00 2001 From: Lionel Guichard Date: Mon, 21 Oct 2024 09:09:56 +0200 Subject: [PATCH 4/7] Fix Missing morphName in database state (#1990) --- .../core/database/state/EnsureMediaCollectionsAreRenamed.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/core/database/state/EnsureMediaCollectionsAreRenamed.php b/packages/core/database/state/EnsureMediaCollectionsAreRenamed.php index 9701b71553..3993a6bea0 100644 --- a/packages/core/database/state/EnsureMediaCollectionsAreRenamed.php +++ b/packages/core/database/state/EnsureMediaCollectionsAreRenamed.php @@ -35,7 +35,7 @@ protected function shouldRun() protected function getOutdatedMediaQuery() { return DB::table(app(config('media-library.media_model'))->getTable()) - ->whereIn('model_type', [Product::class, Collection::class, Brand::class]) + ->whereIn('model_type', [Product::morphName(), Collection::morphName(), Brand::morphName()]) ->where('collection_name', 'products'); } } From b4418b854fa7a24910d77e10f39a0cc11bfbd11a Mon Sep 17 00:00:00 2001 From: Ryan Mitchell Date: Mon, 21 Oct 2024 08:10:49 +0100 Subject: [PATCH 5/7] Fix unsupported operand type on discounts (#1984) --- packages/core/src/DiscountTypes/AbstractDiscountType.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/core/src/DiscountTypes/AbstractDiscountType.php b/packages/core/src/DiscountTypes/AbstractDiscountType.php index 8e0d3305b5..868313bb49 100644 --- a/packages/core/src/DiscountTypes/AbstractDiscountType.php +++ b/packages/core/src/DiscountTypes/AbstractDiscountType.php @@ -64,7 +64,7 @@ protected function checkDiscountConditions(Cart $cart): bool $validCoupon = $cartCoupon ? ($cartCoupon === $conditionCoupon) : blank($conditionCoupon); - $minSpend = ($data['min_prices'][$cart->currency->code] ?? 0) / $cart->currency->factor; + $minSpend = (int) ($data['min_prices'][$cart->currency->code] ?? 0) / (int) $cart->currency->factor; $minSpend = (int) bcmul($minSpend, $cart->currency->factor); $lines = $this->getEligibleLines($cart); From 5266054468e09de4994427bfa61c5331ab9bea6f Mon Sep 17 00:00:00 2001 From: Aidas Klimas Date: Tue, 22 Oct 2024 14:56:48 +0800 Subject: [PATCH 6/7] Fix create product url (#1999) same as https://github.com/lunarphp/lunar/pull/1995 Co-authored-by: Aidas Klimas --- .../Filament/Resources/ProductResource/Pages/ListProducts.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/admin/src/Filament/Resources/ProductResource/Pages/ListProducts.php b/packages/admin/src/Filament/Resources/ProductResource/Pages/ListProducts.php index f02e59b67f..f994e004ee 100644 --- a/packages/admin/src/Filament/Resources/ProductResource/Pages/ListProducts.php +++ b/packages/admin/src/Filament/Resources/ProductResource/Pages/ListProducts.php @@ -27,7 +27,7 @@ protected function getDefaultHeaderActions(): array static::createActionFormInputs() )->using( fn (array $data, string $model) => static::createRecord($data, $model) - )->successRedirectUrl(fn (Model $record): string => route('filament.lunar.resources.products.edit', [ + )->successRedirectUrl(fn (Model $record): string => ProductResource::getUrl('edit', [ 'record' => $record, ])), ]; From d01de0dccf254ae4d63d160d8c43b0386911bef9 Mon Sep 17 00:00:00 2001 From: Ryan Mitchell Date: Mon, 28 Oct 2024 11:09:43 +0000 Subject: [PATCH 7/7] Make Product name and SKU searchable (#1986) --- .../RelationManagers/OrdersRelationManager.php | 2 +- packages/admin/src/Filament/Resources/ProductResource.php | 6 ++++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/packages/admin/src/Filament/Resources/CustomerResource/RelationManagers/OrdersRelationManager.php b/packages/admin/src/Filament/Resources/CustomerResource/RelationManagers/OrdersRelationManager.php index 99b114b773..b01eea5116 100644 --- a/packages/admin/src/Filament/Resources/CustomerResource/RelationManagers/OrdersRelationManager.php +++ b/packages/admin/src/Filament/Resources/CustomerResource/RelationManagers/OrdersRelationManager.php @@ -5,8 +5,8 @@ use Filament\Tables; use Filament\Tables\Table; use Lunar\Admin\Filament\Resources\OrderResource; -use Lunar\Admin\Support\RelationManagers\BaseRelationManager; use Lunar\Admin\Filament\Resources\OrderResource\Pages\ManageOrder; +use Lunar\Admin\Support\RelationManagers\BaseRelationManager; use Lunar\Models\Order; class OrdersRelationManager extends BaseRelationManager diff --git a/packages/admin/src/Filament/Resources/ProductResource.php b/packages/admin/src/Filament/Resources/ProductResource.php index 724c09a1a9..7627d533da 100644 --- a/packages/admin/src/Filament/Resources/ProductResource.php +++ b/packages/admin/src/Filament/Resources/ProductResource.php @@ -300,7 +300,8 @@ public static function getNameTableColumn(): Tables\Columns\Column ->attributeData() ->limitedTooltip() ->limit(50) - ->label(__('lunarpanel::product.table.name.label')); + ->label(__('lunarpanel::product.table.name.label')) + ->searchable(); } public static function getSkuTableColumn(): Tables\Columns\Column @@ -323,7 +324,8 @@ public static function getSkuTableColumn(): Tables\Columns\Column }) ->listWithLineBreaks() ->limitList(1) - ->toggleable(); + ->toggleable() + ->searchable(); } public static function getDefaultRelations(): array