¨4.0.1¨

This commit is contained in:
¨NW¨
2023-12-03 14:07:47 +00:00
parent c08b36d1b6
commit f35052522d
1112 changed files with 43019 additions and 24987 deletions

View File

@@ -2,6 +2,14 @@
namespace Modules\Product\Providers;
use Modules\Product\Entities\Product;
use Modules\Product\Events\ProductViewed;
use Modules\Product\Listeners\StoreSearchTerm;
use Modules\Product\Events\ShowingProductList;
use Modules\Product\Listeners\SaveProductVariants;
use Modules\Product\Listeners\AddToRecentlyViewed;
use Modules\Product\Listeners\IncrementProductView;
use Modules\Product\Listeners\SaveProductVariations;
use Illuminate\Foundation\Support\Providers\EventServiceProvider as ServiceProvider;
class EventServiceProvider extends ServiceProvider
@@ -12,12 +20,26 @@ class EventServiceProvider extends ServiceProvider
* @var array
*/
protected $listen = [
\Modules\Product\Events\ProductViewed::class => [
\Modules\Product\Listeners\IncrementProductView::class,
\Modules\Product\Listeners\AddToRecentlyViewed::class,
ProductViewed::class => [
IncrementProductView::class,
AddToRecentlyViewed::class,
],
\Modules\Product\Events\ShowingProductList::class => [
\Modules\Product\Listeners\StoreSearchTerm::class,
ShowingProductList::class => [
StoreSearchTerm::class,
],
];
/**
* Bootstrap the application services.
*
* @return void
*/
public function boot(): void
{
parent::boot();
Product::saved(SaveProductVariations::class);
Product::saved(SaveProductVariants::class);
}
}

View File

@@ -3,35 +3,31 @@
namespace Modules\Product\Providers;
use Modules\Product\RecentlyViewed;
use Modules\Support\Traits\AddsAsset;
use Modules\Product\Admin\ProductTabs;
use Illuminate\Support\Facades\View;
use Illuminate\Support\ServiceProvider;
use Modules\Admin\Ui\Facades\TabManager;
use Modules\Product\Http\ViewComposers\ProductEditPageComposer;
use Modules\Product\Http\ViewComposers\ProductCreatePageComposer;
class ProductServiceProvider extends ServiceProvider
{
use AddsAsset;
/**
* Bootstrap any application services.
*
* @return void
*/
public function boot()
public function boot(): void
{
TabManager::register('products', ProductTabs::class);
$this->addAdminAssets('admin.products.(create|edit)', [
'admin.media.css', 'admin.media.js', 'admin.product.css', 'admin.product.js',
]);
View::composer('product::admin.products.create', ProductCreatePageComposer::class);
View::composer('product::admin.products.edit', ProductEditPageComposer::class);
}
/**
* Register the service provider.
*
* @return void
*/
public function register()
public function register(): void
{
$this->app->singleton(RecentlyViewed::class, function ($app) {
return new RecentlyViewed(