From acf9626219d1010fb52592f0b5b81645b61e7dcc Mon Sep 17 00:00:00 2001 From: jitendra Date: Mon, 8 Aug 2022 18:40:37 +0530 Subject: [PATCH] Optimized and refactored code --- .../Customer/AddressController.php | 29 +++++--- .../Customer/CustomerController.php | 40 ++++++++--- .../Customer/CustomerGroupController.php | 17 ++++- .../Controllers/Sales/OrderController.php | 2 +- .../Http/Controllers/AttributeController.php | 21 +++++- .../Controllers/AttributeFamilyController.php | 21 +++++- .../AttributeFamilyRepository.php | 24 +------ .../src/Repositories/AttributeRepository.php | 41 +++-------- .../BookingProduct/src/Helpers/Booking.php | 43 ++++++------ .../src/Helpers/DefaultSlot.php | 20 +++--- .../src/Helpers/EventTicket.php | 11 +-- .../BookingProduct/src/Helpers/RentalSlot.php | 44 ++++++------ .../Controllers/Admin/BookingController.php | 8 +-- .../Repositories/BookingProductRepository.php | 7 +- .../src/Repositories/BookingRepository.php | 1 - .../Http/Controllers/Admin/PageController.php | 51 +++++++------- .../CMS/src/Repositories/CmsRepository.php | 11 +-- .../Http/Controllers/CartRuleController.php | 17 ++++- .../src/Repositories/CartRuleRepository.php | 33 ++------- .../Controllers/CatalogRuleController.php | 17 ++++- .../Repositories/CatalogRuleRepository.php | 31 ++------- .../Http/Controllers/CategoryController.php | 21 +++++- .../src/Repositories/CategoryRepository.php | 26 +------ packages/Webkul/Checkout/src/Cart.php | 23 +++---- .../Checkout/src/Traits/CartValidators.php | 3 +- .../Webkul/Core/src/Eloquent/Repository.php | 1 - .../Webkul/Core/src/Exceptions/Handler.php | 2 +- .../src/Repositories/CoreConfigRepository.php | 4 +- .../src/Repositories/SliderRepository.php | 14 ++-- .../Http/Controllers/AddressController.php | 56 +++++++-------- .../Http/Controllers/CustomerController.php | 2 +- .../Controllers/RegistrationController.php | 4 +- .../Http/Controllers/WishlistController.php | 6 -- .../CustomerAddressRepository.php | 13 +--- .../Repositories/CustomerGroupRepository.php | 54 --------------- .../src/Repositories/CustomerRepository.php | 35 ---------- .../Controllers/InventorySourceController.php | 21 ++++-- .../InventorySourceRepository.php | 51 -------------- .../Http/Controllers/CampaignController.php | 17 ++++- .../src/Http/Controllers/EventController.php | 17 ++++- .../Http/Controllers/TemplateController.php | 17 ++++- .../src/Repositories/CampaignRepository.php | 51 -------------- .../src/Repositories/EventRepository.php | 51 -------------- .../src/Repositories/TemplateRepository.php | 51 -------------- .../Notification/src/Listeners/Order.php | 7 +- .../Payment/src/Listeners/GenerateInvoice.php | 1 - .../Paypal/src/Listeners/Transaction.php | 28 ++++---- .../Webkul/Paypal/src/Payment/SmartButton.php | 6 ++ .../Webkul/Product/src/CacheFilters/Large.php | 8 ++- .../Product/src/CacheFilters/Medium.php | 8 ++- .../Webkul/Product/src/CacheFilters/Small.php | 8 ++- .../src/Console/Commands/PriceUpdate.php | 22 +++--- .../Product/src/Database/Eloquent/Builder.php | 4 +- .../ProductAttributeValueFactory.php | 2 +- .../ProductDownloadableLinkFactory.php | 14 ++-- ...ductDownloadableLinkTranslationFactory.php | 4 +- .../Factories/ProductInventoryFactory.php | 4 +- .../Factories/ProductReviewFactory.php | 8 +-- .../Product/src/Helpers/BundleOption.php | 2 +- .../src/Helpers/ConfigurableOption.php | 38 +++++----- .../Product/src/Helpers/GenerateProduct.php | 1 - .../Webkul/Product/src/Helpers/Review.php | 8 +-- packages/Webkul/Product/src/Helpers/SEO.php | 8 +-- packages/Webkul/Product/src/Helpers/View.php | 6 +- .../Http/Controllers/ProductController.php | 24 ++++++- .../src/Http/Controllers/ReviewController.php | 20 ++++-- .../Product/src/Listeners/ProductFlat.php | 2 +- packages/Webkul/Product/src/ProductImage.php | 18 ++--- packages/Webkul/Product/src/ProductVideo.php | 4 +- .../ProductAttributeValueRepository.php | 5 +- .../ProductBundleOptionRepository.php | 8 +-- .../ProductDownloadableLinkRepository.php | 14 ++-- .../ProductDownloadableSampleRepository.php | 14 ++-- .../Repositories/ProductFlatRepository.php | 12 ++-- .../Repositories/ProductImageRepository.php | 8 +-- .../Repositories/ProductMediaRepository.php | 4 +- .../src/Repositories/ProductRepository.php | 32 ++------- .../ProductReviewImageRepository.php | 40 ++++------- .../Repositories/ProductReviewRepository.php | 34 --------- .../src/Repositories/SearchRepository.php | 12 ++-- .../Webkul/Product/src/Type/AbstractType.php | 2 +- packages/Webkul/Product/src/Type/Bundle.php | 42 ++++++----- .../Webkul/Product/src/Type/Configurable.php | 2 +- .../Webkul/Product/src/Type/Downloadable.php | 8 ++- packages/Webkul/Product/src/Type/Simple.php | 8 +-- packages/Webkul/Product/src/Type/Virtual.php | 4 +- .../Webkul/Rule/src/Helpers/Validator.php | 21 +++--- .../src/Database/Factories/InvoiceFactory.php | 38 +++++----- .../Database/Factories/InvoiceItemFactory.php | 30 ++++---- .../Factories/OrderAddressFactory.php | 27 ++++---- .../src/Database/Factories/OrderFactory.php | 69 +++++++++---------- .../Database/Factories/OrderItemFactory.php | 28 ++++---- .../Database/Factories/ShipmentFactory.php | 9 ++- .../DownloadableLinkPurchasedRepository.php | 7 +- .../Repositories/InvoiceItemRepository.php | 1 - .../src/Repositories/InvoiceRepository.php | 8 +-- .../src/Repositories/OrderItemRepository.php | 3 +- .../src/Repositories/OrderRepository.php | 8 +-- .../src/Repositories/RefundItemRepository.php | 23 +++---- .../src/Repositories/RefundRepository.php | 8 +-- .../Repositories/ShipmentItemRepository.php | 13 ++-- .../src/Repositories/ShipmentRepository.php | 7 +- .../Sales/src/Traits/InvoiceReminder.php | 14 +++- .../Webkul/Sales/src/Traits/PaymentTerm.php | 3 +- .../ProductsCategoriesProxyController.php | 3 - .../Controllers/SubscriptionController.php | 2 +- .../Shop/src/Mail/SubscriptionEmail.php | 3 +- .../CustomerSocialAccountRepository.php | 10 +-- .../Database/Factories/TaxCategoryFactory.php | 4 +- .../src/Database/Factories/TaxMapFactory.php | 2 +- .../src/Database/Factories/TaxRateFactory.php | 14 ++-- .../Controllers/TaxCategoryController.php | 19 +++-- .../Http/Controllers/TaxRateController.php | 17 ++++- .../Repositories/TaxCategoryRepository.php | 51 -------------- .../Tax/src/Repositories/TaxMapRepository.php | 26 ------- .../src/Repositories/TaxRateRepository.php | 51 -------------- .../src/Http/Controllers/RoleController.php | 23 +++++-- .../src/Http/Controllers/UserController.php | 25 ++++++- .../User/src/Http/Requests/UserForm.php | 10 +-- .../User/src/Repositories/AdminRepository.php | 58 ---------------- .../User/src/Repositories/RoleRepository.php | 60 ---------------- .../Webkul/Velocity/src/Helpers/Helper.php | 3 +- .../Controllers/Admin/CategoryController.php | 1 + .../Admin/ConfigurationController.php | 3 +- .../Controllers/Shop/ComparisonController.php | 13 ++-- .../src/Repositories/CategoryRepository.php | 8 +-- .../src/Repositories/ContentRepository.php | 30 ++------ .../Product/ProductRepository.php | 54 +++++++-------- .../src/Repositories/ReviewRepository.php | 4 +- 129 files changed, 927 insertions(+), 1417 deletions(-) diff --git a/packages/Webkul/Admin/src/Http/Controllers/Customer/AddressController.php b/packages/Webkul/Admin/src/Http/Controllers/Customer/AddressController.php index dfe05ea40..aad52e0e5 100644 --- a/packages/Webkul/Admin/src/Http/Controllers/Customer/AddressController.php +++ b/packages/Webkul/Admin/src/Http/Controllers/Customer/AddressController.php @@ -2,6 +2,7 @@ namespace Webkul\Admin\Http\Controllers\Customer; +use Illuminate\Support\Facades\Event; use Webkul\Customer\Rules\VatIdRule; use Webkul\Admin\DataGrids\AddressDataGrid; use Webkul\Admin\Http\Controllers\Controller; @@ -84,15 +85,15 @@ class AddressController extends Controller 'vat_id' => new VatIdRule(), ]); - if ($this->customerAddressRepository->create(request()->all())) { - session()->flash('success', trans('admin::app.customers.addresses.success-create')); + Event::dispatch('customer.addresses.create.before'); - return redirect()->route('admin.customer.edit', ['id' => request('customer_id')]); - } else { - session()->flash('success', trans('admin::app.customers.addresses.error-create')); + $customerAddress = $this->customerAddressRepository->create(request()->all()); - return redirect()->back(); - } + Event::dispatch('customer.addresses.create.after', $customerAddress); + + session()->flash('success', trans('admin::app.customers.addresses.success-create')); + + return redirect()->route('admin.customer.edit', ['id' => request('customer_id')]); } /** @@ -129,7 +130,11 @@ class AddressController extends Controller 'vat_id' => new VatIdRule(), ]); - $this->customerAddressRepository->update(request()->all(), $id); + Event::dispatch('customer.addresses.update.before', $id); + + $customerAddress = $this->customerAddressRepository->update(request()->all(), $id); + + Event::dispatch('customer.addresses.update.after', $customerAddress); session()->flash('success', trans('admin::app.customers.addresses.success-update')); @@ -144,8 +149,12 @@ class AddressController extends Controller */ public function destroy($id) { + Event::dispatch('customer.addresses.delete.before', $id); + $this->customerAddressRepository->delete($id); + Event::dispatch('customer.addresses.delete.after', $id); + return response()->json([ 'redirect' => false, 'message' => trans('admin::app.customers.addresses.success-delete') @@ -163,7 +172,11 @@ class AddressController extends Controller $addressIds = explode(',', request()->input('indexes')); foreach ($addressIds as $addressId) { + Event::dispatch('customer.addresses.delete.before', $addressId); + $this->customerAddressRepository->delete($addressId); + + Event::dispatch('customer.addresses.delete.after', $addressId); } session()->flash('success', trans('admin::app.customers.addresses.success-mass-delete')); diff --git a/packages/Webkul/Admin/src/Http/Controllers/Customer/CustomerController.php b/packages/Webkul/Admin/src/Http/Controllers/Customer/CustomerController.php index 5f0628536..15f044441 100755 --- a/packages/Webkul/Admin/src/Http/Controllers/Customer/CustomerController.php +++ b/packages/Webkul/Admin/src/Http/Controllers/Customer/CustomerController.php @@ -2,7 +2,8 @@ namespace Webkul\Admin\Http\Controllers\Customer; -use Mail; +use Illuminate\Support\Facades\Event; +use Illuminate\Support\Facades\Mail; use Webkul\Admin\DataGrids\CustomerDataGrid; use Webkul\Admin\DataGrids\CustomerOrderDataGrid; use Webkul\Admin\DataGrids\CustomersInvoicesDataGrid; @@ -77,11 +78,15 @@ class CustomerController extends Controller $password = rand(100000, 10000000); + Event::dispatch('customer.registration.before'); + $customer = $this->customerRepository->create(array_merge(request()->all() , [ 'password' => bcrypt($password), 'is_verified' => 1, ])); + Event::dispatch('customer.registration.after', $customer); + try { $configKey = 'emails.general.notifications.emails.general.notifications.customer'; @@ -128,11 +133,15 @@ class CustomerController extends Controller 'date_of_birth' => 'date|before:today', ]); - $this->customerRepository->update(array_merge(request()->all(), [ - 'status' => isset($data['status']), - 'is_suspended' => isset($data['is_suspended']), + Event::dispatch('customer.update.before', $id); + + $customer = $this->customerRepository->update(array_merge(request()->all(), [ + 'status' => request()->has('status'), + 'is_suspended' => request()->has('is_suspended'), ]), $id); + Event::dispatch('customer.update.after', $customer); + session()->flash('success', trans('admin::app.response.update-success', ['name' => 'Customer'])); return redirect()->route($this->_config['redirect']); @@ -185,9 +194,13 @@ class CustomerController extends Controller 'notes' => 'string|nullable', ]); - $customer = $this->customerRepository->find(request()->input('_customer')); + Event::dispatch('customer.update.before', request()->input('_customer')); - $noteTaken = $customer->update(['notes' => request()->input('notes')]); + $customer = $this->customerRepository->update([ + 'notes' => request()->input('notes'), + ], request()->input('_customer')); + + Event::dispatch('customer.update.after', $customer); session()->flash('success', 'Note taken'); @@ -206,9 +219,13 @@ class CustomerController extends Controller $updateOption = request()->input('update-options'); foreach ($customerIds as $customerId) { - $customer = $this->customerRepository->find($customerId); + Event::dispatch('customer.update.before', $customerId); - $customer->update(['status' => $updateOption]); + $customer = $this->customerRepository->update([ + 'status' => $updateOption, + ], $customerId); + + Event::dispatch('customer.update.after', $customer); } session()->flash('success', trans('admin::app.customers.customers.mass-update-success')); @@ -226,9 +243,12 @@ class CustomerController extends Controller $customerIds = explode(',', request()->input('indexes')); if (! $this->customerRepository->checkBulkCustomerIfTheyHaveOrderPendingOrProcessing($customerIds)) { - foreach ($customerIds as $customerId) { - $this->customerRepository->deleteWhere(['id' => $customerId]); + Event::dispatch('customer.delete.before', $customerId); + + $this->customerRepository->delete($customerId); + + Event::dispatch('customer.delete.after', $customerId); } session()->flash('success', trans('admin::app.customers.customers.mass-destroy-success')); diff --git a/packages/Webkul/Admin/src/Http/Controllers/Customer/CustomerGroupController.php b/packages/Webkul/Admin/src/Http/Controllers/Customer/CustomerGroupController.php index cfd122bf7..a95dd0090 100755 --- a/packages/Webkul/Admin/src/Http/Controllers/Customer/CustomerGroupController.php +++ b/packages/Webkul/Admin/src/Http/Controllers/Customer/CustomerGroupController.php @@ -2,6 +2,7 @@ namespace Webkul\Admin\Http\Controllers\Customer; +use Illuminate\Support\Facades\Event; use Webkul\Admin\DataGrids\CustomerGroupDataGrid; use Webkul\Admin\Http\Controllers\Controller; use Webkul\Customer\Repositories\CustomerGroupRepository; @@ -62,10 +63,14 @@ class CustomerGroupController extends Controller 'name' => 'required', ]); - $this->customerGroupRepository->create(array_merge(request()->all() , [ + Event::dispatch('customer.customer_group.create.before'); + + $customerGroup = $this->customerGroupRepository->create(array_merge(request()->all() , [ 'is_user_defined' => 1, ])); + Event::dispatch('customer.customer_group.create.after', $customerGroup); + session()->flash('success', trans('admin::app.response.create-success', ['name' => 'Customer Group'])); return redirect()->route($this->_config['redirect']); @@ -97,7 +102,11 @@ class CustomerGroupController extends Controller 'name' => 'required', ]); - $this->customerGroupRepository->update(request()->all(), $id); + Event::dispatch('customer.customer_group.update.before', $id); + + $customerGroup = $this->customerGroupRepository->update(request()->all(), $id); + + Event::dispatch('customer.customer_group.update.after', $customerGroup); session()->flash('success', trans('admin::app.response.update-success', ['name' => 'Customer Group'])); @@ -127,8 +136,12 @@ class CustomerGroupController extends Controller } try { + Event::dispatch('customer.customer_group.delete.before', $id); + $this->customerGroupRepository->delete($id); + Event::dispatch('customer.customer_group.delete.after', $id); + return response()->json(['message' => trans('admin::app.response.delete-success', ['name' => 'Customer Group'])]); } catch (\Exception $e) {} diff --git a/packages/Webkul/Admin/src/Http/Controllers/Sales/OrderController.php b/packages/Webkul/Admin/src/Http/Controllers/Sales/OrderController.php index f65a12fac..2132d9cca 100755 --- a/packages/Webkul/Admin/src/Http/Controllers/Sales/OrderController.php +++ b/packages/Webkul/Admin/src/Http/Controllers/Sales/OrderController.php @@ -90,7 +90,7 @@ class OrderController extends Controller $comment = $this->orderCommentRepository->create(array_merge(request()->all(), [ 'order_id' => $id, - 'customer_notified' => isset($data['customer_notified']), + 'customer_notified' => request()->has('customer_notified'), ])); Event::dispatch('sales.order.comment.create.after', $comment); diff --git a/packages/Webkul/Attribute/src/Http/Controllers/AttributeController.php b/packages/Webkul/Attribute/src/Http/Controllers/AttributeController.php index 445a302b9..650f6b452 100755 --- a/packages/Webkul/Attribute/src/Http/Controllers/AttributeController.php +++ b/packages/Webkul/Attribute/src/Http/Controllers/AttributeController.php @@ -2,6 +2,7 @@ namespace Webkul\Attribute\Http\Controllers; +use Illuminate\Support\Facades\Event; use Webkul\Admin\DataGrids\AttributeDataGrid; use Webkul\Attribute\Repositories\AttributeRepository; @@ -62,10 +63,14 @@ class AttributeController extends Controller 'type' => 'required', ]); - $this->attributeRepository->create(array_merge(request()->all(), [ + Event::dispatch('catalog.attribute.create.before'); + + $attribute = $this->attributeRepository->create(array_merge(request()->all(), [ 'is_user_defined' => 1, ])); + Event::dispatch('catalog.attribute.create.after', $attribute); + session()->flash('success', trans('admin::app.response.create-success', ['name' => 'Attribute'])); return redirect()->route($this->_config['redirect']); @@ -111,7 +116,11 @@ class AttributeController extends Controller 'type' => 'required', ]); - $this->attributeRepository->update(request()->all(), $id); + Event::dispatch('catalog.attribute.update.before', $id); + + $attribute = $this->attributeRepository->update(request()->all(), $id); + + Event::dispatch('catalog.attribute.update.after', $attribute); session()->flash('success', trans('admin::app.response.update-success', ['name' => 'Attribute'])); @@ -135,8 +144,12 @@ class AttributeController extends Controller } try { + Event::dispatch('catalog.attribute.delete.before', $id); + $this->attributeRepository->delete($id); + Event::dispatch('catalog.attribute.delete.after', $id); + return response()->json(['message' => trans('admin::app.response.delete-success', ['name' => 'Attribute'])]); } catch (\Exception $e) {} @@ -164,7 +177,11 @@ class AttributeController extends Controller } foreach ($indexes as $index) { + Event::dispatch('catalog.attribute.delete.before', $index); + $this->attributeRepository->delete($index); + + Event::dispatch('catalog.attribute.delete.after', $index); } session()->flash('success', trans('admin::app.datagrid.mass-ops.delete-success', ['resource' => 'attributes'])); diff --git a/packages/Webkul/Attribute/src/Http/Controllers/AttributeFamilyController.php b/packages/Webkul/Attribute/src/Http/Controllers/AttributeFamilyController.php index f2c7cfc4b..d2d7f8f79 100755 --- a/packages/Webkul/Attribute/src/Http/Controllers/AttributeFamilyController.php +++ b/packages/Webkul/Attribute/src/Http/Controllers/AttributeFamilyController.php @@ -2,6 +2,7 @@ namespace Webkul\Attribute\Http\Controllers; +use Illuminate\Support\Facades\Event; use Webkul\Admin\DataGrids\AttributeFamilyDataGrid; use Webkul\Attribute\Repositories\AttributeFamilyRepository; use Webkul\Attribute\Repositories\AttributeRepository; @@ -70,8 +71,12 @@ class AttributeFamilyController extends Controller 'name' => 'required', ]); + Event::dispatch('catalog.attribute_family.create.before'); + $attributeFamily = $this->attributeFamilyRepository->create(request()->all()); + Event::dispatch('catalog.attribute_family.create.after', $attributeFamily); + session()->flash('success', trans('admin::app.response.create-success', ['name' => 'Family'])); return redirect()->route($this->_config['redirect']); @@ -105,8 +110,12 @@ class AttributeFamilyController extends Controller 'name' => 'required', ]); + Event::dispatch('catalog.attribute_family.update.before', $id); + $attributeFamily = $this->attributeFamilyRepository->update(request()->all(), $id); + Event::dispatch('catalog.attribute_family.update.after', $attributeFamily); + session()->flash('success', trans('admin::app.response.update-success', ['name' => 'Family'])); return redirect()->route($this->_config['redirect']); @@ -135,8 +144,12 @@ class AttributeFamilyController extends Controller } try { + Event::dispatch('catalog.attribute_family.delete.before', $id); + $this->attributeFamilyRepository->delete($id); + Event::dispatch('catalog.attribute_family.delete.after', $id); + return response()->json([ 'message' => trans('admin::app.response.delete-success', ['name' => 'Family']), ]); @@ -161,9 +174,13 @@ class AttributeFamilyController extends Controller if (request()->isMethod('delete')) { $indexes = explode(',', request()->input('indexes')); - foreach ($indexes as $key => $value) { + foreach ($indexes as $index) { try { - $this->attributeFamilyRepository->delete($value); + Event::dispatch('catalog.attribute_family.delete.before', $index); + + $this->attributeFamilyRepository->delete($index); + + Event::dispatch('catalog.attribute_family.delete.after', $index); } catch (\Exception $e) { report($e); $suppressFlash = true; diff --git a/packages/Webkul/Attribute/src/Repositories/AttributeFamilyRepository.php b/packages/Webkul/Attribute/src/Repositories/AttributeFamilyRepository.php index 52be172f8..0355174bd 100755 --- a/packages/Webkul/Attribute/src/Repositories/AttributeFamilyRepository.php +++ b/packages/Webkul/Attribute/src/Repositories/AttributeFamilyRepository.php @@ -3,7 +3,6 @@ namespace Webkul\Attribute\Repositories; use Illuminate\Container\Container; -use Illuminate\Support\Facades\Event; use Illuminate\Support\Str; use Webkul\Core\Eloquent\Repository; use Webkul\Attribute\Repositories\AttributeRepository; @@ -44,8 +43,6 @@ class AttributeFamilyRepository extends Repository */ public function create(array $data) { - Event::dispatch('catalog.attribute_family.create.before'); - $attributeGroups = isset($data['attribute_groups']) ? $data['attribute_groups'] : []; unset($data['attribute_groups']); @@ -70,8 +67,6 @@ class AttributeFamilyRepository extends Repository } } - Event::dispatch('catalog.attribute_family.create.after', $family); - return $family; } @@ -84,9 +79,7 @@ class AttributeFamilyRepository extends Repository public function update(array $data, $id, $attribute = "id") { $family = $this->find($id); - - Event::dispatch('catalog.attribute_family.update.before', $id); - + $family->update($data); $previousAttributeGroupIds = $family->attribute_groups()->pluck('id'); @@ -137,8 +130,6 @@ class AttributeFamilyRepository extends Repository $this->attributeGroupRepository->delete($attributeGroupId); } - Event::dispatch('catalog.attribute_family.update.after', $family); - return $family; } @@ -167,17 +158,4 @@ class AttributeFamilyRepository extends Repository return $trimmed; } - - /** - * @param int $id - * @return void - */ - public function delete($id) - { - Event::dispatch('catalog.attribute_family.delete.before', $id); - - parent::delete($id); - - Event::dispatch('catalog.attribute_family.delete.after', $id); - } } \ No newline at end of file diff --git a/packages/Webkul/Attribute/src/Repositories/AttributeRepository.php b/packages/Webkul/Attribute/src/Repositories/AttributeRepository.php index ef50cd8b6..b2b71ac3f 100755 --- a/packages/Webkul/Attribute/src/Repositories/AttributeRepository.php +++ b/packages/Webkul/Attribute/src/Repositories/AttributeRepository.php @@ -3,7 +3,6 @@ namespace Webkul\Attribute\Repositories; use Illuminate\Container\Container; -use Illuminate\Support\Facades\Event; use Webkul\Attribute\Repositories\AttributeOptionRepository; use Webkul\Core\Eloquent\Repository; @@ -42,8 +41,6 @@ class AttributeRepository extends Repository */ public function create(array $data) { - Event::dispatch('catalog.attribute.create.before'); - $data = $this->validateUserInput($data); $options = isset($data['options']) ? $data['options'] : []; @@ -63,8 +60,6 @@ class AttributeRepository extends Repository } } - Event::dispatch('catalog.attribute.create.after', $attribute); - return $attribute; } @@ -82,23 +77,21 @@ class AttributeRepository extends Repository $attribute = $this->find($id); - Event::dispatch('catalog.attribute.update.before', $id); - - $data['enable_wysiwyg'] = ! isset($data['enable_wysiwyg']) ? 0 : 1; + $data['enable_wysiwyg'] = isset($data['enable_wysiwyg']); $attribute->update($data); if (in_array($attribute->type, ['select', 'multiselect', 'checkbox'])) { if (isset($data['options'])) { foreach ($data['options'] as $optionId => $optionInputs) { - $isNew = $optionInputs['isNew'] == 'true' ? true : false; + $isNew = $optionInputs['isNew'] == 'true'; if ($isNew) { $this->attributeOptionRepository->create(array_merge([ 'attribute_id' => $attribute->id, ], $optionInputs)); } else { - $isDelete = $optionInputs['isDelete'] == 'true' ? true : false; + $isDelete = $optionInputs['isDelete'] == 'true'; if ($isDelete) { $this->attributeOptionRepository->delete($optionId); @@ -110,26 +103,9 @@ class AttributeRepository extends Repository } } - Event::dispatch('catalog.attribute.update.after', $attribute); - return $attribute; } - /** - * Delete attribute. - * - * @param int $id - * @return void - */ - public function delete($id) - { - Event::dispatch('catalog.attribute.delete.before', $id); - - parent::delete($id); - - Event::dispatch('catalog.attribute.delete.after', $id); - } - /** * Validate user input. * @@ -267,12 +243,11 @@ class AttributeRepository extends Repository ) ) { array_push($trimmed, [ - 'id' => $attribute->id, - 'name' => $attribute->admin_name, - 'type' => $attribute->type, - 'code' => $attribute->code, - 'has_options' => $attribute->options()->exists(), - 'options' => $attribute->options, + 'id' => $attribute->id, + 'name' => $attribute->admin_name, + 'type' => $attribute->type, + 'code' => $attribute->code, + 'options' => $attribute->options, ]); } } diff --git a/packages/Webkul/BookingProduct/src/Helpers/Booking.php b/packages/Webkul/BookingProduct/src/Helpers/Booking.php index 9d73cd3d4..88bda8cee 100644 --- a/packages/Webkul/BookingProduct/src/Helpers/Booking.php +++ b/packages/Webkul/BookingProduct/src/Helpers/Booking.php @@ -95,7 +95,7 @@ class Booking $bookingProductSlot = $this->typeRepositories[$bookingProduct->type]->findOneByField('booking_product_id', $bookingProduct->id); - $availabileDays = $this->getAvailableWeekDays($bookingProduct); + $availableDays = $this->getAvailableWeekDays($bookingProduct); foreach ($this->daysOfWeek as $index => $isOpen) { $slots = []; @@ -106,7 +106,7 @@ class Booking $slotsByDays[] = [ 'name' => trans($this->daysOfWeek[$index]), - 'slots' => isset($availabileDays[$index]) ? $this->conver24To12Hours($slots) : [], + 'slots' => isset($availableDays[$index]) ? $this->conver24To12Hours($slots) : [], ]; } @@ -128,8 +128,8 @@ class Booking } return count($slots) - ? implode(' | ', $slots) - : '' . trans('bookingproduct::app.shop.products.closed') . ''; + ? implode(' | ', $slots) + : '' . trans('bookingproduct::app.shop.products.closed') . ''; } /** @@ -162,15 +162,16 @@ class Booking $currentTime = Carbon::now(); $availableFrom = ! $bookingProduct->available_from && $bookingProduct->available_from - ? Carbon::createFromTimeString($bookingProduct->available_from) - : Carbon::createFromTimeString($currentTime->format('Y-m-d 00:00:00')); + ? Carbon::createFromTimeString($bookingProduct->available_from) + : Carbon::createFromTimeString($currentTime->format('Y-m-d 00:00:00')); $availableTo = ! $bookingProduct->available_from && $bookingProduct->available_to - ? Carbon::createFromTimeString($bookingProduct->available_to) - : Carbon::createFromTimeString('2080-01-01 00:00:00'); + ? Carbon::createFromTimeString($bookingProduct->available_to) + : Carbon::createFromTimeString('2080-01-01 00:00:00'); for ($i = 0; $i < 7; $i++) { $date = clone $currentTime; + $date->addDays($i); if ( @@ -250,16 +251,16 @@ class Booking $requestedDate = Carbon::createFromTimeString($date . " 00:00:00"); $availableFrom = ! $bookingProduct->available_every_week && $bookingProduct->available_from - ? Carbon::createFromTimeString($bookingProduct->available_from) - : Carbon::createFromTimeString($currentTime->format('Y-m-d 00:00:00')); + ? Carbon::createFromTimeString($bookingProduct->available_from) + : Carbon::createFromTimeString($currentTime->format('Y-m-d 00:00:00')); $availableTo = ! $bookingProduct->available_every_week && $bookingProduct->available_from - ? Carbon::createFromTimeString($bookingProduct->available_to) - : Carbon::createFromTimeString('2080-01-01 00:00:00'); + ? Carbon::createFromTimeString($bookingProduct->available_to) + : Carbon::createFromTimeString('2080-01-01 00:00:00'); $timeDurations = $bookingProductSlot->same_slot_all_days - ? $bookingProductSlot->slots - : ($bookingProductSlot->slots[$requestedDate->format('w')] ?? []); + ? $bookingProductSlot->slots + : ($bookingProductSlot->slots[$requestedDate->format('w')] ?? []); if ( $requestedDate < $availableFrom @@ -387,7 +388,7 @@ class Booking return $slot['timestamp'] == $cartItem['additional']['booking']['slot']; }); - return count($filtered) ? false : true; + return ! count($filtered); } /** @@ -399,12 +400,12 @@ class Booking $timestamps = explode('-', $data['additional']['booking']['slot']); $result = $this->bookingRepository->getModel() - ->leftJoin('order_items', 'bookings.order_item_id', '=', 'order_items.id') - ->addSelect(DB::raw('SUM(qty_ordered - qty_canceled - qty_refunded) as total_qty_booked')) - ->where('bookings.product_id', $data['product_id']) - ->where('bookings.from', $timestamps[0]) - ->where('bookings.to', $timestamps[1]) - ->first(); + ->leftJoin('order_items', 'bookings.order_item_id', '=', 'order_items.id') + ->addSelect(DB::raw('SUM(qty_ordered - qty_canceled - qty_refunded) as total_qty_booked')) + ->where('bookings.product_id', $data['product_id']) + ->where('bookings.from', $timestamps[0]) + ->where('bookings.to', $timestamps[1]) + ->first(); return ! is_null($result->total_qty_booked) ? $result->total_qty_booked : 0; } diff --git a/packages/Webkul/BookingProduct/src/Helpers/DefaultSlot.php b/packages/Webkul/BookingProduct/src/Helpers/DefaultSlot.php index e838a05c2..efaab52d3 100644 --- a/packages/Webkul/BookingProduct/src/Helpers/DefaultSlot.php +++ b/packages/Webkul/BookingProduct/src/Helpers/DefaultSlot.php @@ -34,12 +34,12 @@ class DefaultSlot extends Booking $currentTime = Carbon::now(); $availableFrom = $bookingProduct->available_from - ? Carbon::createFromTimeString($bookingProduct->available_from) - : Carbon::createFromTimeString($currentTime->format('Y-m-d 00:00:00')); + ? Carbon::createFromTimeString($bookingProduct->available_from) + : Carbon::createFromTimeString($currentTime->format('Y-m-d 00:00:00')); $availableTo = $bookingProduct->available_to - ? Carbon::createFromTimeString($bookingProduct->available_to) - : Carbon::createFromTimeString('2080-01-01 00:00:00'); + ? Carbon::createFromTimeString($bookingProduct->available_to) + : Carbon::createFromTimeString('2080-01-01 00:00:00'); if ( $requestedDate < $availableFrom @@ -51,8 +51,8 @@ class DefaultSlot extends Booking $slots = []; return $bookingProductSlot->booking_type == 'one' - ? $this->getOneBookingForManyDaysSlots($bookingProductSlot, $requestedDate) - : $this->getManyBookingsforOneDaySlots($bookingProductSlot, $requestedDate); + ? $this->getOneBookingForManyDaysSlots($bookingProductSlot, $requestedDate) + : $this->getManyBookingsforOneDaySlots($bookingProductSlot, $requestedDate); } /** @@ -105,12 +105,12 @@ class DefaultSlot extends Booking $currentTime = Carbon::now(); $availableFrom = $bookingProduct->available_from - ? Carbon::createFromTimeString($bookingProduct->available_from) - : Carbon::createFromTimeString($currentTime->format('Y-m-d 00:00:00')); + ? Carbon::createFromTimeString($bookingProduct->available_from) + : Carbon::createFromTimeString($currentTime->format('Y-m-d 00:00:00')); $availableTo = $bookingProduct->available_to - ? Carbon::createFromTimeString($bookingProduct->available_to) - : Carbon::createFromTimeString('2080-01-01 00:00:00'); + ? Carbon::createFromTimeString($bookingProduct->available_to) + : Carbon::createFromTimeString('2080-01-01 00:00:00'); $timeDuration = $bookingProductSlot->slots[$requestedDate->format('w')] ?? []; diff --git a/packages/Webkul/BookingProduct/src/Helpers/EventTicket.php b/packages/Webkul/BookingProduct/src/Helpers/EventTicket.php index fb5dc60d4..6d5798979 100644 --- a/packages/Webkul/BookingProduct/src/Helpers/EventTicket.php +++ b/packages/Webkul/BookingProduct/src/Helpers/EventTicket.php @@ -91,11 +91,11 @@ class EventTicket extends Booking public function getBookedQuantity($data) { $result = $this->bookingRepository->getModel() - ->leftJoin('order_items', 'bookings.order_item_id', '=', 'order_items.id') - ->addSelect(DB::raw('SUM(qty_ordered - qty_canceled - qty_refunded) as total_qty_booked')) - ->where('bookings.product_id', $data['product_id']) - ->where('bookings.booking_product_event_ticket_id', $data['additional']['booking']['ticket_id']) - ->first(); + ->leftJoin('order_items', 'bookings.order_item_id', '=', 'order_items.id') + ->addSelect(DB::raw('SUM(qty_ordered - qty_canceled - qty_refunded) as total_qty_booked')) + ->where('bookings.product_id', $data['product_id']) + ->where('bookings.booking_product_event_ticket_id', $data['additional']['booking']['ticket_id']) + ->first(); return ! is_null($result->total_qty_booked) ? $result->total_qty_booked : 0; } @@ -114,6 +114,7 @@ class EventTicket extends Booking $ticket = $bookingProduct->event_tickets()->find($product['additional']['booking']['ticket_id']); $price = $ticket->price; + if ($this->isInSale($ticket)) { $price = $ticket->special_price; } diff --git a/packages/Webkul/BookingProduct/src/Helpers/RentalSlot.php b/packages/Webkul/BookingProduct/src/Helpers/RentalSlot.php index 4d4b6c1c1..5c7c068a0 100644 --- a/packages/Webkul/BookingProduct/src/Helpers/RentalSlot.php +++ b/packages/Webkul/BookingProduct/src/Helpers/RentalSlot.php @@ -33,16 +33,16 @@ class RentalSlot extends Booking $currentTime = Carbon::now(); $availableFrom = ! $bookingProduct->available_every_week && $bookingProduct->available_from - ? Carbon::createFromTimeString($bookingProduct->available_from) - : Carbon::createFromTimeString($currentTime->format('Y-m-d 00:00:00')); + ? Carbon::createFromTimeString($bookingProduct->available_from) + : Carbon::createFromTimeString($currentTime->format('Y-m-d 00:00:00')); $availableTo = ! $bookingProduct->available_every_week && $bookingProduct->available_from - ? Carbon::createFromTimeString($bookingProduct->available_to) - : Carbon::createFromTimeString('2080-01-01 00:00:00'); + ? Carbon::createFromTimeString($bookingProduct->available_to) + : Carbon::createFromTimeString('2080-01-01 00:00:00'); $timeDurations = $bookingProductSlot->same_slot_all_days - ? $bookingProductSlot->slots - : $bookingProductSlot->slots[$requestedDate->format('w')] ?? []; + ? $bookingProductSlot->slots + : $bookingProductSlot->slots[$requestedDate->format('w')] ?? []; if ( $requestedDate < $availableFrom @@ -139,18 +139,18 @@ class RentalSlot extends Booking } $result = $this->bookingRepository->getModel() - ->leftJoin('order_items', 'bookings.order_item_id', '=', 'order_items.id') - ->addSelect(DB::raw('SUM(qty_ordered - qty_canceled - qty_refunded) as total_qty_booked')) - ->where('bookings.product_id', $data['product_id']) - ->where(function ($query) use($from, $to) { - $query->where(function ($query) use($from) { - $query->where('bookings.from', '<=', $from)->where('bookings.to', '>=', $from); - }) - ->orWhere(function($query) use($to) { - $query->where('bookings.from', '<=', $to)->where('bookings.to', '>=', $to); - }); - }) - ->first(); + ->leftJoin('order_items', 'bookings.order_item_id', '=', 'order_items.id') + ->addSelect(DB::raw('SUM(qty_ordered - qty_canceled - qty_refunded) as total_qty_booked')) + ->where('bookings.product_id', $data['product_id']) + ->where(function ($query) use($from, $to) { + $query->where(function ($query) use($from) { + $query->where('bookings.from', '<=', $from)->where('bookings.to', '>=', $from); + }) + ->orWhere(function($query) use($to) { + $query->where('bookings.from', '<=', $to)->where('bookings.to', '>=', $to); + }); + }) + ->first(); return ! is_null($result->total_qty_booked) ? $result->total_qty_booked : 0; } @@ -187,12 +187,12 @@ class RentalSlot extends Booking $requestedToDate = Carbon::createFromTimeString($cartItem['additional']['booking']['date_to'] . " 23:59:59"); $availableFrom = ! $bookingProduct->available_every_week && $bookingProduct->available_from - ? Carbon::createFromTimeString($bookingProduct->available_from->format('Y-m-d') . ' 00:00:00') - : Carbon::createFromTimeString($currentTime->format('Y-m-d 00:00:00')); + ? Carbon::createFromTimeString($bookingProduct->available_from->format('Y-m-d') . ' 00:00:00') + : Carbon::createFromTimeString($currentTime->format('Y-m-d 00:00:00')); $availableTo = ! $bookingProduct->available_every_week && $bookingProduct->available_from - ? Carbon::createFromTimeString($bookingProduct->available_to->format('Y-m-d') . ' 23:59:59') - : Carbon::createFromTimeString('2080-01-01 00:00:00'); + ? Carbon::createFromTimeString($bookingProduct->available_to->format('Y-m-d') . ' 23:59:59') + : Carbon::createFromTimeString('2080-01-01 00:00:00'); if ( $requestedFromDate < $availableFrom diff --git a/packages/Webkul/BookingProduct/src/Http/Controllers/Admin/BookingController.php b/packages/Webkul/BookingProduct/src/Http/Controllers/Admin/BookingController.php index 1ca3e8614..caba763a8 100644 --- a/packages/Webkul/BookingProduct/src/Http/Controllers/Admin/BookingController.php +++ b/packages/Webkul/BookingProduct/src/Http/Controllers/Admin/BookingController.php @@ -45,12 +45,12 @@ class BookingController extends Controller { if (request('view_type')) { $startDate = request()->get('startDate') - ? Carbon::createFromTimeString(request()->get('startDate') . " 00:00:01") - : Carbon::now()->startOfWeek()->format('Y-m-d H:i:s'); + ? Carbon::createFromTimeString(request()->get('startDate') . " 00:00:01") + : Carbon::now()->startOfWeek()->format('Y-m-d H:i:s'); $endDate = request()->get('endDate') - ? Carbon::createFromTimeString(request()->get('endDate') . " 23:59:59") - : Carbon::now()->endOfWeek()->format('Y-m-d H:i:s'); + ? Carbon::createFromTimeString(request()->get('endDate') . " 23:59:59") + : Carbon::now()->endOfWeek()->format('Y-m-d H:i:s'); $bookings = $this->bookingRepository->getBookings([strtotime($startDate), strtotime($endDate)]) ->map(function ($booking) { diff --git a/packages/Webkul/BookingProduct/src/Repositories/BookingProductRepository.php b/packages/Webkul/BookingProduct/src/Repositories/BookingProductRepository.php index 587b02067..0e881230e 100644 --- a/packages/Webkul/BookingProduct/src/Repositories/BookingProductRepository.php +++ b/packages/Webkul/BookingProduct/src/Repositories/BookingProductRepository.php @@ -2,7 +2,7 @@ namespace Webkul\BookingProduct\Repositories; -use Illuminate\Container\Container as App; +use Illuminate\Container\Container; use Carbon\Carbon; use Webkul\Core\Eloquent\Repository; @@ -21,6 +21,7 @@ class BookingProductRepository extends Repository * @param \Webkul\BookingProduct\Repositories\BookingProductEventTicketRepository $bookingProductEventTicketRepository * @param \Webkul\BookingProduct\Repositories\BookingProductRentalSlotRepository $bookingProductRentalSlotRepository * @param \Webkul\BookingProduct\Repositories\BookingProductTableSlotRepository $bookingProductTableSlotRepository + * @param \Illuminate\Container\Container $container * @return void */ public function __construct( @@ -29,10 +30,10 @@ class BookingProductRepository extends Repository BookingProductEventTicketRepository $bookingProductEventTicketRepository, BookingProductRentalSlotRepository $bookingProductRentalSlotRepository, BookingProductTableSlotRepository $bookingProductTableSlotRepository, - App $app + Container $container ) { - parent::__construct($app); + parent::__construct($container); $this->typeRepositories['default'] = $bookingProductDefaultSlotRepository; diff --git a/packages/Webkul/BookingProduct/src/Repositories/BookingRepository.php b/packages/Webkul/BookingProduct/src/Repositories/BookingRepository.php index 09f3b1f74..7c458b1d7 100644 --- a/packages/Webkul/BookingProduct/src/Repositories/BookingRepository.php +++ b/packages/Webkul/BookingProduct/src/Repositories/BookingRepository.php @@ -2,7 +2,6 @@ namespace Webkul\BookingProduct\Repositories; -use Illuminate\Container\Container as App; use Illuminate\Support\Facades\Event; use Carbon\Carbon; use Webkul\Core\Eloquent\Repository; diff --git a/packages/Webkul/CMS/src/Http/Controllers/Admin/PageController.php b/packages/Webkul/CMS/src/Http/Controllers/Admin/PageController.php index 3796b350f..39dc48400 100644 --- a/packages/Webkul/CMS/src/Http/Controllers/Admin/PageController.php +++ b/packages/Webkul/CMS/src/Http/Controllers/Admin/PageController.php @@ -2,6 +2,7 @@ namespace Webkul\CMS\Http\Controllers\Admin; +use Illuminate\Support\Facades\Event; use Webkul\Admin\DataGrids\CMSPageDataGrid; use Webkul\CMS\Http\Controllers\Controller; use Webkul\CMS\Repositories\CmsRepository; @@ -64,8 +65,12 @@ class PageController extends Controller 'html_content' => 'required', ]); + Event::dispatch('cms.pages.create.before'); + $page = $this->cmsRepository->create(request()->all()); + Event::dispatch('cms.pages.create.after', $page); + session()->flash('success', trans('admin::app.response.create-success', ['name' => 'page'])); return redirect()->route($this->_config['redirect']); @@ -105,7 +110,11 @@ class PageController extends Controller 'channels' => 'required', ]); - $this->cmsRepository->update(request()->all(), $id); + Event::dispatch('cms.pages.update.before', $id); + + $page = $this->cmsRepository->update(request()->all(), $id); + + Event::dispatch('cms.pages.update.after', $page); session()->flash('success', trans('admin::app.response.update-success', ['name' => 'Page'])); @@ -120,11 +129,15 @@ class PageController extends Controller */ public function delete($id) { - $page = $this->cmsRepository->findOrFail($id); + try { + Event::dispatch('cms.pages.delete.before', $id); + + $this->cmsRepository->delete($id); + + Event::dispatch('cms.pages.delete.after', $id); - if ($page->delete()) { return response()->json(['message' => trans('admin::app.cms.pages.delete-success')]); - } + } catch (\Exception $e) {} return response()->json(['message' => trans('admin::app.cms.pages.delete-failure')], 500); } @@ -136,32 +149,20 @@ class PageController extends Controller */ public function massDelete() { - $data = request()->all(); + if (request()->isMethod('post')) { + $indexes = explode(',', request()->input('indexes')); - if ($data['indexes']) { - $pageIDs = explode(',', $data['indexes']); + foreach ($indexes as $index) { + Event::dispatch('cms.pages.delete.before', $index); - $count = 0; + $this->cmsRepository->delete($index); - foreach ($pageIDs as $pageId) { - $page = $this->cmsRepository->find($pageId); - - if ($page) { - $page->delete(); - - $count++; - } + Event::dispatch('cms.pages.delete.after', $index); } - if (count($pageIDs) == $count) { - session()->flash('success', trans('admin::app.datagrid.mass-ops.delete-success', [ - 'resource' => 'CMS Pages', - ])); - } else { - session()->flash('success', trans('admin::app.datagrid.mass-ops.partial-action', [ - 'resource' => 'CMS Pages', - ])); - } + session()->flash('success', trans('admin::app.datagrid.mass-ops.delete-success', [ + 'resource' => 'CMS Pages', + ])); } else { session()->flash('warning', trans('admin::app.datagrid.mass-ops.no-resource')); } diff --git a/packages/Webkul/CMS/src/Repositories/CmsRepository.php b/packages/Webkul/CMS/src/Repositories/CmsRepository.php index 6ebd9c0c2..5911a4eb0 100644 --- a/packages/Webkul/CMS/src/Repositories/CmsRepository.php +++ b/packages/Webkul/CMS/src/Repositories/CmsRepository.php @@ -2,7 +2,6 @@ namespace Webkul\CMS\Repositories; -use Illuminate\Support\Facades\Event; use Illuminate\Database\Eloquent\ModelNotFoundException; use Webkul\Core\Eloquent\Repository; use Webkul\CMS\Models\CmsPageTranslationProxy; @@ -25,8 +24,6 @@ class CmsRepository extends Repository */ public function create(array $data) { - Event::dispatch('cms.pages.create.before'); - $model = $this->getModel(); foreach (core()->getAllLocales() as $locale) { @@ -43,8 +40,6 @@ class CmsRepository extends Repository $page->channels()->sync($data['channels']); - Event::dispatch('cms.pages.create.after', $page); - return $page; } @@ -58,8 +53,6 @@ class CmsRepository extends Repository { $page = $this->find($id); - Event::dispatch('cms.pages.update.before', $id); - $locale = isset($data['locale']) ? $data['locale'] : app()->getLocale(); $data[$locale]['html_content'] = str_replace('=>', '=>', $data[$locale]['html_content']); @@ -68,8 +61,6 @@ class CmsRepository extends Repository $page->channels()->sync($data['channels']); - Event::dispatch('cms.pages.update.after', $id); - return $page; } @@ -88,7 +79,7 @@ class CmsRepository extends Repository ->select(\DB::raw(1)) ->exists(); - return $exists ? false : true; + return ! $exists; } /** diff --git a/packages/Webkul/CartRule/src/Http/Controllers/CartRuleController.php b/packages/Webkul/CartRule/src/Http/Controllers/CartRuleController.php index b306ea832..fd449d1f0 100644 --- a/packages/Webkul/CartRule/src/Http/Controllers/CartRuleController.php +++ b/packages/Webkul/CartRule/src/Http/Controllers/CartRuleController.php @@ -3,8 +3,9 @@ namespace Webkul\CartRule\Http\Controllers; use Exception; -use Illuminate\Http\Request; +use Illuminate\Support\Facades\Event; use Illuminate\Validation\ValidationException; +use Illuminate\Http\Request; use Illuminate\View\View; use Webkul\Admin\DataGrids\CartRuleDataGrid; use Webkul\CartRule\Http\Requests\CartRuleRequest; @@ -99,7 +100,11 @@ class CartRuleController extends Controller public function store(CartRuleRequest $cartRuleRequest) { try { - $this->cartRuleRepository->create($cartRuleRequest->all()); + Event::dispatch('promotions.cart_rule.create.before'); + + $cartRule = $this->cartRuleRepository->create($cartRuleRequest->all()); + + Event::dispatch('promotions.cart_rule.create.after', $cartRule); session()->flash('success', trans('admin::app.response.create-success', ['name' => 'Cart Rule'])); @@ -150,8 +155,12 @@ class CartRuleController extends Controller } } + Event::dispatch('promotions.cart_rule.update.before', $id); + $cartRule = $this->cartRuleRepository->update($cartRuleRequest->all(), $id); + Event::dispatch('promotions.cart_rule.update.after', $cartRule); + session()->flash('success', trans('admin::app.response.update-success', ['name' => 'Cart Rule'])); return redirect()->route($this->_config['redirect']); @@ -175,8 +184,12 @@ class CartRuleController extends Controller $this->cartRuleRepository->findOrFail($id); try { + Event::dispatch('promotions.cart_rule.delete.before', $id); + $this->cartRuleRepository->delete($id); + Event::dispatch('promotions.cart_rule.delete.after', $id); + return response()->json(['message' => trans('admin::app.response.delete-success', ['name' => 'Cart Rule'])]); } catch (Exception $e) {} diff --git a/packages/Webkul/CartRule/src/Repositories/CartRuleRepository.php b/packages/Webkul/CartRule/src/Repositories/CartRuleRepository.php index a17ee2208..c6e84f29a 100755 --- a/packages/Webkul/CartRule/src/Repositories/CartRuleRepository.php +++ b/packages/Webkul/CartRule/src/Repositories/CartRuleRepository.php @@ -2,8 +2,7 @@ namespace Webkul\CartRule\Repositories; -use Illuminate\Container\Container as App; -use Illuminate\Support\Facades\Event; +use Illuminate\Container\Container; use Webkul\Attribute\Repositories\AttributeFamilyRepository; use Webkul\Attribute\Repositories\AttributeRepository; use Webkul\Category\Repositories\CategoryRepository; @@ -24,7 +23,7 @@ class CartRuleRepository extends Repository * @param \Webkul\Tax\Repositories\TaxCategoryRepository $taxCategoryRepository * @param \Webkul\Core\Repositories\CountryRepository $countryRepository * @param \Webkul\Core\Repositories\CountryStateRepository $countryStateRepository - * @param \Illuminate\Container\Container $app + * @param \Illuminate\Container\Container $container * @return void */ public function __construct( @@ -35,10 +34,10 @@ class CartRuleRepository extends Repository protected TaxCategoryRepository $taxCategoryRepository, protected CountryRepository $countryRepository, protected CountryStateRepository $countryStateRepository, - App $app + Container $container ) { - parent::__construct($app); + parent::__construct($container); } /** @@ -57,8 +56,6 @@ class CartRuleRepository extends Repository */ public function create(array $data) { - Event::dispatch('promotions.cart_rule.create.before'); - $data['starts_from'] = isset($data['starts_from']) && $data['starts_from'] ? $data['starts_from'] : null; $data['ends_till'] = isset($data['ends_till']) && $data['ends_till'] ? $data['ends_till'] : null; @@ -85,8 +82,6 @@ class CartRuleRepository extends Repository ]); } - Event::dispatch('promotions.cart_rule.create.after', $cartRule); - return $cartRule; } @@ -98,7 +93,6 @@ class CartRuleRepository extends Repository */ public function update(array $data, $id, $attribute = 'id') { - Event::dispatch('promotions.cart_rule.update.before', $id); $data = array_merge($data, [ 'starts_from' => $data['starts_from'] ?: null, @@ -141,7 +135,7 @@ class CartRuleRepository extends Repository } } else { $this->cartRuleCouponRepository->deleteWhere([ - 'is_primary' => 1, + 'is_primary' => 1, 'cart_rule_id' => $cartRule->id, ]); @@ -155,26 +149,9 @@ class CartRuleRepository extends Repository $cartRuleCoupon = $this->cartRuleCouponRepository->deleteWhere(['is_primary' => 1, 'cart_rule_id' => $cartRule->id]); } - Event::dispatch('promotions.cart_rule.update.after', $cartRule); - return $cartRule; } - /** - * Delete. - * - * @param $id - * @return int - */ - public function delete($id) - { - Event::dispatch('promotions.cart_rule.delete.before', $id); - - parent::delete($id); - - Event::dispatch('promotions.cart_rule.delete.after', $id); - } - /** * Returns attributes for cart rule conditions. * diff --git a/packages/Webkul/CatalogRule/src/Http/Controllers/CatalogRuleController.php b/packages/Webkul/CatalogRule/src/Http/Controllers/CatalogRuleController.php index 268a06e72..f21629967 100644 --- a/packages/Webkul/CatalogRule/src/Http/Controllers/CatalogRuleController.php +++ b/packages/Webkul/CatalogRule/src/Http/Controllers/CatalogRuleController.php @@ -3,6 +3,7 @@ namespace Webkul\CatalogRule\Http\Controllers; use Illuminate\Http\Request; +use Illuminate\Support\Facades\Event; use Webkul\Admin\DataGrids\CatalogRuleDataGrid; use Webkul\CatalogRule\Helpers\CatalogRuleIndex; use Webkul\CatalogRule\Http\Requests\CatalogRuleRequest; @@ -64,7 +65,11 @@ class CatalogRuleController extends Controller */ public function store(CatalogRuleRequest $catalogRuleRequest) { - $this->catalogRuleRepository->create($catalogRuleRequest->all()); + Event::dispatch('promotions.catalog_rule.create.before'); + + $catalogRule = $this->catalogRuleRepository->create($catalogRuleRequest->all()); + + Event::dispatch('promotions.catalog_rule.create.after', $catalogRule); $this->catalogRuleIndexHelper->reindexComplete(); @@ -97,7 +102,11 @@ class CatalogRuleController extends Controller { $this->catalogRuleRepository->findOrFail($id); - $this->catalogRuleRepository->update($catalogRuleRequest->all(), $id); + Event::dispatch('promotions.catalog_rule.update.before', $id); + + $catalogRule = $this->catalogRuleRepository->update($catalogRuleRequest->all(), $id); + + Event::dispatch('promotions.catalog_rule.update.after', $catalogRule); $this->catalogRuleIndexHelper->reindexComplete(); @@ -117,8 +126,12 @@ class CatalogRuleController extends Controller $this->catalogRuleRepository->findOrFail($id); try { + Event::dispatch('promotions.catalog_rule.delete.before', $id); + $this->catalogRuleRepository->delete($id); + Event::dispatch('promotions.catalog_rule.delete.after', $id); + return response()->json(['message' => trans('admin::app.response.delete-success', ['name' => 'Catalog Rule'])]); } catch (\Exception $e) {} diff --git a/packages/Webkul/CatalogRule/src/Repositories/CatalogRuleRepository.php b/packages/Webkul/CatalogRule/src/Repositories/CatalogRuleRepository.php index 585461526..5456bbe50 100644 --- a/packages/Webkul/CatalogRule/src/Repositories/CatalogRuleRepository.php +++ b/packages/Webkul/CatalogRule/src/Repositories/CatalogRuleRepository.php @@ -2,8 +2,7 @@ namespace Webkul\CatalogRule\Repositories; -use Illuminate\Container\Container as App; -use Illuminate\Support\Facades\Event; +use Illuminate\Container\Container; use Webkul\Attribute\Repositories\AttributeFamilyRepository; use Webkul\Attribute\Repositories\AttributeRepository; use Webkul\Category\Repositories\CategoryRepository; @@ -19,7 +18,7 @@ class CatalogRuleRepository extends Repository * @param \Webkul\Attribute\Repositories\AttributeRepository $attributeRepository * @param \Webkul\Category\Repositories\CategoryRepository $categoryRepository * @param \Webkul\Tax\Repositories\TaxCategoryRepository $taxCategoryRepository - * @param \Illuminate\Container\Container $app + * @param \Illuminate\Container\Container $container * @return void */ public function __construct( @@ -27,10 +26,10 @@ class CatalogRuleRepository extends Repository protected AttributeRepository $attributeRepository, protected CategoryRepository $categoryRepository, protected TaxCategoryRepository $taxCategoryRepository, - App $app + Container $container ) { - parent::__construct($app); + parent::__construct($container); } /** @@ -51,8 +50,6 @@ class CatalogRuleRepository extends Repository */ public function create(array $data) { - Event::dispatch('promotions.catalog_rule.create.before'); - $data = array_merge($data, [ 'starts_from' => $data['starts_from'] ?: null, 'ends_till' => $data['ends_till'] ?: null, @@ -65,8 +62,6 @@ class CatalogRuleRepository extends Repository $catalogRule->customer_groups()->sync($data['customer_groups']); - Event::dispatch('promotions.catalog_rule.create.after', $catalogRule); - return $catalogRule; } @@ -80,7 +75,6 @@ class CatalogRuleRepository extends Repository */ public function update(array $data, $id, $attribute = 'id') { - Event::dispatch('promotions.catalog_rule.update.before', $id); $data = array_merge($data, [ 'starts_from' => $data['starts_from'] ?: null, @@ -97,26 +91,9 @@ class CatalogRuleRepository extends Repository $catalogRule->customer_groups()->sync($data['customer_groups']); - Event::dispatch('promotions.catalog_rule.update.after', $catalogRule); - return $catalogRule; } - /** - * Delete. - * - * @param $id - * @return int - */ - public function delete($id) - { - Event::dispatch('promotions.catalog_rule.delete.before', $id); - - parent::delete($id); - - Event::dispatch('promotions.catalog_rule.delete.after', $id); - } - /** * Returns attributes for catalog rule conditions. * diff --git a/packages/Webkul/Category/src/Http/Controllers/CategoryController.php b/packages/Webkul/Category/src/Http/Controllers/CategoryController.php index bd1692ff7..0eb98bee3 100755 --- a/packages/Webkul/Category/src/Http/Controllers/CategoryController.php +++ b/packages/Webkul/Category/src/Http/Controllers/CategoryController.php @@ -2,6 +2,7 @@ namespace Webkul\Category\Http\Controllers; +use Illuminate\Support\Facades\Event; use Webkul\Admin\DataGrids\CategoryDataGrid; use Webkul\Admin\DataGrids\CategoryProductDataGrid; use Webkul\Attribute\Repositories\AttributeRepository; @@ -69,7 +70,11 @@ class CategoryController extends Controller */ public function store(CategoryRequest $categoryRequest) { - $this->categoryRepository->create($categoryRequest->all()); + Event::dispatch('catalog.category.create.before'); + + $category = $this->categoryRepository->create($categoryRequest->all()); + + Event::dispatch('catalog.category.create.after', $category); session()->flash('success', trans('admin::app.response.create-success', ['name' => 'Category'])); @@ -115,7 +120,11 @@ class CategoryController extends Controller */ public function update(CategoryRequest $categoryRequest, $id) { - $this->categoryRepository->update($categoryRequest->all(), $id); + Event::dispatch('catalog.category.update.before', $id); + + $category = $this->categoryRepository->update($categoryRequest->all(), $id); + + Event::dispatch('catalog.category.update.after', $category); session()->flash('success', trans('admin::app.response.update-success', ['name' => 'Category'])); @@ -137,8 +146,12 @@ class CategoryController extends Controller } try { + Event::dispatch('catalog.category.delete.before', $id); + $this->categoryRepository->delete($id); + Event::dispatch('catalog.category.delete.after', $id); + return response()->json(['message' => trans('admin::app.response.delete-success', ['name' => 'Category'])]); } catch (\Exception $e) {} @@ -168,7 +181,11 @@ class CategoryController extends Controller try { $suppressFlash = true; + Event::dispatch('catalog.category.delete.before', $categoryId); + $this->categoryRepository->delete($categoryId); + + Event::dispatch('catalog.category.delete.after', $categoryId); } catch (\Exception $e) { session()->flash('error', trans('admin::app.response.delete-failed', ['name' => 'Category'])); } diff --git a/packages/Webkul/Category/src/Repositories/CategoryRepository.php b/packages/Webkul/Category/src/Repositories/CategoryRepository.php index 2d79a6bdd..d855d819d 100755 --- a/packages/Webkul/Category/src/Repositories/CategoryRepository.php +++ b/packages/Webkul/Category/src/Repositories/CategoryRepository.php @@ -4,7 +4,6 @@ namespace Webkul\Category\Repositories; use Illuminate\Database\Eloquent\ModelNotFoundException; use Illuminate\Support\Facades\DB; -use Illuminate\Support\Facades\Event; use Illuminate\Support\Facades\Storage; use Webkul\Category\Models\CategoryTranslationProxy; use Webkul\Core\Eloquent\Repository; @@ -29,8 +28,6 @@ class CategoryRepository extends Repository */ public function create(array $data) { - Event::dispatch('catalog.category.create.before'); - if ( isset($data['locale']) && $data['locale'] == 'all' @@ -56,8 +53,6 @@ class CategoryRepository extends Repository $category->filterableAttributes()->sync($data['attributes']); } - Event::dispatch('catalog.category.create.after', $category); - return $category; } @@ -73,8 +68,6 @@ class CategoryRepository extends Repository { $category = $this->find($id); - Event::dispatch('catalog.category.update.before', $id); - $data = $this->setSameAttributeValueToAllLocale($data, 'slug'); $category->update($data); @@ -85,26 +78,9 @@ class CategoryRepository extends Repository $category->filterableAttributes()->sync($data['attributes']); } - Event::dispatch('catalog.category.update.after', $id); - return $category; } - /** - * Delete category. - * - * @param int $id - * @return void - */ - public function delete($id) - { - Event::dispatch('catalog.category.delete.before', $id); - - parent::delete($id); - - Event::dispatch('catalog.category.delete.after', $id); - } - /** * Specify category tree. * @@ -175,7 +151,7 @@ class CategoryRepository extends Repository ->select(DB::raw(1)) ->exists(); - return $exists ? false : true; + return ! $exists; } /** diff --git a/packages/Webkul/Checkout/src/Cart.php b/packages/Webkul/Checkout/src/Cart.php index 86bf93049..6129920e6 100755 --- a/packages/Webkul/Checkout/src/Cart.php +++ b/packages/Webkul/Checkout/src/Cart.php @@ -25,7 +25,6 @@ class Cart { use CartCoupons, CartTools, CartValidators; - /** * @var \Webkul\Checkout\Contracts\Cart */ @@ -34,12 +33,12 @@ class Cart /** * Create a new class instance. * - * @param \Webkul\Checkout\Repositories\CartRepository $cartRepository - * @param \Webkul\Checkout\Repositories\CartItemRepository $cartItemRepository - * @param \Webkul\Checkout\Repositories\CartAddressRepository $cartAddressRepository - * @param \Webkul\Product\Repositories\ProductRepository $productRepository - * @param \Webkul\Tax\Repositories\TaxCategoryRepository $taxCategoryRepository - * @param \Webkul\Customer\Repositories\WishlistRepository $wishlistRepository + * @param \Webkul\Checkout\Repositories\CartRepository $cartRepository + * @param \Webkul\Checkout\Repositories\CartItemRepository $cartItemRepository + * @param \Webkul\Checkout\Repositories\CartAddressRepository $cartAddressRepository + * @param \Webkul\Product\Repositories\ProductRepository $productRepository + * @param \Webkul\Tax\Repositories\TaxCategoryRepository $taxCategoryRepository + * @param \Webkul\Customer\Repositories\WishlistRepository $wishlistRepository * @param \Webkul\Customer\Repositories\CustomerAddressRepository $customerAddressRepository * @return void */ @@ -127,11 +126,11 @@ class Cart foreach ($items as $item) { if ($item->product->getTypeInstance()->compareOptions($item->additional, $data['additional'])) { - if (isset($data['additional']['parent_id'])) { - if ($item->parent->product->getTypeInstance()->compareOptions($item->parent->additional, $parentData ?: request()->all())) { - return $item; - } - } else { + if (! isset($data['additional']['parent_id'])) { + return $item; + } + + if ($item->parent->product->getTypeInstance()->compareOptions($item->parent->additional, $parentData ?: request()->all())) { return $item; } } diff --git a/packages/Webkul/Checkout/src/Traits/CartValidators.php b/packages/Webkul/Checkout/src/Traits/CartValidators.php index 4c9c2fc8c..968799e73 100644 --- a/packages/Webkul/Checkout/src/Traits/CartValidators.php +++ b/packages/Webkul/Checkout/src/Traits/CartValidators.php @@ -39,7 +39,8 @@ trait CartValidators { if ( ! $this->getCart() - || ! $this->isItemsHaveSufficientQuantity()) { + || ! $this->isItemsHaveSufficientQuantity() + ) { return true; } diff --git a/packages/Webkul/Core/src/Eloquent/Repository.php b/packages/Webkul/Core/src/Eloquent/Repository.php index 0249dd76f..8ac78964d 100755 --- a/packages/Webkul/Core/src/Eloquent/Repository.php +++ b/packages/Webkul/Core/src/Eloquent/Repository.php @@ -5,7 +5,6 @@ namespace Webkul\Core\Eloquent; use Prettus\Repository\Contracts\CacheableInterface; use Prettus\Repository\Eloquent\BaseRepository; use Illuminate\Database\Eloquent\Model; -use Illuminate\Container\Container as App; use Prettus\Repository\Traits\CacheableRepository; diff --git a/packages/Webkul/Core/src/Exceptions/Handler.php b/packages/Webkul/Core/src/Exceptions/Handler.php index cd073c337..b030a4aa0 100755 --- a/packages/Webkul/Core/src/Exceptions/Handler.php +++ b/packages/Webkul/Core/src/Exceptions/Handler.php @@ -62,7 +62,7 @@ class Handler extends AppExceptionHandler */ private function isAdminUri() { - return strpos(\Illuminate\Support\Facades\Request::path(), 'admin') !== false ? true : false; + return strpos(\Illuminate\Support\Facades\Request::path(), 'admin') !== false; } /** diff --git a/packages/Webkul/Core/src/Repositories/CoreConfigRepository.php b/packages/Webkul/Core/src/Repositories/CoreConfigRepository.php index ee845d5a8..642a50552 100755 --- a/packages/Webkul/Core/src/Repositories/CoreConfigRepository.php +++ b/packages/Webkul/Core/src/Repositories/CoreConfigRepository.php @@ -50,9 +50,9 @@ class CoreConfigRepository extends Repository foreach ($recurssiveData as $fieldName => $value) { $field = core()->getConfigField($fieldName); - $channelBased = isset($field['channel_based']) && $field['channel_based'] ? true : false; + $channelBased = isset($field['channel_based']) && $field['channel_based']; - $localeBased = isset($field['locale_based']) && $field['locale_based'] ? true : false; + $localeBased = isset($field['locale_based']) && $field['locale_based']; if ( getType($value) == 'array' diff --git a/packages/Webkul/Core/src/Repositories/SliderRepository.php b/packages/Webkul/Core/src/Repositories/SliderRepository.php index d14efcf8b..290081427 100755 --- a/packages/Webkul/Core/src/Repositories/SliderRepository.php +++ b/packages/Webkul/Core/src/Repositories/SliderRepository.php @@ -2,13 +2,13 @@ namespace Webkul\Core\Repositories; -use Carbon\Carbon; -use Illuminate\Support\Arr; -use Webkul\Core\Eloquent\Repository; +use Illuminate\Container\Container; use Illuminate\Support\Facades\Event; use Illuminate\Support\Facades\Storage; -use Illuminate\Container\Container as App; +use Illuminate\Support\Arr; use Prettus\Repository\Traits\CacheableRepository; +use Carbon\Carbon; +use Webkul\Core\Eloquent\Repository; class SliderRepository extends Repository { @@ -18,15 +18,15 @@ class SliderRepository extends Repository * Create a new repository instance. * * @param \Webkul\Core\Repositories\ChannelRepository $channelRepository - * @param \Illuminate\Container\Container $channelRepository + * @param \Illuminate\Container\Container $container * @return void */ public function __construct( protected ChannelRepository $channelRepository, - App $app + Container $container ) { - parent::__construct($app); + parent::__construct($container); } /** diff --git a/packages/Webkul/Customer/src/Http/Controllers/AddressController.php b/packages/Webkul/Customer/src/Http/Controllers/AddressController.php index b14677b54..e095c6541 100755 --- a/packages/Webkul/Customer/src/Http/Controllers/AddressController.php +++ b/packages/Webkul/Customer/src/Http/Controllers/AddressController.php @@ -2,6 +2,7 @@ namespace Webkul\Customer\Http\Controllers; +use Illuminate\Support\Facades\Event; use Webkul\Customer\Http\Requests\CustomerAddressRequest; use Webkul\Customer\Repositories\CustomerAddressRepository; @@ -65,24 +66,19 @@ class AddressController extends Controller { $customer = auth()->guard('customer')->user(); - $data = $request->all(); + Event::dispatch('customer.addresses.create.before'); - $data['customer_id'] = $customer->id; - $data['address1'] = implode(PHP_EOL, array_filter(request()->input('address1'))); + $customerAddress = $this->customerAddressRepository->create(array_merge($request->all(), [ + 'customer_id' => $customer->id, + 'address1' => implode(PHP_EOL, array_filter(request()->input('address1'))), + 'default_address' => ! $customer->addresses->count(), + ])); - if ($customer->addresses->count() == 0) { - $data['default_address'] = 1; - } + Event::dispatch('customer.addresses.create.after', $customerAddress); - if ($this->customerAddressRepository->create($data)) { - session()->flash('success', trans('shop::app.customer.account.address.create.success')); + session()->flash('success', trans('shop::app.customer.account.address.create.success')); - return redirect()->route($this->_config['redirect']); - } - - session()->flash('error', trans('shop::app.customer.account.address.create.error')); - - return redirect()->back(); + return redirect()->route($this->_config['redirect']); } /** @@ -118,20 +114,22 @@ class AddressController extends Controller { $customer = auth()->guard('customer')->user(); - $data = $request->all(); - - $data['address1'] = implode(PHP_EOL, array_filter(request()->input('address1'))); - - $addresses = $customer->addresses; - - foreach ($addresses as $address) { - if ($id == $address->id) { - session()->flash('success', trans('shop::app.customer.account.address.edit.success')); - - $this->customerAddressRepository->update($data, $id); - - return redirect()->route('customer.address.index'); + foreach ($customer->addresses as $address) { + if ($id != $address->id) { + continue; } + + Event::dispatch('customer.addresses.update.before', $id); + + $customerAddress = $this->customerAddressRepository->update(array_merge($request->all(), [ + 'address1' => implode(PHP_EOL, array_filter(request()->input('address1'))), + ]), $id); + + Event::dispatch('customer.addresses.update.after', $customerAddress); + + session()->flash('success', trans('shop::app.customer.account.address.edit.success')); + + return redirect()->route('customer.address.index'); } session()->flash('warning', trans('shop::app.security-warning')); @@ -181,8 +179,12 @@ class AddressController extends Controller abort(404); } + Event::dispatch('customer.addresses.delete.before', $id); + $this->customerAddressRepository->delete($id); + Event::dispatch('customer.addresses.delete.after', $id); + session()->flash('success', trans('shop::app.customer.account.address.delete.success')); return redirect()->route('customer.address.index'); diff --git a/packages/Webkul/Customer/src/Http/Controllers/CustomerController.php b/packages/Webkul/Customer/src/Http/Controllers/CustomerController.php index b51dc140c..156d919f1 100755 --- a/packages/Webkul/Customer/src/Http/Controllers/CustomerController.php +++ b/packages/Webkul/Customer/src/Http/Controllers/CustomerController.php @@ -86,7 +86,7 @@ class CustomerController extends Controller $data['image']['image_0'] = ''; } - $data['subscribed_to_news_letter'] = isset($data['subscribed_to_news_letter']) ? 1 : 0; + $data['subscribed_to_news_letter'] = isset($data['subscribed_to_news_letter']); if (isset($data['oldpassword'])) { if ( diff --git a/packages/Webkul/Customer/src/Http/Controllers/RegistrationController.php b/packages/Webkul/Customer/src/Http/Controllers/RegistrationController.php index 0b4d72eed..c62115fae 100755 --- a/packages/Webkul/Customer/src/Http/Controllers/RegistrationController.php +++ b/packages/Webkul/Customer/src/Http/Controllers/RegistrationController.php @@ -63,10 +63,10 @@ class RegistrationController extends Controller $data = array_merge(request()->input(), [ 'password' => bcrypt(request()->input('password')), 'api_token' => Str::random(80), - 'is_verified' => core()->getConfigData('customer.settings.email.verification') ? 0 : 1, + 'is_verified' => (bool) core()->getConfigData('customer.settings.email.verification'), 'customer_group_id' => $this->customerGroupRepository->findOneWhere(['code' => 'general'])->id, 'token' => md5(uniqid(rand(), true)), - 'subscribed_to_news_letter' => isset(request()->input()['is_subscribed']) ? 1 : 0, + 'subscribed_to_news_letter' => isset(request()->input()['is_subscribed']), ]); Event::dispatch('customer.registration.before'); diff --git a/packages/Webkul/Customer/src/Http/Controllers/WishlistController.php b/packages/Webkul/Customer/src/Http/Controllers/WishlistController.php index 00ee53e90..bba251c4e 100755 --- a/packages/Webkul/Customer/src/Http/Controllers/WishlistController.php +++ b/packages/Webkul/Customer/src/Http/Controllers/WishlistController.php @@ -92,12 +92,6 @@ class WishlistController extends Controller if (! $wishlist) { $wishlist = $this->wishlistRepository->create($data); - if ($wishlist) { - session()->flash('success', trans('customer::app.wishlist.success')); - } else { - session()->flash('error', trans('customer::app.wishlist.failure')); - } - return redirect()->back(); } else { $this->wishlistRepository->findOneWhere([ diff --git a/packages/Webkul/Customer/src/Repositories/CustomerAddressRepository.php b/packages/Webkul/Customer/src/Repositories/CustomerAddressRepository.php index 177334847..b715bf475 100755 --- a/packages/Webkul/Customer/src/Repositories/CustomerAddressRepository.php +++ b/packages/Webkul/Customer/src/Repositories/CustomerAddressRepository.php @@ -3,7 +3,6 @@ namespace Webkul\Customer\Repositories; use Webkul\Core\Eloquent\Repository; -use Illuminate\Support\Facades\Event; class CustomerAddressRepository extends Repository { @@ -23,9 +22,7 @@ class CustomerAddressRepository extends Repository */ public function create(array $data) { - Event::dispatch('customer.addresses.create.before'); - - $data['default_address'] = isset($data['default_address']) ? 1 : 0; + $data['default_address'] = isset($data['default_address']); $default_address = $this ->findWhere(['customer_id' => $data['customer_id'], 'default_address' => 1]) @@ -40,8 +37,6 @@ class CustomerAddressRepository extends Repository $address = $this->model->create($data); - Event::dispatch('customer.addresses.create.after', $address); - return $address; } @@ -54,9 +49,7 @@ class CustomerAddressRepository extends Repository { $address = $this->find($id); - Event::dispatch('customer.addresses.update.before', $id); - - $data['default_address'] = isset($data['default_address']) ? 1 : 0; + $data['default_address'] = isset($data['default_address']); $default_address = $this ->findWhere(['customer_id' => $address->customer_id, 'default_address' => 1]) @@ -75,8 +68,6 @@ class CustomerAddressRepository extends Repository $address->update($data); } - Event::dispatch('customer.addresses.update.after', $id); - return $address; } } \ No newline at end of file diff --git a/packages/Webkul/Customer/src/Repositories/CustomerGroupRepository.php b/packages/Webkul/Customer/src/Repositories/CustomerGroupRepository.php index c96f9871d..63e8db030 100755 --- a/packages/Webkul/Customer/src/Repositories/CustomerGroupRepository.php +++ b/packages/Webkul/Customer/src/Repositories/CustomerGroupRepository.php @@ -2,7 +2,6 @@ namespace Webkul\Customer\Repositories; -use Illuminate\Support\Facades\Event; use Webkul\Core\Eloquent\Repository; class CustomerGroupRepository extends Repository @@ -18,59 +17,6 @@ class CustomerGroupRepository extends Repository return \Webkul\Customer\Contracts\CustomerGroup::class; } - /** - * Create. - * - * @param array $data - * @return \Webkul\Customer\Contracts\CustomerGroup - */ - public function create(array $data) - { - Event::dispatch('customer.customer_group.create.before'); - - $customerGroup = $this->model->create($data); - - Event::dispatch('customer.customer_group.create.after', $customerGroup); - - return $customerGroup; - } - - /** - * Update. - * - * @param array $data - * @param int $id - * @param string $id - * @return \Webkul\Customer\Contracts\CustomerGroup - */ - public function update(array $data, $id, $attribute = 'id') - { - $customer = $this->findOrFail($id); - - Event::dispatch('customer.customer_group.update.before', $id); - - $customerGroup = $customer->update($data); - - Event::dispatch('customer.customer_group.update.after', $customerGroup); - - return $customerGroup; - } - - /** - * Delete. - * - * @param $id - * @return int - */ - public function delete($id) - { - Event::dispatch('customer.customer_group.delete.before', $id); - - parent::delete($id); - - Event::dispatch('customer.customer_group.delete.after', $id); - } - /** * Returns guest group. * diff --git a/packages/Webkul/Customer/src/Repositories/CustomerRepository.php b/packages/Webkul/Customer/src/Repositories/CustomerRepository.php index 14e422eae..a33b2ac8e 100755 --- a/packages/Webkul/Customer/src/Repositories/CustomerRepository.php +++ b/packages/Webkul/Customer/src/Repositories/CustomerRepository.php @@ -2,7 +2,6 @@ namespace Webkul\Customer\Repositories; -use Illuminate\Support\Facades\Event; use Illuminate\Support\Facades\Storage; use Webkul\Core\Eloquent\Repository; use Webkul\Sales\Models\Order; @@ -19,40 +18,6 @@ class CustomerRepository extends Repository return \Webkul\Customer\Contracts\Customer::class; } - /** - * Create customer. - * - * @param array $attributes - * @return mixed - */ - public function create($attributes) - { - Event::dispatch('customer.registration.before'); - - $customer = parent::create($attributes); - - Event::dispatch('customer.registration.after', $customer); - - return $customer; - } - - /** - * Update customer. - * - * @param array $attributes - * @return mixed - */ - public function update(array $attributes, $id) - { - Event::dispatch('customer.update.before'); - - $customer = parent::update($attributes, $id); - - Event::dispatch('customer.update.after', $customer); - - return $customer; - } - /** * Check if customer has order pending or processing. * diff --git a/packages/Webkul/Inventory/src/Http/Controllers/InventorySourceController.php b/packages/Webkul/Inventory/src/Http/Controllers/InventorySourceController.php index d0e495150..fdf21edb9 100755 --- a/packages/Webkul/Inventory/src/Http/Controllers/InventorySourceController.php +++ b/packages/Webkul/Inventory/src/Http/Controllers/InventorySourceController.php @@ -2,6 +2,7 @@ namespace Webkul\Inventory\Http\Controllers; +use Illuminate\Support\Facades\Event; use Webkul\Admin\DataGrids\InventorySourcesDataGrid; use Webkul\Inventory\Http\Requests\InventorySourceRequest; use Webkul\Inventory\Repositories\InventorySourceRepository; @@ -57,11 +58,13 @@ class InventorySourceController extends Controller */ public function store(InventorySourceRequest $inventorySourceRequest) { - $data = $inventorySourceRequest->all(); + Event::dispatch('inventory.inventory_source.create.before'); - $data['status'] = ! isset($data['status']) ? 0 : 1; + $inventorySource = $this->inventorySourceRepository->create(array_merge($inventorySourceRequest->all() ,[ + 'status' => request()->has('status'), + ])); - $this->inventorySourceRepository->create($data); + Event::dispatch('inventory.inventory_source.create.after', $inventorySource); session()->flash('success', trans('admin::app.settings.inventory_sources.create-success')); @@ -89,11 +92,13 @@ class InventorySourceController extends Controller */ public function update(InventorySourceRequest $inventorySourceRequest, $id) { - $data = $inventorySourceRequest->all(); + Event::dispatch('inventory.inventory_source.update.before', $id); - $data['status'] = ! isset($data['status']) ? 0 : 1; + $inventorySource = $this->inventorySourceRepository->update(array_merge($inventorySourceRequest->all() ,[ + 'status' => request()->has('status'), + ]), $id); - $this->inventorySourceRepository->update($data, $id); + Event::dispatch('inventory.inventory_source.update.after', $inventorySource); session()->flash('success', trans('admin::app.settings.inventory_sources.update-success')); @@ -115,8 +120,12 @@ class InventorySourceController extends Controller } try { + Event::dispatch('inventory.inventory_source.delete.before', $id); + $this->inventorySourceRepository->delete($id); + Event::dispatch('inventory.inventory_source.delete.after', $id); + return response()->json(['message' => trans('admin::app.settings.inventory_sources.delete-success')]); } catch (\Exception $e) { report($e); diff --git a/packages/Webkul/Inventory/src/Repositories/InventorySourceRepository.php b/packages/Webkul/Inventory/src/Repositories/InventorySourceRepository.php index 1939c13bc..e94f31103 100755 --- a/packages/Webkul/Inventory/src/Repositories/InventorySourceRepository.php +++ b/packages/Webkul/Inventory/src/Repositories/InventorySourceRepository.php @@ -2,7 +2,6 @@ namespace Webkul\Inventory\Repositories; -use Illuminate\Support\Facades\Event; use Webkul\Core\Eloquent\Repository; class InventorySourceRepository extends Repository @@ -17,56 +16,6 @@ class InventorySourceRepository extends Repository return \Webkul\Inventory\Contracts\InventorySource::class; } - /** - * Create. - * - * @param array $attributes - * @return mixed - */ - public function create(array $attributes) - { - Event::dispatch('inventory.inventory_source.create.before'); - - $inventorySource = parent::create($attributes); - - Event::dispatch('inventory.inventory_source.create.after', $inventorySource); - - return $inventorySource; - } - - /** - * Update. - * - * @param array $attributes - * @param $id - * @return mixed - */ - public function update(array $attributes, $id) - { - Event::dispatch('inventory.inventory_source.update.before', $id); - - $inventorySource = parent::update($attributes, $id); - - Event::dispatch('inventory.inventory_source.update.after', $inventorySource); - - return $inventorySource; - } - - /** - * Delete. - * - * @param int $id - * @return bool - */ - public function delete($id) - { - Event::dispatch('inventory.inventory_source.delete.before', $id); - - parent::delete($id); - - Event::dispatch('inventory.inventory_source.delete.after', $id); - } - /** * Returns channel inventory source ids. * diff --git a/packages/Webkul/Marketing/src/Http/Controllers/CampaignController.php b/packages/Webkul/Marketing/src/Http/Controllers/CampaignController.php index d9d28b85f..1e43cd063 100644 --- a/packages/Webkul/Marketing/src/Http/Controllers/CampaignController.php +++ b/packages/Webkul/Marketing/src/Http/Controllers/CampaignController.php @@ -2,6 +2,7 @@ namespace Webkul\Marketing\Http\Controllers; +use Illuminate\Support\Facades\Event; use Webkul\Admin\DataGrids\CampaignDataGrid; use Webkul\Marketing\Repositories\CampaignRepository; @@ -64,7 +65,11 @@ class CampaignController extends Controller 'marketing_event_id' => 'required_if:schedule_type,event', ]); - $this->campaignRepository->create(request()->all()); + Event::dispatch('marketing.campaigns.create.before'); + + $campaign = $this->campaignRepository->create(request()->all()); + + Event::dispatch('marketing.campaigns.create.after', $campaign); session()->flash('success', trans('admin::app.marketing.campaigns.create-success')); @@ -100,7 +105,11 @@ class CampaignController extends Controller 'marketing_event_id' => 'required_if:schedule_type,event', ]); - $this->campaignRepository->update(request()->all(), $id); + Event::dispatch('marketing.campaigns.update.before', $id); + + $campaign = $this->campaignRepository->update(request()->all(), $id); + + Event::dispatch('marketing.campaigns.update.after', $campaign); session()->flash('success', trans('admin::app.marketing.campaigns.update-success')); @@ -118,8 +127,12 @@ class CampaignController extends Controller $this->campaignRepository->findOrFail($id); try { + Event::dispatch('marketing.campaigns.delete.before', $id); + $this->campaignRepository->delete($id); + Event::dispatch('marketing.campaigns.delete.after', $id); + return response()->json(['message' => trans('admin::app.marketing.campaigns.delete-success')]); } catch (\Exception $e) {} diff --git a/packages/Webkul/Marketing/src/Http/Controllers/EventController.php b/packages/Webkul/Marketing/src/Http/Controllers/EventController.php index 143336539..fbf531bb5 100644 --- a/packages/Webkul/Marketing/src/Http/Controllers/EventController.php +++ b/packages/Webkul/Marketing/src/Http/Controllers/EventController.php @@ -2,6 +2,7 @@ namespace Webkul\Marketing\Http\Controllers; +use Illuminate\Support\Facades\Event; use Webkul\Admin\DataGrids\EventDataGrid; use Webkul\Marketing\Repositories\EventRepository; @@ -62,7 +63,11 @@ class EventController extends Controller 'date' => 'date|required', ]); - $this->eventRepository->create(request()->all()); + Event::dispatch('marketing.events.create.before'); + + $event = $this->eventRepository->create(request()->all()); + + Event::dispatch('marketing.events.create.after', $event); session()->flash('success', trans('admin::app.marketing.events.create-success')); @@ -102,7 +107,11 @@ class EventController extends Controller 'date' => 'date|required', ]); - $this->eventRepository->update(request()->all(), $id); + Event::dispatch('marketing.events.update.before', $id); + + $event = $this->eventRepository->update(request()->all(), $id); + + Event::dispatch('marketing.events.update.after', $event); session()->flash('success', trans('admin::app.marketing.events.update-success')); @@ -120,8 +129,12 @@ class EventController extends Controller $this->eventRepository->findOrFail($id); try { + Event::dispatch('marketing.events.delete.before', $id); + $this->eventRepository->delete($id); + Event::dispatch('marketing.events.delete.after', $id); + return response()->json(['message' => trans('admin::app.marketing.events.delete-success')]); } catch (\Exception $e) {} diff --git a/packages/Webkul/Marketing/src/Http/Controllers/TemplateController.php b/packages/Webkul/Marketing/src/Http/Controllers/TemplateController.php index 82783e35b..defb3bb6e 100644 --- a/packages/Webkul/Marketing/src/Http/Controllers/TemplateController.php +++ b/packages/Webkul/Marketing/src/Http/Controllers/TemplateController.php @@ -2,6 +2,7 @@ namespace Webkul\Marketing\Http\Controllers; +use Illuminate\Support\Facades\Event; use Webkul\Admin\DataGrids\EmailTemplateDataGrid; use Webkul\Marketing\Repositories\TemplateRepository; @@ -62,7 +63,11 @@ class TemplateController extends Controller 'content' => 'required', ]); - $this->templateRepository->create(request()->all()); + Event::dispatch('marketing.templates.create.before'); + + $template = $this->templateRepository->create(request()->all()); + + Event::dispatch('marketing.templates.create.after', $template); session()->flash('success', trans('admin::app.marketing.templates.create-success')); @@ -96,7 +101,11 @@ class TemplateController extends Controller 'content' => 'required', ]); - $this->templateRepository->update(request()->all(), $id); + Event::dispatch('marketing.templates.update.before', $id); + + $template = $this->templateRepository->update(request()->all(), $id); + + Event::dispatch('marketing.templates.update.after', $template); session()->flash('success', trans('admin::app.marketing.templates.update-success')); @@ -114,8 +123,12 @@ class TemplateController extends Controller $this->templateRepository->findOrFail($id); try { + Event::dispatch('marketing.templates.delete.before', $id); + $this->templateRepository->delete($id); + Event::dispatch('marketing.templates.delete.after', $id); + return response()->json(['message' => trans('admin::app.marketing.templates.delete-success')]); } catch (\Exception $e) {} diff --git a/packages/Webkul/Marketing/src/Repositories/CampaignRepository.php b/packages/Webkul/Marketing/src/Repositories/CampaignRepository.php index bbae70832..b1121b185 100644 --- a/packages/Webkul/Marketing/src/Repositories/CampaignRepository.php +++ b/packages/Webkul/Marketing/src/Repositories/CampaignRepository.php @@ -2,7 +2,6 @@ namespace Webkul\Marketing\Repositories; -use Illuminate\Support\Facades\Event; use Webkul\Core\Eloquent\Repository; class CampaignRepository extends Repository @@ -16,54 +15,4 @@ class CampaignRepository extends Repository { return \Webkul\Marketing\Contracts\Campaign::class; } - - /** - * Create. - * - * @param array $attributes - * @return mixed - */ - public function create(array $attributes) - { - Event::dispatch('marketing.campaigns.create.before'); - - $campaign = parent::create($attributes); - - Event::dispatch('marketing.campaigns.create.after', $campaign); - - return $campaign; - } - - /** - * Update. - * - * @param array $attributes - * @param $id - * @return mixed - */ - public function update(array $attributes, $id) - { - Event::dispatch('marketing.campaigns.update.before', $id); - - $campaign = parent::update($attributes, $id); - - Event::dispatch('marketing.campaigns.update.after', $campaign); - - return $campaign; - } - - /** - * Delete. - * - * @param $id - * @return int - */ - public function delete($id) - { - Event::dispatch('marketing.campaigns.delete.before', $id); - - parent::delete($id); - - Event::dispatch('marketing.campaigns.delete.after', $id); - } } diff --git a/packages/Webkul/Marketing/src/Repositories/EventRepository.php b/packages/Webkul/Marketing/src/Repositories/EventRepository.php index 1bf3e3bb8..449064a32 100644 --- a/packages/Webkul/Marketing/src/Repositories/EventRepository.php +++ b/packages/Webkul/Marketing/src/Repositories/EventRepository.php @@ -2,7 +2,6 @@ namespace Webkul\Marketing\Repositories; -use Illuminate\Support\Facades\Event; use Webkul\Core\Eloquent\Repository; class EventRepository extends Repository @@ -16,54 +15,4 @@ class EventRepository extends Repository { return \Webkul\Marketing\Contracts\Event::class; } - - /** - * Save a new entity in repository - * - * @param array $attributes - * @return mixed - */ - public function create(array $attributes) - { - Event::dispatch('marketing.events.create.before'); - - $event = parent::create($attributes); - - Event::dispatch('marketing.events.create.after', $event); - - return $event; - } - - /** - * Update. - * - * @param array $attributes - * @param $id - * @return mixed - */ - public function update(array $attributes, $id) - { - Event::dispatch('marketing.events.update.before', $id); - - $event = parent::update($attributes, $id); - - Event::dispatch('marketing.events.update.after', $event); - - return $event; - } - - /** - * Delete. - * - * @param $id - * @return int - */ - public function delete($id) - { - Event::dispatch('marketing.events.delete.before', $id); - - parent::delete($id); - - Event::dispatch('marketing.events.delete.after', $id); - } } diff --git a/packages/Webkul/Marketing/src/Repositories/TemplateRepository.php b/packages/Webkul/Marketing/src/Repositories/TemplateRepository.php index f782ed30b..87bee1d69 100644 --- a/packages/Webkul/Marketing/src/Repositories/TemplateRepository.php +++ b/packages/Webkul/Marketing/src/Repositories/TemplateRepository.php @@ -2,7 +2,6 @@ namespace Webkul\Marketing\Repositories; -use Illuminate\Support\Facades\Event; use Webkul\Core\Eloquent\Repository; class TemplateRepository extends Repository @@ -16,54 +15,4 @@ class TemplateRepository extends Repository { return \Webkul\Marketing\Contracts\Template::class; } - - /** - * Create. - * - * @param array $attributes - * @return mixed - */ - public function create(array $attributes) - { - Event::dispatch('marketing.templates.create.before'); - - $template = parent::create($attributes); - - Event::dispatch('marketing.templates.create.after', $template); - - return $template; - } - - /** - * Update. - * - * @param array $attributes - * @param $id - * @return mixed - */ - public function update(array $attributes, $id) - { - Event::dispatch('marketing.templates.update.before', $id); - - $template = parent::update($attributes, $id); - - Event::dispatch('marketing.templates.update.after', $template); - - return $template; - } - - /** - * Delete. - * - * @param int $id - * @return int - */ - public function delete($id) - { - Event::dispatch('marketing.templates.delete.before', $id); - - parent::delete($id); - - Event::dispatch('marketing.templates.delete.after', $id); - } } diff --git a/packages/Webkul/Notification/src/Listeners/Order.php b/packages/Webkul/Notification/src/Listeners/Order.php index 6c21f6e1d..7240b499b 100644 --- a/packages/Webkul/Notification/src/Listeners/Order.php +++ b/packages/Webkul/Notification/src/Listeners/Order.php @@ -2,7 +2,6 @@ namespace Webkul\Notification\Listeners; -use Illuminate\Database\Eloquent\Collection; use Webkul\Notification\Repositories\NotificationRepository; use Webkul\Notification\Events\CreateOrderNotification; use Webkul\Notification\Events\UpdateOrderNotification; @@ -37,11 +36,9 @@ class Order */ public function updateOrder($order) { - $orderArray = [ + event(new UpdateOrderNotification([ 'id' => $order->id, 'status' => $order->status, - ]; - - event(new UpdateOrderNotification($orderArray)); + ])); } } diff --git a/packages/Webkul/Payment/src/Listeners/GenerateInvoice.php b/packages/Webkul/Payment/src/Listeners/GenerateInvoice.php index 7853feab5..9f7f4c90c 100644 --- a/packages/Webkul/Payment/src/Listeners/GenerateInvoice.php +++ b/packages/Webkul/Payment/src/Listeners/GenerateInvoice.php @@ -3,7 +3,6 @@ namespace Webkul\Payment\Listeners; use Illuminate\Contracts\Queue\ShouldQueue; use Illuminate\Queue\InteractsWithQueue; - use Webkul\Sales\Repositories\OrderRepository; use Webkul\Sales\Repositories\InvoiceRepository; diff --git a/packages/Webkul/Paypal/src/Listeners/Transaction.php b/packages/Webkul/Paypal/src/Listeners/Transaction.php index faf5353fa..77ad9c83b 100644 --- a/packages/Webkul/Paypal/src/Listeners/Transaction.php +++ b/packages/Webkul/Paypal/src/Listeners/Transaction.php @@ -23,8 +23,8 @@ class Transaction /** * Save the transaction data for online payment. + * * @param \Webkul\Sales\Models\Invoice $invoice - * * @return void */ public function saveTransaction($invoice) { @@ -41,27 +41,27 @@ class Transaction if ($transactionDetails['statusCode'] == 200) { $transactionData['transaction_id'] = $transactionDetails['result']['id']; - $transactionData['status'] = $transactionDetails['result']['status']; - $transactionData['type'] = $transactionDetails['result']['intent']; + $transactionData['status'] = $transactionDetails['result']['status']; + $transactionData['type'] = $transactionDetails['result']['intent']; $transactionData['payment_method'] = $invoice->order->payment->method; - $transactionData['order_id'] = $invoice->order->id; - $transactionData['invoice_id'] = $invoice->id; - $transactionData['data'] = json_encode ( - array_merge($transactionDetails['result']['purchase_units'], - $transactionDetails['result']['payer']) - ); + $transactionData['order_id'] = $invoice->order->id; + $transactionData['invoice_id'] = $invoice->id; + $transactionData['data'] = json_encode ( + array_merge($transactionDetails['result']['purchase_units'], + $transactionDetails['result']['payer']) + ); $this->orderTransactionRepository->create($transactionData); } } } elseif ($invoice->order->payment->method == 'paypal_standard') { $transactionData['transaction_id'] = $data['txn_id']; - $transactionData['status'] = $data['payment_status']; - $transactionData['type'] = $data['payment_type']; + $transactionData['status'] = $data['payment_status']; + $transactionData['type'] = $data['payment_type']; $transactionData['payment_method'] = $invoice->order->payment->method; - $transactionData['order_id'] = $invoice->order->id; - $transactionData['invoice_id'] = $invoice->id; - $transactionData['data'] = json_encode ($data); + $transactionData['order_id'] = $invoice->order->id; + $transactionData['invoice_id'] = $invoice->id; + $transactionData['data'] = json_encode ($data); $this->orderTransactionRepository->create($transactionData); } diff --git a/packages/Webkul/Paypal/src/Payment/SmartButton.php b/packages/Webkul/Paypal/src/Payment/SmartButton.php index e485022ca..73a2f6bd5 100644 --- a/packages/Webkul/Paypal/src/Payment/SmartButton.php +++ b/packages/Webkul/Paypal/src/Payment/SmartButton.php @@ -73,6 +73,7 @@ class SmartButton extends Paypal $request->headers['PayPal-Partner-Attribution-Id'] = $this->paypalPartnerAttributionId; $request->prefer('return=representation'); $request->body = $body; + return $this->client()->execute($request); } @@ -85,8 +86,10 @@ class SmartButton extends Paypal public function captureOrder($orderId) { $request = new OrdersCaptureRequest($orderId); + $request->headers['PayPal-Partner-Attribution-Id'] = $this->paypalPartnerAttributionId; $request->prefer('return=representation'); + $this->client()->execute($request); } @@ -110,6 +113,7 @@ class SmartButton extends Paypal public function getCaptureId($orderId) { $paypalOrderDetails = $this->getOrder($orderId); + return $paypalOrderDetails->result->purchase_units[0]->payments->captures[0]->id; } @@ -121,8 +125,10 @@ class SmartButton extends Paypal public function refundOrder($captureId, $body = []) { $request = new CapturesRefundRequest($captureId); + $request->headers['PayPal-Partner-Attribution-Id'] = $this->paypalPartnerAttributionId; $request->body = $body; + return $this->client()->execute($request); } diff --git a/packages/Webkul/Product/src/CacheFilters/Large.php b/packages/Webkul/Product/src/CacheFilters/Large.php index c64a05f1d..a6274f402 100755 --- a/packages/Webkul/Product/src/CacheFilters/Large.php +++ b/packages/Webkul/Product/src/CacheFilters/Large.php @@ -15,9 +15,13 @@ class Large implements FilterInterface */ public function applyFilter(Image $image) { - $width = core()->getConfigData('catalog.products.cache-large-image.width') != '' ? core()->getConfigData('catalog.products.cache-large-image.width') : 480; + $width = core()->getConfigData('catalog.products.cache-large-image.width') != '' + ? core()->getConfigData('catalog.products.cache-large-image.width') + : 480; - $height = core()->getConfigData('catalog.products.cache-large-image.height') != '' ? core()->getConfigData('catalog.products.cache-large-image.height') : 480; + $height = core()->getConfigData('catalog.products.cache-large-image.height') != '' + ? core()->getConfigData('catalog.products.cache-large-image.height') + : 480; return $image->resize($width, $height, function ($constraint) { $constraint->aspectRatio(); diff --git a/packages/Webkul/Product/src/CacheFilters/Medium.php b/packages/Webkul/Product/src/CacheFilters/Medium.php index 1fc6a0f6f..c57027826 100755 --- a/packages/Webkul/Product/src/CacheFilters/Medium.php +++ b/packages/Webkul/Product/src/CacheFilters/Medium.php @@ -15,9 +15,13 @@ class Medium implements FilterInterface */ public function applyFilter(Image $image) { - $width = core()->getConfigData('catalog.products.cache-medium-image.width') != '' ? core()->getConfigData('catalog.products.cache-medium-image.width') : 280; + $width = core()->getConfigData('catalog.products.cache-medium-image.width') != '' + ? core()->getConfigData('catalog.products.cache-medium-image.width') + : 280; - $height = core()->getConfigData('catalog.products.cache-medium-image.height') != '' ? core()->getConfigData('catalog.products.cache-medium-image.height') : 280; + $height = core()->getConfigData('catalog.products.cache-medium-image.height') != '' + ? core()->getConfigData('catalog.products.cache-medium-image.height') + : 280; $image->resize($width, $height, function ($constraint) { $constraint->aspectRatio(); diff --git a/packages/Webkul/Product/src/CacheFilters/Small.php b/packages/Webkul/Product/src/CacheFilters/Small.php index f4aafaf30..93e859b3a 100755 --- a/packages/Webkul/Product/src/CacheFilters/Small.php +++ b/packages/Webkul/Product/src/CacheFilters/Small.php @@ -15,9 +15,13 @@ class Small implements FilterInterface */ public function applyFilter(Image $image) { - $width = core()->getConfigData('catalog.products.cache-small-image.width') ? core()->getConfigData('catalog.products.cache-small-image.width') : 120; + $width = core()->getConfigData('catalog.products.cache-small-image.width') + ? core()->getConfigData('catalog.products.cache-small-image.width') + : 120; - $height = core()->getConfigData('catalog.products.cache-small-image.height') ? core()->getConfigData('catalog.products.cache-small-image.height') : 120; + $height = core()->getConfigData('catalog.products.cache-small-image.height') + ? core()->getConfigData('catalog.products.cache-small-image.height') + : 120; $image->resize($width, $height, function ($constraint) { $constraint->aspectRatio(); diff --git a/packages/Webkul/Product/src/Console/Commands/PriceUpdate.php b/packages/Webkul/Product/src/Console/Commands/PriceUpdate.php index 394bd6bd1..9616fb95a 100644 --- a/packages/Webkul/Product/src/Console/Commands/PriceUpdate.php +++ b/packages/Webkul/Product/src/Console/Commands/PriceUpdate.php @@ -24,7 +24,7 @@ class PriceUpdate extends Command /** * Create a new command instance. * - * @param ]Webkul\Product\Repositories\ProductFlatRepository $productFlatRepository + * @param \Webkul\Product\Repositories\ProductFlatRepository $productFlatRepository * @return void */ public function __construct(protected ProductFlatRepository $productFlatRepository) @@ -46,30 +46,30 @@ class PriceUpdate extends Command $product->min_price = $product->getTypeInstance()->getMinimalPrice(); - $product->max_price = $product->getTypeInstance()->getMaximamPrice(); + $product->max_price = $product->getTypeInstance()->getMaximumPrice(); $product->save(); if ($product->parent) { $product->parent->min_price = $product->parent->getTypeInstance()->getMinimalPrice(); - $product->parent->max_price = $product->parent->getTypeInstance()->getMaximamPrice(); + $product->parent->max_price = $product->parent->getTypeInstance()->getMaximumPrice(); $product->parent->save(); } else { $bundleProducts = $this->productFlatRepository->getModel() - ->addSelect('product_flat.*') - ->distinct() - ->leftJoin('products', 'product_flat.product_id', 'products.id') - ->leftJoin('product_bundle_options', 'products.id', 'product_bundle_options.product_id') - ->leftJoin('product_bundle_option_products', 'product_bundle_options.id', 'product_bundle_option_productsproduct_bundle_option_id') - ->where('product_bundle_option_products.product_id', $product->product_id) - ->get(); + ->addSelect('product_flat.*') + ->distinct() + ->leftJoin('products', 'product_flat.product_id', 'products.id') + ->leftJoin('product_bundle_options', 'products.id', 'product_bundle_options.product_id') + ->leftJoin('product_bundle_option_products', 'product_bundle_options.id', 'product_bundle_option_productsproduct_bundle_option_id') + ->where('product_bundle_option_products.product_id', $product->product_id) + ->get(); foreach ($bundleProducts as $bundleProduct) { $bundleProduct->min_price = $bundleProduct->getTypeInstance()->getMinimalPrice(); - $bundleProduct->max_price = $bundleProduct->getTypeInstance()->getMaximamPrice(); + $bundleProduct->max_price = $bundleProduct->getTypeInstance()->getMaximumPrice(); $bundleProduct->save(); } diff --git a/packages/Webkul/Product/src/Database/Eloquent/Builder.php b/packages/Webkul/Product/src/Database/Eloquent/Builder.php index 33948066f..5ec2ed39b 100755 --- a/packages/Webkul/Product/src/Database/Eloquent/Builder.php +++ b/packages/Webkul/Product/src/Database/Eloquent/Builder.php @@ -28,8 +28,8 @@ class Builder extends BaseBuilder $perPage = $perPage ?: $this->model->getPerPage(); $results = ($total = $this->toBase()->getCountForPagination($columns)) - ? $this->forPage($page, $perPage)->get($columns) - : $this->model->newCollection(); + ? $this->forPage($page, $perPage)->get($columns) + : $this->model->newCollection(); return $this->paginator($results, $total, $perPage, $page, [ 'path' => Paginator::resolveCurrentPath(), diff --git a/packages/Webkul/Product/src/Database/Factories/ProductAttributeValueFactory.php b/packages/Webkul/Product/src/Database/Factories/ProductAttributeValueFactory.php index 67e4d0f0b..714cd4534 100644 --- a/packages/Webkul/Product/src/Database/Factories/ProductAttributeValueFactory.php +++ b/packages/Webkul/Product/src/Database/Factories/ProductAttributeValueFactory.php @@ -24,7 +24,7 @@ class ProductAttributeValueFactory extends Factory { return [ //'product_id' => Product::factory(), - 'locale' => 'en', + 'locale' => 'en', 'channel' => 'default', ]; } diff --git a/packages/Webkul/Product/src/Database/Factories/ProductDownloadableLinkFactory.php b/packages/Webkul/Product/src/Database/Factories/ProductDownloadableLinkFactory.php index d088ef3fd..dca94923b 100644 --- a/packages/Webkul/Product/src/Database/Factories/ProductDownloadableLinkFactory.php +++ b/packages/Webkul/Product/src/Database/Factories/ProductDownloadableLinkFactory.php @@ -23,16 +23,16 @@ class ProductDownloadableLinkFactory extends Factory public function definition(): array { $now = date("Y-m-d H:i:s"); + $filename = 'ProductImageExampleForUpload.jpg'; - $filepath = '/tests/_data/'; return [ - 'url' => '', - 'file' => $filepath . $filename, - 'file_name' => $filename, - 'type' => 'file', - 'price' => 0.0000, - 'downloads' => $this->faker->randomNumber(1), + 'url' => '', + 'file' => '/tests/_data/' . $filename, + 'file_name' => $filename, + 'type' => 'file', + 'price' => 0.0000, + 'downloads' => $this->faker->randomNumber(1), 'product_id' => Product::factory(), 'created_at' => $now, 'updated_at' => $now, diff --git a/packages/Webkul/Product/src/Database/Factories/ProductDownloadableLinkTranslationFactory.php b/packages/Webkul/Product/src/Database/Factories/ProductDownloadableLinkTranslationFactory.php index 7a01705b4..c42c64a29 100644 --- a/packages/Webkul/Product/src/Database/Factories/ProductDownloadableLinkTranslationFactory.php +++ b/packages/Webkul/Product/src/Database/Factories/ProductDownloadableLinkTranslationFactory.php @@ -23,8 +23,8 @@ class ProductDownloadableLinkTranslationFactory extends Factory public function definition(): array { return [ - 'locale' => 'en', - 'title' => $this->faker->word, + 'locale' => 'en', + 'title' => $this->faker->word, 'product_downloadable_link_id' => ProductDownloadableLink::factory(), ]; } diff --git a/packages/Webkul/Product/src/Database/Factories/ProductInventoryFactory.php b/packages/Webkul/Product/src/Database/Factories/ProductInventoryFactory.php index d2fce80d9..b39a2c7c2 100644 --- a/packages/Webkul/Product/src/Database/Factories/ProductInventoryFactory.php +++ b/packages/Webkul/Product/src/Database/Factories/ProductInventoryFactory.php @@ -24,8 +24,8 @@ class ProductInventoryFactory extends Factory public function definition(): array { return [ - 'qty' => $this->faker->numberBetween(100, 200), - 'product_id' => Product::factory(), + 'qty' => $this->faker->numberBetween(100, 200), + 'product_id' => Product::factory(), 'inventory_source_id' => InventorySource::factory(), ]; } diff --git a/packages/Webkul/Product/src/Database/Factories/ProductReviewFactory.php b/packages/Webkul/Product/src/Database/Factories/ProductReviewFactory.php index b23f76856..c19bf3844 100644 --- a/packages/Webkul/Product/src/Database/Factories/ProductReviewFactory.php +++ b/packages/Webkul/Product/src/Database/Factories/ProductReviewFactory.php @@ -23,10 +23,10 @@ class ProductReviewFactory extends Factory public function definition(): array { return [ - 'title' => $this->faker->words(5, true), - 'rating' => $this->faker->numberBetween(0, 10), - 'status' => 1, - 'comment' => $this->faker->sentence(20), + 'title' => $this->faker->words(5, true), + 'rating' => $this->faker->numberBetween(0, 10), + 'status' => 1, + 'comment' => $this->faker->sentence(20), 'product_id' => Product::factory(), ]; } diff --git a/packages/Webkul/Product/src/Helpers/BundleOption.php b/packages/Webkul/Product/src/Helpers/BundleOption.php index 97fb9397a..0b330f377 100644 --- a/packages/Webkul/Product/src/Helpers/BundleOption.php +++ b/packages/Webkul/Product/src/Helpers/BundleOption.php @@ -103,7 +103,7 @@ class BundleOption extends AbstractProduct 'product_id' => $bundleOptionProduct->product_id, 'is_default' => $bundleOptionProduct->is_default, 'sort_order' => $bundleOptionProduct->sort_order, - 'in_stock' => $bundleOptionProduct->product->inventories->sum('qty') >= $bundleOptionProduct->qty, + 'in_stock' => $bundleOptionProduct->product->inventories->sum('qty') >= $bundleOptionProduct->qty, 'inventory' => $bundleOptionProduct->product->inventories->sum('qty'), ]; } diff --git a/packages/Webkul/Product/src/Helpers/ConfigurableOption.php b/packages/Webkul/Product/src/Helpers/ConfigurableOption.php index 9effc76e6..c10c351bf 100755 --- a/packages/Webkul/Product/src/Helpers/ConfigurableOption.php +++ b/packages/Webkul/Product/src/Helpers/ConfigurableOption.php @@ -124,20 +124,13 @@ class ConfigurableOption extends AbstractProduct $allowAttributes = $this->getAllowAttributes($product); foreach ($allowAttributes as $attribute) { - - $attributeOptionsData = $this->getAttributeOptionsData($attribute, $options); - - if ($attributeOptionsData) { - $attributeId = $attribute->id; - - $attributes[] = [ - 'id' => $attributeId, - 'code' => $attribute->code, - 'label' => $attribute->name ? $attribute->name : $attribute->admin_name, - 'swatch_type' => $attribute->swatch_type, - 'options' => $attributeOptionsData, - ]; - } + $attributes[] = [ + 'id' => $attribute->id, + 'code' => $attribute->code, + 'label' => $attribute->name ? $attribute->name : $attribute->admin_name, + 'swatch_type' => $attribute->swatch_type, + 'options' => $this->getAttributeOptionsData($attribute, $options), + ]; } return $attributes; @@ -155,17 +148,18 @@ class ConfigurableOption extends AbstractProduct $attributeOptionsData = []; foreach ($attribute->options as $attributeOption) { - $optionId = $attributeOption->id; - if (isset($options[$attribute->id][$optionId])) { - $attributeOptionsData[] = [ - 'id' => $optionId, - 'label' => $attributeOption->label ? $attributeOption->label : $attributeOption->admin_name, - 'swatch_value' => $attribute->swatch_type == 'image' ? $attributeOption->swatch_value_url : $attributeOption->swatch_value, - 'products' => $options[$attribute->id][$optionId], - ]; + if (! isset($options[$attribute->id][$optionId])) { + continue; } + + $attributeOptionsData[] = [ + 'id' => $optionId, + 'label' => $attributeOption->label ? $attributeOption->label : $attributeOption->admin_name, + 'swatch_value' => $attribute->swatch_type == 'image' ? $attributeOption->swatch_value_url : $attributeOption->swatch_value, + 'products' => $options[$attribute->id][$optionId], + ]; } return $attributeOptionsData; diff --git a/packages/Webkul/Product/src/Helpers/GenerateProduct.php b/packages/Webkul/Product/src/Helpers/GenerateProduct.php index 9f10cbc8d..8bad0633c 100644 --- a/packages/Webkul/Product/src/Helpers/GenerateProduct.php +++ b/packages/Webkul/Product/src/Helpers/GenerateProduct.php @@ -60,7 +60,6 @@ class GenerateProduct $brand = Attribute::where(['code' => 'brand'])->first(); if (! AttributeOption::where(['attribute_id' => $brand->id])->exists()) { - AttributeOption::create([ 'admin_name' => 'Webkul Demo Brand (c) 2020', 'attribute_id' => $brand->id, diff --git a/packages/Webkul/Product/src/Helpers/Review.php b/packages/Webkul/Product/src/Helpers/Review.php index 6582888b6..2aabe3bc9 100755 --- a/packages/Webkul/Product/src/Helpers/Review.php +++ b/packages/Webkul/Product/src/Helpers/Review.php @@ -90,10 +90,10 @@ class Review extends AbstractProduct } return $reviews[$product->id] = $product->reviews()->where('status', 'approved') - ->select('rating', DB::raw('count(*) as total')) - ->groupBy('rating') - ->orderBy('rating', 'desc') - ->get(); + ->select('rating', DB::raw('count(*) as total')) + ->groupBy('rating') + ->orderBy('rating', 'desc') + ->get(); } /** diff --git a/packages/Webkul/Product/src/Helpers/SEO.php b/packages/Webkul/Product/src/Helpers/SEO.php index 8a7e44a3d..306df5889 100644 --- a/packages/Webkul/Product/src/Helpers/SEO.php +++ b/packages/Webkul/Product/src/Helpers/SEO.php @@ -151,10 +151,10 @@ class SEO public function getProductOffers($product) { return [ - '@type' => 'Offer', - 'priceCurrency' => core()->getCurrentCurrencyCode(), - 'price' => $product->getTypeInstance()->getMinimalPrice(), - 'availability' => 'https://schema.org/InStock', + '@type' => 'Offer', + 'priceCurrency' => core()->getCurrentCurrencyCode(), + 'price' => $product->getTypeInstance()->getMinimalPrice(), + 'availability' => 'https://schema.org/InStock', ]; } diff --git a/packages/Webkul/Product/src/Helpers/View.php b/packages/Webkul/Product/src/Helpers/View.php index 739ba4d2e..ae6e9b581 100755 --- a/packages/Webkul/Product/src/Helpers/View.php +++ b/packages/Webkul/Product/src/Helpers/View.php @@ -42,17 +42,17 @@ class View extends AbstractProduct $attribute->type == 'multiselect' || $attribute->type == 'checkbox' ) { - $lables = []; + $labels = []; $attributeOptions = $attributeOptionReposotory->findWhereIn('id', explode(",", $value)); foreach ($attributeOptions as $attributeOption) { if ($label = $attributeOption->label) { - $lables[] = $label; + $labels[] = $label; } } - $value = implode(", ", $lables); + $value = implode(", ", $labels); } } diff --git a/packages/Webkul/Product/src/Http/Controllers/ProductController.php b/packages/Webkul/Product/src/Http/Controllers/ProductController.php index 69ef046e3..48a63c443 100755 --- a/packages/Webkul/Product/src/Http/Controllers/ProductController.php +++ b/packages/Webkul/Product/src/Http/Controllers/ProductController.php @@ -118,8 +118,12 @@ class ProductController extends Controller 'sku' => ['required', 'unique:products,sku', new Slug], ]); + Event::dispatch('catalog.product.create.before'); + $product = $this->productRepository->create(request()->all()); + Event::dispatch('catalog.product.create.after', $product); + session()->flash('success', trans('admin::app.response.create-success', ['name' => 'Product'])); return redirect()->route($this->_config['redirect'], ['id' => $product->id]); @@ -151,7 +155,11 @@ class ProductController extends Controller */ public function update(ProductForm $request, $id) { - $this->productRepository->update(request()->all(), $id); + Event::dispatch('catalog.product.update.before', $id); + + $product = $this->productRepository->update(request()->all(), $id); + + Event::dispatch('catalog.product.update.after', $product); session()->flash('success', trans('admin::app.response.update-success', ['name' => 'Product'])); @@ -257,8 +265,12 @@ class ProductController extends Controller $product = $this->productRepository->findOrFail($id); try { + Event::dispatch('catalog.product.delete.before', $id); + $this->productRepository->delete($id); + Event::dispatch('catalog.product.delete.after', $id); + return response()->json([ 'message' => trans('admin::app.response.delete-success', ['name' => 'Product']), ]); @@ -284,7 +296,11 @@ class ProductController extends Controller $product = $this->productRepository->find($productId); if (isset($product)) { + Event::dispatch('catalog.product.delete.before', $productId); + $this->productRepository->delete($productId); + + Event::dispatch('catalog.product.delete.after', $productId); } } @@ -313,11 +329,15 @@ class ProductController extends Controller $productIds = explode(',', $data['indexes']); foreach ($productIds as $productId) { - $this->productRepository->update([ + Event::dispatch('catalog.product.update.before', $id); + + $product = $this->productRepository->update([ 'channel' => null, 'locale' => null, 'status' => $data['update-options'], ], $productId); + + Event::dispatch('catalog.product.update.after', $product); } session()->flash('success', trans('admin::app.catalog.products.mass-update-success')); diff --git a/packages/Webkul/Product/src/Http/Controllers/ReviewController.php b/packages/Webkul/Product/src/Http/Controllers/ReviewController.php index 50ccf5090..073f7172b 100755 --- a/packages/Webkul/Product/src/Http/Controllers/ReviewController.php +++ b/packages/Webkul/Product/src/Http/Controllers/ReviewController.php @@ -61,7 +61,11 @@ class ReviewController extends Controller */ public function update($id) { - $this->productReviewRepository->update(request()->all(), $id); + Event::dispatch('customer.review.update.before', $id); + + $review = $this->productReviewRepository->update(request()->all(), $id); + + Event::dispatch('customer.review.update.after', $review); session()->flash('success', trans('admin::app.response.update-success', ['name' => 'Review'])); @@ -79,8 +83,12 @@ class ReviewController extends Controller $this->productReviewRepository->findOrFail($id); try { + Event::dispatch('customer.review.delete.before', $id); + $this->productReviewRepository->delete($id); + Event::dispatch('customer.review.delete.after', $id); + return response()->json(['message' => trans('admin::app.response.delete-success', ['name' => 'Review'])]); } catch (\Exception $e) { report($e); @@ -99,13 +107,15 @@ class ReviewController extends Controller $suppressFlash = false; if (request()->isMethod('post')) { - $data = request()->all(); - $indexes = explode(',', request()->input('indexes')); - foreach ($indexes as $key => $value) { + foreach ($indexes as $index) { try { - $this->productReviewRepository->delete($value); + Event::dispatch('customer.review.delete.before', $index); + + $this->productReviewRepository->delete($index); + + Event::dispatch('customer.review.delete.after', $index); } catch (\Exception $e) { $suppressFlash = true; diff --git a/packages/Webkul/Product/src/Listeners/ProductFlat.php b/packages/Webkul/Product/src/Listeners/ProductFlat.php index d16ed9b11..b6d6ee651 100644 --- a/packages/Webkul/Product/src/Listeners/ProductFlat.php +++ b/packages/Webkul/Product/src/Listeners/ProductFlat.php @@ -261,7 +261,7 @@ class ProductFlat $productFlat->min_price = $product->getTypeInstance()->getMinimalPrice(); - $productFlat->max_price = $product->getTypeInstance()->getMaximamPrice(); + $productFlat->max_price = $product->getTypeInstance()->getMaximumPrice(); if ($parentProduct) { $parentProductFlat = $this->productFlatRepository->findOneWhere([ diff --git a/packages/Webkul/Product/src/ProductImage.php b/packages/Webkul/Product/src/ProductImage.php index 3f2218fb2..b3a29bd02 100644 --- a/packages/Webkul/Product/src/ProductImage.php +++ b/packages/Webkul/Product/src/ProductImage.php @@ -99,15 +99,17 @@ class ProductImage extends AbstractProduct { static $loadedBaseImages = []; - if ($product) { - if (array_key_exists($product->id, $loadedBaseImages)) { - return $loadedBaseImages[$product->id]; - } - - return $loadedBaseImages[$product->id] = $galleryImages - ? $galleryImages[0] - : $this->otherwiseLoadFromProduct($product); + if (! $product) { + return; } + + if (array_key_exists($product->id, $loadedBaseImages)) { + return $loadedBaseImages[$product->id]; + } + + return $loadedBaseImages[$product->id] = $galleryImages + ? $galleryImages[0] + : $this->otherwiseLoadFromProduct($product); } /** diff --git a/packages/Webkul/Product/src/ProductVideo.php b/packages/Webkul/Product/src/ProductVideo.php index 1cf130863..7778a3365 100644 --- a/packages/Webkul/Product/src/ProductVideo.php +++ b/packages/Webkul/Product/src/ProductVideo.php @@ -27,8 +27,8 @@ class ProductVideo extends AbstractProduct } $videos[] = [ - 'type' => $video->type, - 'video_url' => Storage::url($video->path), + 'type' => $video->type, + 'video_url' => Storage::url($video->path), ]; } diff --git a/packages/Webkul/Product/src/Repositories/ProductAttributeValueRepository.php b/packages/Webkul/Product/src/Repositories/ProductAttributeValueRepository.php index b46df6edc..6952a9cc8 100755 --- a/packages/Webkul/Product/src/Repositories/ProductAttributeValueRepository.php +++ b/packages/Webkul/Product/src/Repositories/ProductAttributeValueRepository.php @@ -2,10 +2,7 @@ namespace Webkul\Product\Repositories; -use Illuminate\Container\Container as App; -use Webkul\Attribute\Repositories\AttributeRepository; use Webkul\Core\Eloquent\Repository; -use Webkul\Product\Models\ProductAttributeValueProxy; class ProductAttributeValueRepository extends Repository { @@ -30,6 +27,6 @@ class ProductAttributeValueRepository extends Repository { $result = $this->resetScope()->model->where($column, $value)->where('attribute_id', '=', $attributeId)->where('product_id', '!=', $productId)->get(); - return $result->count() ? false : true; + return ! $result->count(); } } \ No newline at end of file diff --git a/packages/Webkul/Product/src/Repositories/ProductBundleOptionRepository.php b/packages/Webkul/Product/src/Repositories/ProductBundleOptionRepository.php index db6fe6306..b3c087399 100644 --- a/packages/Webkul/Product/src/Repositories/ProductBundleOptionRepository.php +++ b/packages/Webkul/Product/src/Repositories/ProductBundleOptionRepository.php @@ -2,7 +2,7 @@ namespace Webkul\Product\Repositories; -use Illuminate\Container\Container as App; +use Illuminate\Container\Container; use Webkul\Core\Eloquent\Repository; use Illuminate\Support\Str; @@ -12,15 +12,15 @@ class ProductBundleOptionRepository extends Repository * Create a new repository instance. * * @param Webkul\Product\Repositories\ProductBundleOptionProductRepository $productBundleOptionProductRepository - * @param \Illuminate\Container\Container $app + * @param \Illuminate\Container\Container $container * @return void */ public function __construct( protected ProductBundleOptionProductRepository $productBundleOptionProductRepository, - App $app + Container $container ) { - parent::__construct($app); + parent::__construct($container); } /** diff --git a/packages/Webkul/Product/src/Repositories/ProductDownloadableLinkRepository.php b/packages/Webkul/Product/src/Repositories/ProductDownloadableLinkRepository.php index e0a439958..e3af4b5ce 100755 --- a/packages/Webkul/Product/src/Repositories/ProductDownloadableLinkRepository.php +++ b/packages/Webkul/Product/src/Repositories/ProductDownloadableLinkRepository.php @@ -28,13 +28,15 @@ class ProductDownloadableLinkRepository extends Repository public function upload($data, $productId) { foreach ($data as $type => $file) { - if (request()->hasFile($type)) { - return [ - $type => $path = request()->file($type)->store('product_downloadable_links/' . $productId, 'private'), - $type . '_name' => $file->getClientOriginalName(), - $type . '_url' => Storage::url($path), - ]; + if (! request()->hasFile($type)) { + continue; } + + return [ + $type => $path = request()->file($type)->store('product_downloadable_links/' . $productId, 'private'), + $type . '_name' => $file->getClientOriginalName(), + $type . '_url' => Storage::url($path), + ]; } return []; diff --git a/packages/Webkul/Product/src/Repositories/ProductDownloadableSampleRepository.php b/packages/Webkul/Product/src/Repositories/ProductDownloadableSampleRepository.php index 4382d128b..97b64635a 100755 --- a/packages/Webkul/Product/src/Repositories/ProductDownloadableSampleRepository.php +++ b/packages/Webkul/Product/src/Repositories/ProductDownloadableSampleRepository.php @@ -25,15 +25,15 @@ class ProductDownloadableSampleRepository extends Repository */ public function upload($data, $productId) { - if (request()->hasFile('file')) { - return [ - 'file' => $path = request()->file('file')->store('product_downloadable_links/' . $productId), - 'file_name' => request()->file('file')->getClientOriginalName(), - 'file_url' => Storage::url($path), - ]; + if (! request()->hasFile('file')) { + return []; } - return []; + return [ + 'file' => $path = request()->file('file')->store('product_downloadable_links/' . $productId), + 'file_name' => request()->file('file')->getClientOriginalName(), + 'file_url' => Storage::url($path), + ]; } /** diff --git a/packages/Webkul/Product/src/Repositories/ProductFlatRepository.php b/packages/Webkul/Product/src/Repositories/ProductFlatRepository.php index e994f3d40..a085559ff 100644 --- a/packages/Webkul/Product/src/Repositories/ProductFlatRepository.php +++ b/packages/Webkul/Product/src/Repositories/ProductFlatRepository.php @@ -2,25 +2,25 @@ namespace Webkul\Product\Repositories; -use Illuminate\Container\Container as App; -use Webkul\Attribute\Repositories\AttributeRepository; +use Illuminate\Container\Container; use Webkul\Core\Eloquent\Repository; +use Webkul\Attribute\Repositories\AttributeRepository; class ProductFlatRepository extends Repository { /** * Create a new repository instance. * - * @param \Webkul\Attribute\Repositories\AttributeRepository $attributeRepository - * @param \Illuminate\Container\Container $app + * @param \Webkul\Attribute\Repositories\AttributeRepository $attributeRepository + * @param \Illuminate\Container\Container $container * @return void */ public function __construct( protected AttributeRepository $attributeRepository, - App $app + Container $container ) { - parent::__construct($app); + parent::__construct($container); } /** diff --git a/packages/Webkul/Product/src/Repositories/ProductImageRepository.php b/packages/Webkul/Product/src/Repositories/ProductImageRepository.php index 954f43ea9..07e47ceb5 100755 --- a/packages/Webkul/Product/src/Repositories/ProductImageRepository.php +++ b/packages/Webkul/Product/src/Repositories/ProductImageRepository.php @@ -2,7 +2,7 @@ namespace Webkul\Product\Repositories; -use Illuminate\Container\Container as App; +use Illuminate\Container\Container; use Webkul\Product\Repositories\ProductRepository; class ProductImageRepository extends ProductMediaRepository @@ -11,15 +11,15 @@ class ProductImageRepository extends ProductMediaRepository * Create a new repository instance. * * @param \Webkul\Product\Repositories\ProductRepository $productRepository - * @param \Illuminate\Container\Container $app + * @param \Illuminate\Container\Container $container * @return void */ public function __construct( protected ProductRepository $productRepository, - App $app + Container $container ) { - parent::__construct($app); + parent::__construct($container); } /** diff --git a/packages/Webkul/Product/src/Repositories/ProductMediaRepository.php b/packages/Webkul/Product/src/Repositories/ProductMediaRepository.php index 28fe1c7b1..b5c8b2fee 100644 --- a/packages/Webkul/Product/src/Repositories/ProductMediaRepository.php +++ b/packages/Webkul/Product/src/Repositories/ProductMediaRepository.php @@ -108,9 +108,7 @@ class ProductMediaRepository extends Repository { if ($uploadFileType === 'images') { return $product->images(); - } - - if ($uploadFileType === 'videos') { + } elseif ($uploadFileType === 'videos') { return $product->videos(); } diff --git a/packages/Webkul/Product/src/Repositories/ProductRepository.php b/packages/Webkul/Product/src/Repositories/ProductRepository.php index 4cbfa3fd3..7736c0191 100755 --- a/packages/Webkul/Product/src/Repositories/ProductRepository.php +++ b/packages/Webkul/Product/src/Repositories/ProductRepository.php @@ -3,12 +3,11 @@ namespace Webkul\Product\Repositories; use Exception; -use Illuminate\Container\Container as App; +use Illuminate\Container\Container; use Illuminate\Database\Eloquent\ModelNotFoundException; use Illuminate\Pagination\LengthAwarePaginator; use Illuminate\Pagination\Paginator; use Illuminate\Support\Facades\DB; -use Illuminate\Support\Facades\Event; use Illuminate\Support\Facades\Storage; use Illuminate\Support\Str; use Webkul\Attribute\Models\Attribute; @@ -24,16 +23,16 @@ class ProductRepository extends Repository * Create a new repository instance. * * @param \Webkul\Attribute\Repositories\AttributeRepository $attributeRepository - * @param \Illuminate\Container\Container $app + * @param \Illuminate\Container\Container $container * * @return void */ public function __construct( protected AttributeRepository $attributeRepository, - App $app + Container $container ) { - parent::__construct($app); + parent::__construct($container); } /** @@ -54,14 +53,10 @@ class ProductRepository extends Repository */ public function create(array $data) { - Event::dispatch('catalog.product.create.before'); - $typeInstance = app(config('product_types.' . $data['type'] . '.class')); $product = $typeInstance->create($data); - Event::dispatch('catalog.product.create.after', $product); - return $product; } @@ -75,8 +70,6 @@ class ProductRepository extends Repository */ public function update(array $data, $id, $attribute = 'id') { - Event::dispatch('catalog.product.update.before', $id); - $product = $this->findOrFail($id); $product = $product->getTypeInstance()->update($data, $id, $attribute); @@ -85,26 +78,9 @@ class ProductRepository extends Repository $product['channels'] = $data['channels']; } - Event::dispatch('catalog.product.update.after', $product); - return $product; } - /** - * Delete product. - * - * @param int $id - * @return void - */ - public function delete($id) - { - Event::dispatch('catalog.product.delete.before', $id); - - parent::delete($id); - - Event::dispatch('catalog.product.delete.after', $id); - } - /** * Retrieve product from slug without throwing an exception. * diff --git a/packages/Webkul/Product/src/Repositories/ProductReviewImageRepository.php b/packages/Webkul/Product/src/Repositories/ProductReviewImageRepository.php index 012a5c05e..2cc2ce033 100644 --- a/packages/Webkul/Product/src/Repositories/ProductReviewImageRepository.php +++ b/packages/Webkul/Product/src/Repositories/ProductReviewImageRepository.php @@ -4,22 +4,9 @@ namespace Webkul\Product\Repositories; use Illuminate\Http\UploadedFile; use Webkul\Core\Eloquent\Repository; -use Illuminate\Container\Container as App; class ProductReviewImageRepository extends Repository { - /** - * Create a new repository instance. - * - * @param \Illuminate\Container\Container $app - * - * @return void - */ - public function __construct(App $app) - { - parent::__construct($app); - } - /** * Specify Model class name * @@ -37,19 +24,22 @@ class ProductReviewImageRepository extends Repository */ public function uploadImages($data, $review) { - if (isset($data['attachments'])) { - foreach ($data['attachments'] as $imageId => $image) { - $file = 'attachments.' . $imageId; - $dir = 'review/' . $review->id; + if (! isset($data['attachments'])) { + return; + } - if ($image instanceof UploadedFile) { - if (request()->hasFile($file)) { - $this->create([ - 'path' => request()->file($file)->store($dir), - 'review_id' => $review->id, - ]); - } - } + foreach ($data['attachments'] as $imageId => $image) { + $file = 'attachments.' . $imageId; + $dir = 'review/' . $review->id; + + if ( + $image instanceof UploadedFile + && request()->hasFile($file) + ) { + $this->create([ + 'path' => request()->file($file)->store($dir), + 'review_id' => $review->id, + ]); } } } diff --git a/packages/Webkul/Product/src/Repositories/ProductReviewRepository.php b/packages/Webkul/Product/src/Repositories/ProductReviewRepository.php index 3ae8f8fd9..997d85d78 100755 --- a/packages/Webkul/Product/src/Repositories/ProductReviewRepository.php +++ b/packages/Webkul/Product/src/Repositories/ProductReviewRepository.php @@ -2,7 +2,6 @@ namespace Webkul\Product\Repositories; -use Illuminate\Support\Facades\Event; use Webkul\Core\Eloquent\Repository; class ProductReviewRepository extends Repository @@ -17,39 +16,6 @@ class ProductReviewRepository extends Repository return \Webkul\Product\Contracts\ProductReview::class; } - /** - * Update review. - * - * @param array $attributes - * @param $id - * @return mixed - */ - public function update(array $attributes, $id) - { - Event::dispatch('customer.review.update.before', $id); - - $review = parent::update($attributes, $id); - - Event::dispatch('customer.review.update.after', $review); - - return $review; - } - - /** - * Delete a entity in repository by id - * - * @param $id - * @return void - */ - public function delete($id) - { - Event::dispatch('customer.review.delete.before', $id); - - parent::delete($id); - - Event::dispatch('customer.review.delete.after', $id); - } - /** * Retrieve review for customerId * diff --git a/packages/Webkul/Product/src/Repositories/SearchRepository.php b/packages/Webkul/Product/src/Repositories/SearchRepository.php index 8b525da60..f6d8b0a37 100755 --- a/packages/Webkul/Product/src/Repositories/SearchRepository.php +++ b/packages/Webkul/Product/src/Repositories/SearchRepository.php @@ -2,11 +2,11 @@ namespace Webkul\Product\Repositories; -use Webkul\Core\Traits\Sanitizer; -use Webkul\Core\Eloquent\Repository; +use Illuminate\Container\Container; use Illuminate\Support\Facades\Storage; -use Illuminate\Container\Container as App; +use Webkul\Core\Eloquent\Repository; use Webkul\Product\Repositories\ProductRepository; +use Webkul\Core\Traits\Sanitizer; class SearchRepository extends Repository { @@ -15,15 +15,15 @@ class SearchRepository extends Repository * Create a new repository instance. * * @param \Webkul\Product\Repositories\ProductRepository $productRepository - * @param \Illuminate\Container\Container $app + * @param \Illuminate\Container\Container $container * @return void */ public function __construct( protected ProductRepository $productRepository, - App $app + Container $container ) { - parent::__construct($app); + parent::__construct($container); } function model() diff --git a/packages/Webkul/Product/src/Type/AbstractType.php b/packages/Webkul/Product/src/Type/AbstractType.php index a32d49b83..a6ac0349e 100644 --- a/packages/Webkul/Product/src/Type/AbstractType.php +++ b/packages/Webkul/Product/src/Type/AbstractType.php @@ -558,7 +558,7 @@ abstract class AbstractType * * @return float */ - public function getMaximamPrice() + public function getMaximumPrice() { return $this->getMinimalPrice(); } diff --git a/packages/Webkul/Product/src/Type/Bundle.php b/packages/Webkul/Product/src/Type/Bundle.php index abcff30c6..621760078 100644 --- a/packages/Webkul/Product/src/Type/Bundle.php +++ b/packages/Webkul/Product/src/Type/Bundle.php @@ -151,14 +151,16 @@ class Bundle extends AbstractType foreach ($this->product->bundle_options as $option) { $optionProductsPrices = $this->getOptionProductsPrices($option); - if (count($optionProductsPrices)) { - $selectionMinPrice = min($optionProductsPrices); + if (! count($optionProductsPrices)) { + continue; + } - if ($option->is_required) { - $minPrice += $selectionMinPrice; - } elseif (! $haveRequiredOptions) { - $minPrices[] = $selectionMinPrice; - } + $selectionMinPrice = min($optionProductsPrices); + + if ($option->is_required) { + $minPrice += $selectionMinPrice; + } elseif (! $haveRequiredOptions) { + $minPrices[] = $selectionMinPrice; } } @@ -185,14 +187,16 @@ class Bundle extends AbstractType foreach ($this->product->bundle_options as $option) { $optionProductsPrices = $this->getOptionProductsPrices($option, false); - if (count($optionProductsPrices)) { - $selectionMinPrice = min($optionProductsPrices); + if (! count($optionProductsPrices)) { + continue; + } - if ($option->is_required) { - $minPrice += $selectionMinPrice; - } elseif (! $haveRequiredOptions) { - $minPrices[] = $selectionMinPrice; - } + $selectionMinPrice = min($optionProductsPrices); + + if ($option->is_required) { + $minPrice += $selectionMinPrice; + } elseif (! $haveRequiredOptions) { + $minPrices[] = $selectionMinPrice; } } @@ -253,7 +257,7 @@ class Bundle extends AbstractType * * @return float */ - public function getMaximamPrice() + public function getMaximumPrice() { $optionPrices = []; @@ -290,7 +294,7 @@ class Bundle extends AbstractType * * @return float */ - public function getRegularMaximamPrice() + public function getRegularMaximumPrice() { $optionPrices = []; @@ -354,11 +358,11 @@ class Bundle extends AbstractType 'to' => [ 'regular_price' => [ - 'price' => core()->convertPrice($this->evaluatePrice($regularMaximumPrice = $this->getRegularMaximamPrice())), + 'price' => core()->convertPrice($this->evaluatePrice($regularMaximumPrice = $this->getRegularMaximumPrice())), 'formated_price' => core()->currency($this->evaluatePrice($regularMaximumPrice)), ], 'final_price' => [ - 'price' => core()->convertPrice($this->evaluatePrice($maximumPrice = $this->getMaximamPrice())), + 'price' => core()->convertPrice($this->evaluatePrice($maximumPrice = $this->getMaximumPrice())), 'formated_price' => core()->currency($this->evaluatePrice($maximumPrice)), ], ], @@ -377,6 +381,7 @@ class Bundle extends AbstractType foreach ($option->bundle_option_products as $index => $bundleOptionProduct) { if ($bundleOptionProduct->product->getTypeInstance()->haveSpecialPrice()) { $haveSpecialPrice = true; + break; } } @@ -755,6 +760,7 @@ class Bundle extends AbstractType continue 2; } } + # if any required option does not have any in-stock product option we will get here. return false; } diff --git a/packages/Webkul/Product/src/Type/Configurable.php b/packages/Webkul/Product/src/Type/Configurable.php index e8c7110b9..e5fe6484d 100644 --- a/packages/Webkul/Product/src/Type/Configurable.php +++ b/packages/Webkul/Product/src/Type/Configurable.php @@ -588,7 +588,7 @@ class Configurable extends AbstractType * * @return float */ - public function getMaximamPrice() + public function getMaximumPrice() { static $maxPrice = null; diff --git a/packages/Webkul/Product/src/Type/Downloadable.php b/packages/Webkul/Product/src/Type/Downloadable.php index 22bb96131..fa955333a 100644 --- a/packages/Webkul/Product/src/Type/Downloadable.php +++ b/packages/Webkul/Product/src/Type/Downloadable.php @@ -124,8 +124,10 @@ class Downloadable extends AbstractType return false; } - if (is_callable(config('products.isSaleable')) && - call_user_func(config('products.isSaleable'), $this->product) === false) { + if ( + is_callable(config('products.isSaleable')) + && call_user_func(config('products.isSaleable'), $this->product) === false + ) { return false; } @@ -286,7 +288,7 @@ class Downloadable extends AbstractType * * @return float */ - public function getMaximamPrice() + public function getMaximumPrice() { return $this->product->price; } diff --git a/packages/Webkul/Product/src/Type/Simple.php b/packages/Webkul/Product/src/Type/Simple.php index a776334e2..e1722cf9b 100644 --- a/packages/Webkul/Product/src/Type/Simple.php +++ b/packages/Webkul/Product/src/Type/Simple.php @@ -61,11 +61,11 @@ class Simple extends AbstractType */ public function haveSufficientQuantity(int $qty): bool { - $backorders = core()->getConfigData('catalog.inventory.stock_options.backorders'); + $backOrders = core()->getConfigData('catalog.inventory.stock_options.backorders'); - $backorders = ! is_null($backorders) ? $backorders : false; + $backOrders = ! is_null($backOrders) ? $backOrders : false; - return $qty <= $this->totalQuantity() ? true : $backorders; + return $qty <= $this->totalQuantity() ? true : $backOrders; } /** @@ -73,7 +73,7 @@ class Simple extends AbstractType * * @return float */ - public function getMaximamPrice() + public function getMaximumPrice() { return $this->product->price; } diff --git a/packages/Webkul/Product/src/Type/Virtual.php b/packages/Webkul/Product/src/Type/Virtual.php index 4f7753452..307ead34a 100644 --- a/packages/Webkul/Product/src/Type/Virtual.php +++ b/packages/Webkul/Product/src/Type/Virtual.php @@ -72,7 +72,7 @@ class Virtual extends AbstractType */ public function haveSufficientQuantity(int $qty): bool { - return $qty <= $this->totalQuantity() ? true : false; + return $qty <= $this->totalQuantity(); } /** @@ -80,7 +80,7 @@ class Virtual extends AbstractType * * @return float */ - public function getMaximamPrice() + public function getMaximumPrice() { return $this->product->price; } diff --git a/packages/Webkul/Rule/src/Helpers/Validator.php b/packages/Webkul/Rule/src/Helpers/Validator.php index e2a82945e..6553e39c1 100644 --- a/packages/Webkul/Rule/src/Helpers/Validator.php +++ b/packages/Webkul/Rule/src/Helpers/Validator.php @@ -53,7 +53,7 @@ class Validator } } - return $validConditionCount == $totalConditionCount ? true : false; + return $validConditionCount == $totalConditionCount; } /** @@ -105,14 +105,14 @@ class Validator case 'product': if ($attributeCode == 'category_ids') { $value = $entity->product - ? $entity->product->categories()->pluck('id')->toArray() - : $entity->categories()->pluck('id')->toArray(); + ? $entity->product->categories()->pluck('id')->toArray() + : $entity->categories()->pluck('id')->toArray(); return $value; } else { $value = $entity->product - ? $entity->product->{$attributeCode} - : $entity->{$attributeCode}; + ? $entity->product->{$attributeCode} + : $entity->{$attributeCode}; if (! in_array($condition['attribute_type'], ['multiselect', 'checkbox'])) { return $value; @@ -278,12 +278,15 @@ class Validator } foreach ($attributeValue as $subValue) { - if (is_array($subValue)) { - if (self::validateArrayValues($subValue, $conditionValue) === true) { - return true; - } + if (! is_array($subValue)) { + continue; + } + + if (self::validateArrayValues($subValue, $conditionValue) === true) { + return true; } } + return false; } } diff --git a/packages/Webkul/Sales/src/Database/Factories/InvoiceFactory.php b/packages/Webkul/Sales/src/Database/Factories/InvoiceFactory.php index 1c6634336..c3ccb8f6d 100644 --- a/packages/Webkul/Sales/src/Database/Factories/InvoiceFactory.php +++ b/packages/Webkul/Sales/src/Database/Factories/InvoiceFactory.php @@ -33,35 +33,37 @@ class InvoiceFactory extends Factory public function definition(): array { $subTotal = $this->faker->randomFloat(2); + $shippingAmount = $this->faker->randomFloat(2); + $taxAmount = $this->faker->randomFloat(2); - if (!isset($attributes['order_id'])) { + if (! isset($attributes['order_id'])) { $attributes['order_id'] = Order::factory(); } - if (!isset($attributes['order_address_id'])) { + if (! isset($attributes['order_address_id'])) { $attributes['order_address_id'] = OrderAddress::factory(); } return [ - 'email_sent' => 0, - 'total_qty' => $this->faker->randomNumber(), - 'base_currency_code' => 'EUR', + 'email_sent' => 0, + 'total_qty' => $this->faker->randomNumber(), + 'base_currency_code' => 'EUR', 'channel_currency_code' => 'EUR', - 'order_currency_code' => 'EUR', - 'sub_total' => $subTotal, - 'base_sub_total' => $subTotal, - 'grand_total' => $subTotal, - 'base_grand_total' => $subTotal, - 'shipping_amount' => $shippingAmount, - 'base_shipping_amount' => $shippingAmount, - 'tax_amount' => $taxAmount, - 'base_tax_amount' => $taxAmount, - 'discount_amount' => 0, - 'base_discount_amount' => 0, - 'order_id' => $attributes['order_id'], - 'order_address_id' => $attributes['order_address_id'], + 'order_currency_code' => 'EUR', + 'sub_total' => $subTotal, + 'base_sub_total' => $subTotal, + 'grand_total' => $subTotal, + 'base_grand_total' => $subTotal, + 'shipping_amount' => $shippingAmount, + 'base_shipping_amount' => $shippingAmount, + 'tax_amount' => $taxAmount, + 'base_tax_amount' => $taxAmount, + 'discount_amount' => 0, + 'base_discount_amount' => 0, + 'order_id' => $attributes['order_id'], + 'order_address_id' => $attributes['order_address_id'], ]; } diff --git a/packages/Webkul/Sales/src/Database/Factories/InvoiceItemFactory.php b/packages/Webkul/Sales/src/Database/Factories/InvoiceItemFactory.php index 36267a4e5..47115ed9e 100644 --- a/packages/Webkul/Sales/src/Database/Factories/InvoiceItemFactory.php +++ b/packages/Webkul/Sales/src/Database/Factories/InvoiceItemFactory.php @@ -24,29 +24,29 @@ class InvoiceItemFactory extends Factory public function definition(): array { $basePrice = $this->faker->randomFloat(2); + $quantity = $this->faker->randomNumber(); - if (!isset($attributes['order_item_id'])) { + if (! isset($attributes['order_item_id'])) { $attributes['order_item_id'] = OrderItem::factory(); } - $orderItem = OrderItem::query() - ->find($attributes['order_item_id']); + $orderItem = OrderItem::query()->find($attributes['order_item_id']); return [ - 'name' => $this->faker->word, - 'sku' => $this->faker->unique()->ean13, - 'qty' => $quantity, - 'price' => $basePrice, - 'base_price' => $basePrice, - 'total' => $quantity * $basePrice, - 'base_total' => $quantity * $basePrice, - 'tax_amount' => 0, + 'name' => $this->faker->word, + 'sku' => $this->faker->unique()->ean13, + 'qty' => $quantity, + 'price' => $basePrice, + 'base_price' => $basePrice, + 'total' => $quantity * $basePrice, + 'base_total' => $quantity * $basePrice, + 'tax_amount' => 0, 'base_tax_amount' => 0, - 'product_id' => $orderItem->product_id, - 'product_type' => $orderItem->product_type, - 'order_item_id' => $attributes['order_item_id'], - 'invoice_id' => Invoice::factory(), + 'product_id' => $orderItem->product_id, + 'product_type' => $orderItem->product_type, + 'order_item_id' => $attributes['order_item_id'], + 'invoice_id' => Invoice::factory(), ]; } } diff --git a/packages/Webkul/Sales/src/Database/Factories/OrderAddressFactory.php b/packages/Webkul/Sales/src/Database/Factories/OrderAddressFactory.php index 87c3b3375..5501abe29 100644 --- a/packages/Webkul/Sales/src/Database/Factories/OrderAddressFactory.php +++ b/packages/Webkul/Sales/src/Database/Factories/OrderAddressFactory.php @@ -31,23 +31,22 @@ class OrderAddressFactory extends Factory */ public function definition(): array { - $customer = Customer::factory() - ->create(); - $customerAddress = CustomerAddress::factory() - ->make(); + $customer = Customer::factory()->create(); + + $customerAddress = CustomerAddress::factory()->make(); return [ - 'first_name' => $customer->first_name, - 'last_name' => $customer->last_name, - 'email' => $customer->email, - 'address1' => $customerAddress->address1, - 'country' => $customerAddress->country, - 'state' => $customerAddress->state, - 'city' => $customerAddress->city, - 'postcode' => $customerAddress->postcode, - 'phone' => $customerAddress->phone, + 'first_name' => $customer->first_name, + 'last_name' => $customer->last_name, + 'email' => $customer->email, + 'address1' => $customerAddress->address1, + 'country' => $customerAddress->country, + 'state' => $customerAddress->state, + 'city' => $customerAddress->city, + 'postcode' => $customerAddress->postcode, + 'phone' => $customerAddress->phone, 'address_type' => OrderAddress::ADDRESS_TYPE_BILLING, - 'order_id' => Order::factory(), + 'order_id' => Order::factory(), ]; } diff --git a/packages/Webkul/Sales/src/Database/Factories/OrderFactory.php b/packages/Webkul/Sales/src/Database/Factories/OrderFactory.php index 93b57407b..5111fa50e 100644 --- a/packages/Webkul/Sales/src/Database/Factories/OrderFactory.php +++ b/packages/Webkul/Sales/src/Database/Factories/OrderFactory.php @@ -34,47 +34,46 @@ class OrderFactory extends Factory public function definition(): array { $lastOrder = DB::table('orders') - ->orderBy('id', 'desc') - ->select('id') - ->first()->id ?? 0; + ->orderBy('id', 'desc') + ->select('id') + ->first()->id ?? 0; - $customer = Customer::factory() - ->create(); + $customer = Customer::factory()->create(); return [ - 'increment_id' => $lastOrder + 1, - 'status' => 'pending', - 'channel_name' => 'Default', - 'is_guest' => 0, - 'customer_id' => $customer->id, - 'customer_email' => $customer->email, - 'customer_first_name' => $customer->first_name, - 'customer_last_name' => $customer->last_name, - 'is_gift' => 0, - 'total_item_count' => 1, - 'total_qty_ordered' => 1, - 'base_currency_code' => 'EUR', - 'channel_currency_code' => 'EUR', - 'order_currency_code' => 'EUR', - 'grand_total' => 0.0000, - 'base_grand_total' => 0.0000, - 'grand_total_invoiced' => 0.0000, + 'increment_id' => $lastOrder + 1, + 'status' => 'pending', + 'channel_name' => 'Default', + 'is_guest' => 0, + 'customer_id' => $customer->id, + 'customer_email' => $customer->email, + 'customer_first_name' => $customer->first_name, + 'customer_last_name' => $customer->last_name, + 'is_gift' => 0, + 'total_item_count' => 1, + 'total_qty_ordered' => 1, + 'base_currency_code' => 'EUR', + 'channel_currency_code' => 'EUR', + 'order_currency_code' => 'EUR', + 'grand_total' => 0.0000, + 'base_grand_total' => 0.0000, + 'grand_total_invoiced' => 0.0000, 'base_grand_total_invoiced' => 0.0000, - 'grand_total_refunded' => 0.0000, + 'grand_total_refunded' => 0.0000, 'base_grand_total_refunded' => 0.0000, - 'sub_total' => 0.0000, - 'base_sub_total' => 0.0000, - 'sub_total_invoiced' => 0.0000, - 'base_sub_total_invoiced' => 0.0000, - 'sub_total_refunded' => 0.0000, - 'base_sub_total_refunded' => 0.0000, - 'customer_type' => Customer::class, - 'channel_id' => 1, - 'channel_type' => Channel::class, - 'cart_id' => 0, - 'shipping_method' => 'free_free', - 'shipping_title' => 'Free Shipping', + 'sub_total' => 0.0000, + 'base_sub_total' => 0.0000, + 'sub_total_invoiced' => 0.0000, + 'base_sub_total_invoiced' => 0.0000, + 'sub_total_refunded' => 0.0000, + 'base_sub_total_refunded' => 0.0000, + 'customer_type' => Customer::class, + 'channel_id' => 1, + 'channel_type' => Channel::class, + 'cart_id' => 0, + 'shipping_method' => 'free_free', + 'shipping_title' => 'Free Shipping', ]; } diff --git a/packages/Webkul/Sales/src/Database/Factories/OrderItemFactory.php b/packages/Webkul/Sales/src/Database/Factories/OrderItemFactory.php index bb5ec3d14..48bd0e293 100644 --- a/packages/Webkul/Sales/src/Database/Factories/OrderItemFactory.php +++ b/packages/Webkul/Sales/src/Database/Factories/OrderItemFactory.php @@ -38,23 +38,23 @@ class OrderItemFactory extends Factory $fallbackPrice = $this->faker->randomFloat(4, 0, 1000); return [ - 'sku' => $product->sku, - 'type' => $product->type, - 'name' => $product->name, - 'price' => $product->price ?? $fallbackPrice, - 'base_price' => $product->price ?? $fallbackPrice, - 'total' => $product->price ?? $fallbackPrice, - 'base_total' => $product->price ?? $fallbackPrice, - 'product_id' => $product->id, - 'qty_ordered' => 1, - 'qty_shipped' => 0, + 'sku' => $product->sku, + 'type' => $product->type, + 'name' => $product->name, + 'price' => $product->price ?? $fallbackPrice, + 'base_price' => $product->price ?? $fallbackPrice, + 'total' => $product->price ?? $fallbackPrice, + 'base_total' => $product->price ?? $fallbackPrice, + 'product_id' => $product->id, + 'qty_ordered' => 1, + 'qty_shipped' => 0, 'qty_invoiced' => 0, 'qty_canceled' => 0, 'qty_refunded' => 0, - 'additional' => [], - 'order_id' => Order::factory(), - 'created_at' => $now, - 'updated_at' => $now, + 'additional' => [], + 'order_id' => Order::factory(), + 'created_at' => $now, + 'updated_at' => $now, 'product_type' => Product::class, ]; } diff --git a/packages/Webkul/Sales/src/Database/Factories/ShipmentFactory.php b/packages/Webkul/Sales/src/Database/Factories/ShipmentFactory.php index 81b00d53c..562672944 100644 --- a/packages/Webkul/Sales/src/Database/Factories/ShipmentFactory.php +++ b/packages/Webkul/Sales/src/Database/Factories/ShipmentFactory.php @@ -23,13 +23,12 @@ class ShipmentFactory extends Factory */ public function definition(): array { - $address = OrderAddress::factory() - ->create(); + $address = OrderAddress::factory()->create(); return [ - 'total_qty' => $this->faker->numberBetween(1, 20), - 'order_id' => $address->order_id, - 'order_address_id' => $address->id, + 'total_qty' => $this->faker->numberBetween(1, 20), + 'order_id' => $address->order_id, + 'order_address_id' => $address->id, 'inventory_source_id' => InventorySource::factory(), ]; } diff --git a/packages/Webkul/Sales/src/Repositories/DownloadableLinkPurchasedRepository.php b/packages/Webkul/Sales/src/Repositories/DownloadableLinkPurchasedRepository.php index d01d452b0..71042621f 100644 --- a/packages/Webkul/Sales/src/Repositories/DownloadableLinkPurchasedRepository.php +++ b/packages/Webkul/Sales/src/Repositories/DownloadableLinkPurchasedRepository.php @@ -2,7 +2,7 @@ namespace Webkul\Sales\Repositories; -use Illuminate\Container\Container as App; +use Illuminate\Container\Container; use Webkul\Core\Eloquent\Repository; use Webkul\Sales\Contracts\DownloadableLinkPurchased; use Webkul\Product\Repositories\ProductDownloadableLinkRepository; @@ -13,14 +13,15 @@ class DownloadableLinkPurchasedRepository extends Repository * Create a new repository instance. * * @param \Webkul\Product\Repositories\ProductDownloadableLinkRepository $productDownloadableLinkRepository + * @param \Illuminate\Container\Container $container * @return void */ public function __construct( protected ProductDownloadableLinkRepository $productDownloadableLinkRepository, - App $app + Container $container ) { - parent::__construct($app); + parent::__construct($container); } /** diff --git a/packages/Webkul/Sales/src/Repositories/InvoiceItemRepository.php b/packages/Webkul/Sales/src/Repositories/InvoiceItemRepository.php index 749af476c..d289d092b 100755 --- a/packages/Webkul/Sales/src/Repositories/InvoiceItemRepository.php +++ b/packages/Webkul/Sales/src/Repositories/InvoiceItemRepository.php @@ -2,7 +2,6 @@ namespace Webkul\Sales\Repositories; -use Illuminate\Container\Container as App; use Illuminate\Support\Facades\Event; use Webkul\Core\Eloquent\Repository; use Webkul\Sales\Contracts\InvoiceItem; diff --git a/packages/Webkul/Sales/src/Repositories/InvoiceRepository.php b/packages/Webkul/Sales/src/Repositories/InvoiceRepository.php index d4139e493..1d5ae4e68 100755 --- a/packages/Webkul/Sales/src/Repositories/InvoiceRepository.php +++ b/packages/Webkul/Sales/src/Repositories/InvoiceRepository.php @@ -2,7 +2,7 @@ namespace Webkul\Sales\Repositories; -use Illuminate\Container\Container as App; +use Illuminate\Container\Container; use Illuminate\Support\Facades\DB; use Illuminate\Support\Facades\Event; use Webkul\Core\Eloquent\Repository; @@ -18,7 +18,7 @@ class InvoiceRepository extends Repository * @param \Webkul\Sales\Repositories\OrderItemRepository $orderItemRepository * @param \Webkul\Sales\Repositories\InvoiceItemRepository $invoiceItemRepository * @param \Webkul\Sales\Repositories\DownloadableLinkPurchasedRepository $downloadableLinkPurchasedRepository - * @param \Illuminate\Container\Container $app + * @param \Illuminate\Container\Container $container * @return void */ public function __construct( @@ -26,10 +26,10 @@ class InvoiceRepository extends Repository protected OrderItemRepository $orderItemRepository, protected InvoiceItemRepository $invoiceItemRepository, protected DownloadableLinkPurchasedRepository $downloadableLinkPurchasedRepository, - App $app + Container $container ) { - parent::__construct($app); + parent::__construct($container); } /** diff --git a/packages/Webkul/Sales/src/Repositories/OrderItemRepository.php b/packages/Webkul/Sales/src/Repositories/OrderItemRepository.php index 01176fab2..c3408fb2b 100755 --- a/packages/Webkul/Sales/src/Repositories/OrderItemRepository.php +++ b/packages/Webkul/Sales/src/Repositories/OrderItemRepository.php @@ -124,7 +124,6 @@ class OrderItemRepository extends Repository } if ($item->product->inventories->count() > 0) { - $orderedInventory = $item->product->ordered_inventories() ->where('channel_id', $orderItem->order->channel_id) ->first(); @@ -133,6 +132,7 @@ class OrderItemRepository extends Repository $qty = $item->qty_ordered; } else { Log::info('OrderItem has no `qty_ordered`.', ['orderItem' => $item, 'product' => $item->product]); + if (isset($item->parent->qty_ordered)) { $qty = $item->parent->qty_ordered; } else { @@ -141,6 +141,7 @@ class OrderItemRepository extends Repository 'parent' => $item->parent, 'product' => $item->product, ]); + $qty = 1; } } diff --git a/packages/Webkul/Sales/src/Repositories/OrderRepository.php b/packages/Webkul/Sales/src/Repositories/OrderRepository.php index df39092d7..8bb983b3c 100755 --- a/packages/Webkul/Sales/src/Repositories/OrderRepository.php +++ b/packages/Webkul/Sales/src/Repositories/OrderRepository.php @@ -2,7 +2,7 @@ namespace Webkul\Sales\Repositories; -use Illuminate\Container\Container as App; +use Illuminate\Container\Container; use Illuminate\Support\Facades\DB; use Illuminate\Support\Facades\Event; use Illuminate\Support\Facades\Log; @@ -18,16 +18,16 @@ class OrderRepository extends Repository * * @param \Webkul\Sales\Repositories\OrderItemRepository $orderItemRepository * @param \Webkul\Sales\Repositories\DownloadableLinkPurchasedRepository $downloadableLinkPurchasedRepository - * @param \Illuminate\Container\Container $app + * @param \Illuminate\Container\Container $container * @return void */ public function __construct( protected OrderItemRepository $orderItemRepository, protected DownloadableLinkPurchasedRepository $downloadableLinkPurchasedRepository, - App $app + Container $container ) { - parent::__construct($app); + parent::__construct($container); } /** diff --git a/packages/Webkul/Sales/src/Repositories/RefundItemRepository.php b/packages/Webkul/Sales/src/Repositories/RefundItemRepository.php index 487f96f9b..e228f5ff9 100644 --- a/packages/Webkul/Sales/src/Repositories/RefundItemRepository.php +++ b/packages/Webkul/Sales/src/Repositories/RefundItemRepository.php @@ -2,7 +2,6 @@ namespace Webkul\Sales\Repositories; -use Illuminate\Container\Container as App; use Webkul\Core\Eloquent\Repository; use Webkul\Sales\Contracts\RefundItem; @@ -52,8 +51,8 @@ class RefundItemRepository extends Repository if ($orderItem->parent) { $shippedQty = $orderItem->qty_ordered - ? ($orderItem->qty_ordered / $orderItem->parent->qty_ordered) * $shipmentItem->qty - : $orderItem->parent->qty_ordered; + ? ($orderItem->qty_ordered / $orderItem->parent->qty_ordered) * $shipmentItem->qty + : $orderItem->parent->qty_ordered; } else { $shippedQty = $shipmentItem->qty; } @@ -63,9 +62,9 @@ class RefundItemRepository extends Repository $totalShippedQtyToRefund = $totalShippedQtyToRefund > $shippedQty ? $totalShippedQtyToRefund - $shippedQty : 0; $inventory = $product->inventories() - // ->where('vendor_id', $data['vendor_id']) - ->where('inventory_source_id', $shipmentItem->shipment->inventory_source_id) - ->first(); + // ->where('vendor_id', $data['vendor_id']) + ->where('inventory_source_id', $shipmentItem->shipment->inventory_source_id) + ->first(); $inventory->update(['qty' => $inventory->qty + $shippedQtyToRefund]); } @@ -77,10 +76,10 @@ class RefundItemRepository extends Repository && $orderItem->getTypeInstance()->showQuantityBox() ) { $inventory = $orderItem->product->inventories() - // ->where('vendor_id', $data['vendor_id']) - ->whereIn('inventory_source_id', $orderItem->order->channel->inventory_sources()->pluck('id')) - ->orderBy('qty', 'desc') - ->first(); + // ->where('vendor_id', $data['vendor_id']) + ->whereIn('inventory_source_id', $orderItem->order->channel->inventory_sources()->pluck('id')) + ->orderBy('qty', 'desc') + ->first(); if ($inventory) { $inventory->update(['qty' => $inventory->qty + $quantity]); @@ -89,8 +88,8 @@ class RefundItemRepository extends Repository if ($quantity) { $orderedInventory = $product->ordered_inventories() - ->where('channel_id', $orderItem->order->channel->id) - ->first(); + ->where('channel_id', $orderItem->order->channel->id) + ->first(); if (! $orderedInventory) { return; diff --git a/packages/Webkul/Sales/src/Repositories/RefundRepository.php b/packages/Webkul/Sales/src/Repositories/RefundRepository.php index d5b21d307..b44061a21 100644 --- a/packages/Webkul/Sales/src/Repositories/RefundRepository.php +++ b/packages/Webkul/Sales/src/Repositories/RefundRepository.php @@ -2,7 +2,7 @@ namespace Webkul\Sales\Repositories; -use Illuminate\Container\Container as App; +use Illuminate\Container\Container; use Illuminate\Support\Facades\DB; use Illuminate\Support\Facades\Event; use Webkul\Core\Eloquent\Repository; @@ -17,17 +17,17 @@ class RefundRepository extends Repository * @param \Webkul\Sales\Repositories\OrderItemRepository $orderItemRepository * @param \Webkul\Sales\Repositories\RefundItemRepository $refundItemRepository * @param \Webkul\Sales\Repositories\DownloadableLinkPurchasedRepository $downloadableLinkPurchasedRepository - * @param \Illuminate\Container\Container $app + * @param \Illuminate\Container\Container $container */ public function __construct( protected OrderRepository $orderRepository, protected OrderItemRepository $orderItemRepository, protected RefundItemRepository $refundItemRepository, protected DownloadableLinkPurchasedRepository $downloadableLinkPurchasedRepository, - App $app + Container $container ) { - parent::__construct($app); + parent::__construct($container); } /** diff --git a/packages/Webkul/Sales/src/Repositories/ShipmentItemRepository.php b/packages/Webkul/Sales/src/Repositories/ShipmentItemRepository.php index ee9bede03..beaad755a 100644 --- a/packages/Webkul/Sales/src/Repositories/ShipmentItemRepository.php +++ b/packages/Webkul/Sales/src/Repositories/ShipmentItemRepository.php @@ -2,9 +2,8 @@ namespace Webkul\Sales\Repositories; -use Illuminate\Container\Container as App; -use Webkul\Core\Eloquent\Repository; use Illuminate\Support\Facades\Event; +use Webkul\Core\Eloquent\Repository; use Webkul\Sales\Contracts\ShipmentItem; class ShipmentItemRepository extends Repository @@ -30,8 +29,8 @@ class ShipmentItemRepository extends Repository } $orderedInventory = $data['product']->ordered_inventories() - ->where('channel_id', $data['shipment']->order->channel->id) - ->first(); + ->where('channel_id', $data['shipment']->order->channel->id) + ->first(); if ($orderedInventory) { if (($orderedQty = $orderedInventory->qty - $data['qty']) < 0) { @@ -42,9 +41,9 @@ class ShipmentItemRepository extends Repository } $inventory = $data['product']->inventories() - ->where('vendor_id', $data['vendor_id']) - ->where('inventory_source_id', $data['shipment']->inventory_source_id) - ->first(); + ->where('vendor_id', $data['vendor_id']) + ->where('inventory_source_id', $data['shipment']->inventory_source_id) + ->first(); if (! $inventory) { return; diff --git a/packages/Webkul/Sales/src/Repositories/ShipmentRepository.php b/packages/Webkul/Sales/src/Repositories/ShipmentRepository.php index 45baab9b4..c84b3208b 100755 --- a/packages/Webkul/Sales/src/Repositories/ShipmentRepository.php +++ b/packages/Webkul/Sales/src/Repositories/ShipmentRepository.php @@ -2,7 +2,7 @@ namespace Webkul\Sales\Repositories; -use Illuminate\Container\Container as App; +use Illuminate\Container\Container; use Illuminate\Support\Facades\DB; use Illuminate\Support\Facades\Event; use Webkul\Core\Eloquent\Repository; @@ -19,16 +19,17 @@ class ShipmentRepository extends Repository * @param \Webkul\Sales\Repositories\OrderRepository $orderRepository * @param \Webkul\Sales\Repositories\OrderItemRepository $orderItemRepository * @param \Webkul\Sales\Repositories\ShipmentItemRepository $orderItemRepository + * @param \Illuminate\Container\Container $container * @return void */ public function __construct( protected OrderRepository $orderRepository, protected OrderItemRepository $orderItemRepository, protected ShipmentItemRepository $shipmentItemRepository, - App $app + Container $container ) { - parent::__construct($app); + parent::__construct($container); } /** diff --git a/packages/Webkul/Sales/src/Traits/InvoiceReminder.php b/packages/Webkul/Sales/src/Traits/InvoiceReminder.php index 8b0b2e202..fb4ccb22d 100644 --- a/packages/Webkul/Sales/src/Traits/InvoiceReminder.php +++ b/packages/Webkul/Sales/src/Traits/InvoiceReminder.php @@ -14,8 +14,7 @@ trait InvoiceReminder */ private function hasOverdueRemindersLimit() { - return $this->getOverdueRemindersLimit() - ? true : false; + return (bool) $this->getOverdueRemindersLimit(); } /** @@ -59,20 +58,29 @@ trait InvoiceReminder { if ($this->hasOverdueRemindersLimit()) { $limit = $this->getOverdueRemindersLimit(); + if ($this->reminders >= $limit) { return; } } + /** @var Webkul\Customer\Models\Customer $customer */ $customer = $this->customer; + Mail::queue(new InvoiceOverdueReminder($customer, $this)); + $this->reminders++; + // Calculate next reminder date $date = now(); + $interval = $this->getIntervalBetweenReminders(); + $date->add($interval); $date->setTime(0, 0, 0, 0); + $this->next_reminder_date = $date; + $this->save(); } @@ -82,6 +90,7 @@ trait InvoiceReminder public function scopeInOverdueAndRemindersLimit($query) { $query->where('state', '=', 'overdue'); + // Filter by next_reminder_date $query->where(function($query) { $query->where('next_reminder_at', '<=', now()) @@ -91,6 +100,7 @@ trait InvoiceReminder // If the core config have maximum limit of reminders if ($this->hasOverdueRemindersLimit()) { $limit = $this->getOverdueRemindersLimit(); + return $query->where('reminders', '<', $limit); } diff --git a/packages/Webkul/Sales/src/Traits/PaymentTerm.php b/packages/Webkul/Sales/src/Traits/PaymentTerm.php index 7108bef7e..008a2abf5 100644 --- a/packages/Webkul/Sales/src/Traits/PaymentTerm.php +++ b/packages/Webkul/Sales/src/Traits/PaymentTerm.php @@ -11,8 +11,7 @@ trait PaymentTerm */ public function hasPaymentTerm() { - return $this->getPaymentTerm() - ? true : false; + return (bool) $this->getPaymentTerm(); } /** diff --git a/packages/Webkul/Shop/src/Http/Controllers/ProductsCategoriesProxyController.php b/packages/Webkul/Shop/src/Http/Controllers/ProductsCategoriesProxyController.php index f9c4ec681..6f7997d4e 100644 --- a/packages/Webkul/Shop/src/Http/Controllers/ProductsCategoriesProxyController.php +++ b/packages/Webkul/Shop/src/Http/Controllers/ProductsCategoriesProxyController.php @@ -39,14 +39,11 @@ class ProductsCategoriesProxyController extends Controller // support url for chinese, japanese, arbic and english with numbers. if (preg_match('/^([\x{0621}-\x{064A}\x{4e00}-\x{9fa5}\x{3402}-\x{FA6D}\x{3041}-\x{30A0}\x{30A0}-\x{31FF}_a-z0-9-]+\/?)+$/u', $slugOrPath)) { - if ($category = $this->categoryRepository->findByPath($slugOrPath)) { - return view($this->_config['category_view'], compact('category')); } if ($product = $this->productRepository->findBySlug($slugOrPath)) { - $customer = auth()->guard('customer')->user(); return view($this->_config['product_view'], compact('product', 'customer')); diff --git a/packages/Webkul/Shop/src/Http/Controllers/SubscriptionController.php b/packages/Webkul/Shop/src/Http/Controllers/SubscriptionController.php index f3cd79e45..7c4bdcf4b 100755 --- a/packages/Webkul/Shop/src/Http/Controllers/SubscriptionController.php +++ b/packages/Webkul/Shop/src/Http/Controllers/SubscriptionController.php @@ -37,7 +37,7 @@ class SubscriptionController extends Controller $alreadySubscribed = $this->subscriptionRepository->findWhere(['email' => $email]); $unique = function () use ($alreadySubscribed) { - return $alreadySubscribed->count() > 0 ? 0 : 1; + return ! $alreadySubscribed->count(); }; if ($unique()) { diff --git a/packages/Webkul/Shop/src/Mail/SubscriptionEmail.php b/packages/Webkul/Shop/src/Mail/SubscriptionEmail.php index a94877ca2..40d580a76 100755 --- a/packages/Webkul/Shop/src/Mail/SubscriptionEmail.php +++ b/packages/Webkul/Shop/src/Mail/SubscriptionEmail.php @@ -34,7 +34,6 @@ class SubscriptionEmail extends Mailable ->with('data', [ 'content' => 'You Are Subscribed', 'token' => $this->subscriptionData['token'], - ] - ); + ]); } } \ No newline at end of file diff --git a/packages/Webkul/SocialLogin/src/Repositories/CustomerSocialAccountRepository.php b/packages/Webkul/SocialLogin/src/Repositories/CustomerSocialAccountRepository.php index ff7bb6e53..f697b3af2 100644 --- a/packages/Webkul/SocialLogin/src/Repositories/CustomerSocialAccountRepository.php +++ b/packages/Webkul/SocialLogin/src/Repositories/CustomerSocialAccountRepository.php @@ -2,7 +2,7 @@ namespace Webkul\SocialLogin\Repositories; -use Illuminate\Container\Container as App; +use Illuminate\Container\Container; use Webkul\Core\Eloquent\Repository; use Webkul\Customer\Repositories\CustomerRepository; use Webkul\Customer\Repositories\CustomerGroupRepository; @@ -14,18 +14,18 @@ class CustomerSocialAccountRepository extends Repository * * @param \Webkul\Customer\Repositories\CustomerRepository $customerRepository * @param \Webkul\Customer\Repositories\CustomerGroupRepository $customerGroupRepository - * @param \Illuminate\Container\Container $app + * @param \Illuminate\Container\Container $container * @return void */ public function __construct( protected CustomerRepository $customerRepository, protected CustomerGroupRepository $customerGroupRepository, - App $app + Container $container ) { $this->_config = request('_config'); - parent::__construct($app); + parent::__construct($container); } /** @@ -63,7 +63,7 @@ class CustomerSocialAccountRepository extends Repository 'first_name' => $names['first_name'], 'last_name' => $names['last_name'], 'status' => 1, - 'is_verified' => core()->getConfigData('customer.settings.email.verification') ? 0 : 1, + 'is_verified' => ! core()->getConfigData('customer.settings.email.verification'), 'customer_group_id' => $this->customerGroupRepository->findOneWhere(['code' => 'general'])->id ]); } diff --git a/packages/Webkul/Tax/src/Database/Factories/TaxCategoryFactory.php b/packages/Webkul/Tax/src/Database/Factories/TaxCategoryFactory.php index 21fd80b27..d185fc25d 100644 --- a/packages/Webkul/Tax/src/Database/Factories/TaxCategoryFactory.php +++ b/packages/Webkul/Tax/src/Database/Factories/TaxCategoryFactory.php @@ -22,8 +22,8 @@ class TaxCategoryFactory extends Factory public function definition(): array { return [ - 'code' => $this->faker->uuid, - 'name' => $this->faker->words(2, true), + 'code' => $this->faker->uuid, + 'name' => $this->faker->words(2, true), 'description' => $this->faker->sentence(10), ]; } diff --git a/packages/Webkul/Tax/src/Database/Factories/TaxMapFactory.php b/packages/Webkul/Tax/src/Database/Factories/TaxMapFactory.php index a8cb272ee..de5de85e4 100644 --- a/packages/Webkul/Tax/src/Database/Factories/TaxMapFactory.php +++ b/packages/Webkul/Tax/src/Database/Factories/TaxMapFactory.php @@ -25,7 +25,7 @@ class TaxMapFactory extends Factory { return [ 'tax_category_id' => TaxCategory::factory(), - 'tax_rate_id' => TaxRate::factory(), + 'tax_rate_id' => TaxRate::factory(), ]; } } diff --git a/packages/Webkul/Tax/src/Database/Factories/TaxRateFactory.php b/packages/Webkul/Tax/src/Database/Factories/TaxRateFactory.php index a37c9eaa1..5231cdae3 100644 --- a/packages/Webkul/Tax/src/Database/Factories/TaxRateFactory.php +++ b/packages/Webkul/Tax/src/Database/Factories/TaxRateFactory.php @@ -23,13 +23,13 @@ class TaxRateFactory extends Factory { return [ 'identifier' => $this->faker->uuid, - 'is_zip' => 0, - 'zip_code' => '*', - 'zip_from' => null, - 'zip_to' => null, - 'state' => '', - 'country' => $this->faker->countryCode, - 'tax_rate' => $this->faker->randomFloat(2, 3, 25), + 'is_zip' => 0, + 'zip_code' => '*', + 'zip_from' => null, + 'zip_to' => null, + 'state' => '', + 'country' => $this->faker->countryCode, + 'tax_rate' => $this->faker->randomFloat(2, 3, 25), ]; } } \ No newline at end of file diff --git a/packages/Webkul/Tax/src/Http/Controllers/TaxCategoryController.php b/packages/Webkul/Tax/src/Http/Controllers/TaxCategoryController.php index 26c453d83..b2641bd82 100755 --- a/packages/Webkul/Tax/src/Http/Controllers/TaxCategoryController.php +++ b/packages/Webkul/Tax/src/Http/Controllers/TaxCategoryController.php @@ -2,6 +2,7 @@ namespace Webkul\Tax\Http\Controllers; +use Illuminate\Support\Facades\Event; use Webkul\Tax\Repositories\TaxCategoryRepository; use Webkul\Tax\Repositories\TaxRateRepository; @@ -55,10 +56,14 @@ class TaxCategoryController extends Controller 'taxrates' => 'array|required', ]); + Event::dispatch('tax.tax_category.create.before'); + $taxCategory = $this->taxCategoryRepository->create($data); $this->taxCategoryRepository->attachOrDetach($taxCategory, $data['taxrates']); + Event::dispatch('tax.tax_category.create.after', $taxCategory); + session()->flash('success', trans('admin::app.settings.tax-categories.create-success')); return redirect()->route($this->_config['redirect']); @@ -94,16 +99,14 @@ class TaxCategoryController extends Controller $data = request()->input(); + Event::dispatch('tax.tax_category.update.before', $id); + $taxCategory = $this->taxCategoryRepository->update($data, $id); - if (! $taxCategory) { - session()->flash('error', trans('admin::app.settings.tax-categories.update-error')); - - return redirect()->back(); - } - $this->taxCategoryRepository->attachOrDetach($taxCategory, $data['taxrates']); + Event::dispatch('tax.tax_category.update.after', $taxCategory); + session()->flash('success', trans('admin::app.settings.tax-categories.update-success')); return redirect()->route($this->_config['redirect']); @@ -120,8 +123,12 @@ class TaxCategoryController extends Controller $this->taxCategoryRepository->findOrFail($id); try { + Event::dispatch('tax.tax_category.delete.before', $id); + $this->taxCategoryRepository->delete($id); + Event::dispatch('tax.tax_category.delete.after', $id); + return response()->json(['message' => trans('admin::app.response.delete-success', ['name' => 'Tax Category'])]); } catch (\Exception $e) {} diff --git a/packages/Webkul/Tax/src/Http/Controllers/TaxRateController.php b/packages/Webkul/Tax/src/Http/Controllers/TaxRateController.php index 62f20ed58..d570c0d18 100755 --- a/packages/Webkul/Tax/src/Http/Controllers/TaxRateController.php +++ b/packages/Webkul/Tax/src/Http/Controllers/TaxRateController.php @@ -2,6 +2,7 @@ namespace Webkul\Tax\Http\Controllers; +use Illuminate\Support\Facades\Event; use Illuminate\Support\Facades\Validator; use Maatwebsite\Excel\Validators\Failure; use Webkul\Admin\DataGrids\TaxRateDataGrid; @@ -81,7 +82,11 @@ class TaxRateController extends Controller unset($data['zip_code']); } - $this->taxRateRepository->create($data); + Event::dispatch('tax.tax_rate.create.before'); + + $taxRate = $this->taxRateRepository->create($data); + + Event::dispatch('tax.tax_rate.create.after', $taxRate); session()->flash('success', trans('admin::app.settings.tax-rates.create-success')); @@ -119,7 +124,11 @@ class TaxRateController extends Controller 'tax_rate' => 'required|numeric|min:0.0001', ]); - $this->taxRateRepository->update(request()->input(), $id); + Event::dispatch('tax.tax_rate.update.before', $id); + + $taxRate = $this->taxRateRepository->update(request()->input(), $id); + + Event::dispatch('tax.tax_rate.update.after', $taxRate); session()->flash('success', trans('admin::app.settings.tax-rates.update-success')); @@ -137,8 +146,12 @@ class TaxRateController extends Controller $this->taxRateRepository->findOrFail($id); try { + Event::dispatch('tax.tax_rate.delete.before', $id); + $this->taxRateRepository->delete($id); + Event::dispatch('tax.tax_rate.delete.after', $id); + return response()->json(['message' => trans('admin::app.response.delete-success', ['name' => 'Tax Rate'])]); } catch (\Exception $e) {} diff --git a/packages/Webkul/Tax/src/Repositories/TaxCategoryRepository.php b/packages/Webkul/Tax/src/Repositories/TaxCategoryRepository.php index e3ebfb8ec..3f7b9cc4d 100755 --- a/packages/Webkul/Tax/src/Repositories/TaxCategoryRepository.php +++ b/packages/Webkul/Tax/src/Repositories/TaxCategoryRepository.php @@ -2,7 +2,6 @@ namespace Webkul\Tax\Repositories; -use Illuminate\Support\Facades\Event; use Webkul\Core\Eloquent\Repository; class TaxCategoryRepository extends Repository @@ -17,56 +16,6 @@ class TaxCategoryRepository extends Repository return \Webkul\Tax\Contracts\TaxCategory::class; } - /** - * Create. - * - * @param array $attributes - * @return mixed - */ - public function create(array $attributes) - { - Event::dispatch('tax.tax_category.create.before'); - - $taxCategory = parent::create($attributes); - - Event::dispatch('tax.tax_category.create.after', $taxCategory); - - return $taxCategory; - } - - /** - * Update. - * - * @param array $attributes - * @param $id - * @return mixed - */ - public function update(array $attributes, $id) - { - Event::dispatch('tax.tax_category.update.before', $id); - - $taxCategory = parent::update($attributes, $id); - - Event::dispatch('tax.tax_category.update.after', $taxCategory); - - return $taxCategory; - } - - /** - * Delete. - * - * @param int $id - * @return bool - */ - public function delete($id) - { - Event::dispatch('tax.tax_category.delete.before', $id); - - parent::delete($id); - - Event::dispatch('tax.tax_category.delete.after', $id); - } - /** * Attach or detach. * diff --git a/packages/Webkul/Tax/src/Repositories/TaxMapRepository.php b/packages/Webkul/Tax/src/Repositories/TaxMapRepository.php index 5916dc00c..d6ecae105 100755 --- a/packages/Webkul/Tax/src/Repositories/TaxMapRepository.php +++ b/packages/Webkul/Tax/src/Repositories/TaxMapRepository.php @@ -15,30 +15,4 @@ class TaxMapRepository extends Repository { return 'Webkul\Tax\Contracts\TaxMap'; } - - /** - * @param array $data - * @return \Webkul\Tax\Contracts\TaxMap - */ - public function create(array $data) - { - $taxMap = $this->model->create($data); - - return $taxMap; - } - - /** - * @param array $data - * @param int $id - * @param string $attribute - * @return \Webkul\Tax\Contracts\TaxMap - */ - public function update(array $data, $id, $attribute = "id") - { - $taxMap = $this->find($id); - - $taxMap->update($data); - - return $taxMap; - } } \ No newline at end of file diff --git a/packages/Webkul/Tax/src/Repositories/TaxRateRepository.php b/packages/Webkul/Tax/src/Repositories/TaxRateRepository.php index a3a5f5084..efe87d58c 100755 --- a/packages/Webkul/Tax/src/Repositories/TaxRateRepository.php +++ b/packages/Webkul/Tax/src/Repositories/TaxRateRepository.php @@ -2,7 +2,6 @@ namespace Webkul\Tax\Repositories; -use Illuminate\Support\Facades\Event; use Webkul\Core\Eloquent\Repository; class TaxRateRepository extends Repository @@ -16,54 +15,4 @@ class TaxRateRepository extends Repository { return \Webkul\Tax\Contracts\TaxRate::class; } - - /** - * Create. - * - * @param array $attributes - * @return mixed - */ - public function create(array $attributes) - { - Event::dispatch('tax.tax_rate.create.before'); - - $taxRate = parent::create($attributes); - - Event::dispatch('tax.tax_rate.create.after', $taxRate); - - return $taxRate; - } - - /** - * Update. - * - * @param array $attributes - * @param $id - * @return mixed - */ - public function update(array $attributes, $id) - { - Event::dispatch('tax.tax_rate.update.before', $id); - - $taxRate = parent::update($attributes, $id); - - Event::dispatch('tax.tax_rate.update.after', $taxRate); - - return $taxRate; - } - - /** - * Delete. - * - * @param int $id - * @return bool - */ - public function delete($id) - { - Event::dispatch('tax.tax_rate.delete.before', $id); - - parent::delete($id); - - Event::dispatch('tax.tax_rate.delete.after', $id); - } } diff --git a/packages/Webkul/User/src/Http/Controllers/RoleController.php b/packages/Webkul/User/src/Http/Controllers/RoleController.php index 07f28543e..865b14ae5 100755 --- a/packages/Webkul/User/src/Http/Controllers/RoleController.php +++ b/packages/Webkul/User/src/Http/Controllers/RoleController.php @@ -2,6 +2,7 @@ namespace Webkul\User\Http\Controllers; +use Illuminate\Support\Facades\Event; use Webkul\Admin\DataGrids\RolesDataGrid; use Webkul\User\Repositories\AdminRepository; use Webkul\User\Repositories\RoleRepository; @@ -66,7 +67,11 @@ class RoleController extends Controller 'permission_type' => 'required', ]); - $this->roleRepository->create(request()->all()); + Event::dispatch('user.role.create.before'); + + $role = $this->roleRepository->create(request()->all()); + + Event::dispatch('user.role.create.after', $role); session()->flash('success', trans('admin::app.response.create-success', ['name' => 'Role'])); @@ -99,12 +104,10 @@ class RoleController extends Controller 'permission_type' => 'required', ]); - $params = request()->all(); - /** * Check for other admins if the role has been changed from all to custom. */ - $isChangedFromAll = $params['permission_type'] == 'custom' && $this->roleRepository->find($id)->permission_type == 'all'; + $isChangedFromAll = request('permission_type') == 'custom' && $this->roleRepository->find($id)->permission_type == 'all'; if ( $isChangedFromAll @@ -115,7 +118,13 @@ class RoleController extends Controller return redirect()->route($this->_config['redirect']); } - $this->roleRepository->update($params, $id); + Event::dispatch('user.role.update.before', $id); + + $role = $this->roleRepository->update(array_merge(request()->all(), [ + 'permissions' => request()->has('permissions') ? request('permissions') : [] + ]), $id); + + Event::dispatch('user.role.update.after', $role); session()->flash('success', trans('admin::app.response.update-success', ['name' => 'Role'])); @@ -141,8 +150,12 @@ class RoleController extends Controller } try { + Event::dispatch('user.role.delete.before', $id); + $this->roleRepository->delete($id); + Event::dispatch('user.role.delete.after', $id); + return response()->json(['message' => trans('admin::app.response.delete-success', ['name' => 'Role'])]); } catch (\Exception $e) {} diff --git a/packages/Webkul/User/src/Http/Controllers/UserController.php b/packages/Webkul/User/src/Http/Controllers/UserController.php index 8b8398a5b..cbc8ca810 100755 --- a/packages/Webkul/User/src/Http/Controllers/UserController.php +++ b/packages/Webkul/User/src/Http/Controllers/UserController.php @@ -79,7 +79,11 @@ class UserController extends Controller $data['api_token'] = Str::random(80); } - $this->adminRepository->create($data); + Event::dispatch('user.admin.create.before'); + + $admin = $this->adminRepository->create($data); + + Event::dispatch('user.admin.create.after', $admin); session()->flash('success', trans('admin::app.response.create-success', ['name' => 'User'])); @@ -116,7 +120,18 @@ class UserController extends Controller return $data; } - $this->adminRepository->update($data, $id); + Event::dispatch('user.admin.update.before', $id); + + $admin = $this->adminRepository->update($data, $id); + + if ( + isset($data['password']) + && $data['password'] + ) { + Event::dispatch('user.admin.update-password', $admin); + } + + Event::dispatch('user.admin.update.after', $admin); session()->flash('success', trans('admin::app.response.update-success', ['name' => 'User'])); @@ -144,8 +159,12 @@ class UserController extends Controller } try { + Event::dispatch('user.admin.delete.before', $id); + $this->adminRepository->delete($id); + Event::dispatch('user.admin.delete.after', $id); + return response()->json(['message' => trans('admin::app.response.delete-success', ['name' => 'Admin'])]); } catch (\Exception $e) {} @@ -222,7 +241,7 @@ class UserController extends Controller /** * Is user with `permission_type` all changed status. */ - $data['status'] = isset($data['status']) ? 1 : 0; + $data['status'] = isset($data['status']); $isStatusChangedToInactive = (int) $data['status'] === 0 && (int) $user->status === 1; diff --git a/packages/Webkul/User/src/Http/Requests/UserForm.php b/packages/Webkul/User/src/Http/Requests/UserForm.php index 2aa5bcb14..f0c38271d 100755 --- a/packages/Webkul/User/src/Http/Requests/UserForm.php +++ b/packages/Webkul/User/src/Http/Requests/UserForm.php @@ -24,12 +24,12 @@ class UserForm extends FormRequest public function rules() { $rules = [ - 'name' => 'required', - 'email' => 'email|unique:admins,email', - 'password' => 'nullable', + 'name' => 'required', + 'email' => 'email|unique:admins,email', + 'password' => 'nullable', 'password_confirmation' => 'nullable|required_with:password|same:password', - 'status' => 'sometimes', - 'role_id' => 'required', + 'status' => 'sometimes', + 'role_id' => 'required', ]; if ($this->method() == 'PUT') { diff --git a/packages/Webkul/User/src/Repositories/AdminRepository.php b/packages/Webkul/User/src/Repositories/AdminRepository.php index b8970e7a0..158f2c8d9 100755 --- a/packages/Webkul/User/src/Repositories/AdminRepository.php +++ b/packages/Webkul/User/src/Repositories/AdminRepository.php @@ -2,7 +2,6 @@ namespace Webkul\User\Repositories; -use Illuminate\Support\Facades\Event; use Webkul\Core\Eloquent\Repository; class AdminRepository extends Repository @@ -17,63 +16,6 @@ class AdminRepository extends Repository return \Webkul\User\Contracts\Admin::class; } - /** - * Create. - * - * @param array $attributes - * @return mixed - */ - public function create(array $attributes) - { - Event::dispatch('user.admin.create.before'); - - $admin = parent::create($attributes); - - Event::dispatch('user.admin.create.after', $admin); - - return $admin; - } - - /** - * Update. - * - * @param array $attributes - * @param $id - * @return mixed - */ - public function update(array $attributes, $id) - { - Event::dispatch('user.admin.update.before', $id); - - $admin = parent::update($attributes, $id); - - if ( - isset($attributes['password']) - && $attributes['password'] - ) { - Event::dispatch('user.admin.update-password', $admin); - } - - Event::dispatch('user.admin.update.after', $admin); - - return $admin; - } - - /** - * Delete. - * - * @param int $id - * @return bool - */ - public function delete($id) - { - Event::dispatch('user.admin.delete.before', $id); - - parent::delete($id); - - Event::dispatch('user.admin.delete.after', $id); - } - /** * Count admins with all access. * diff --git a/packages/Webkul/User/src/Repositories/RoleRepository.php b/packages/Webkul/User/src/Repositories/RoleRepository.php index e26f2e7c4..4f0869593 100755 --- a/packages/Webkul/User/src/Repositories/RoleRepository.php +++ b/packages/Webkul/User/src/Repositories/RoleRepository.php @@ -2,7 +2,6 @@ namespace Webkul\User\Repositories; -use Illuminate\Support\Facades\Event; use Webkul\Core\Eloquent\Repository; class RoleRepository extends Repository @@ -16,63 +15,4 @@ class RoleRepository extends Repository { return \Webkul\User\Contracts\Role::class; } - - /** - * Create. - * - * @param array $attributes - * @return mixed - */ - public function create(array $attributes) - { - Event::dispatch('user.role.create.before'); - - $role = parent::create($attributes); - - Event::dispatch('user.role.create.after', $role); - - return $role; - } - - /** - * Update method. - * - * @param array $data - * @param int $id - * @return \Webkul\User\Contracts\Role - */ - public function update(array $data, $id) - { - Event::dispatch('user.role.update.before', $id); - - /* making collection for ease */ - $requestedData = collect($data); - - /* updating role data */ - $role = $this->find($id); - $role->name = $requestedData['name']; - $role->description = $requestedData['description']; - $role->permission_type = $requestedData['permission_type']; - $role->permissions = $requestedData->has('permissions') ? $requestedData['permissions'] : []; - $role->update(); - - Event::dispatch('user.role.update.after', $role); - - return $role; - } - - /** - * Delete. - * - * @param int $id - * @return bool - */ - public function delete($id) - { - Event::dispatch('user.role.delete.before', $id); - - parent::delete($id); - - Event::dispatch('user.role.delete.after', $id); - } } diff --git a/packages/Webkul/Velocity/src/Helpers/Helper.php b/packages/Webkul/Velocity/src/Helpers/Helper.php index 9fac33231..998b0ea8e 100644 --- a/packages/Webkul/Velocity/src/Helpers/Helper.php +++ b/packages/Webkul/Velocity/src/Helpers/Helper.php @@ -298,8 +298,7 @@ class Helper extends Review 'product' => $product, 'addWishlistClass' => ! (isset($list) && $list) ? '' : '', - 'showCompare' => core()->getConfigData('general.content.shop.compare_option') == '1' - ? true : false, + 'showCompare' => core()->getConfigData('general.content.shop.compare_option') == '1', 'btnText' => (isset($metaInformation['btnText']) && $metaInformation['btnText']) ? $metaInformation['btnText'] : null, diff --git a/packages/Webkul/Velocity/src/Http/Controllers/Admin/CategoryController.php b/packages/Webkul/Velocity/src/Http/Controllers/Admin/CategoryController.php index 53a7b181f..a90467770 100644 --- a/packages/Webkul/Velocity/src/Http/Controllers/Admin/CategoryController.php +++ b/packages/Webkul/Velocity/src/Http/Controllers/Admin/CategoryController.php @@ -22,6 +22,7 @@ class CategoryController extends Controller { $this->_config = request('_config'); } + /** * Display a listing of the resource. * diff --git a/packages/Webkul/Velocity/src/Http/Controllers/Admin/ConfigurationController.php b/packages/Webkul/Velocity/src/Http/Controllers/Admin/ConfigurationController.php index a32d0853b..23651e213 100644 --- a/packages/Webkul/Velocity/src/Http/Controllers/Admin/ConfigurationController.php +++ b/packages/Webkul/Velocity/src/Http/Controllers/Admin/ConfigurationController.php @@ -129,6 +129,7 @@ class ConfigurationController extends Controller $dir = 'velocity/images'; $saveData = $advertisement; + foreach ($data as $imageId => $image) { if ($image != "") { $file = 'images.' . $index . '.' . $imageId; @@ -293,7 +294,7 @@ class ConfigurationController extends Controller Storage::makeDirectory($copiedPath); - if ( File::copy($resourceImagePath, storage_path('app/public/' . $image)) ) { + if (File::copy($resourceImagePath, storage_path('app/public/' . $image))) { $result = $image; } diff --git a/packages/Webkul/Velocity/src/Http/Controllers/Shop/ComparisonController.php b/packages/Webkul/Velocity/src/Http/Controllers/Shop/ComparisonController.php index 30f9fd74d..cb4c9a8e2 100644 --- a/packages/Webkul/Velocity/src/Http/Controllers/Shop/ComparisonController.php +++ b/packages/Webkul/Velocity/src/Http/Controllers/Shop/ComparisonController.php @@ -75,11 +75,11 @@ class ComparisonController extends Controller $productFlatRepository = app('\Webkul\Product\Models\ProductFlat'); $productFlat = $productFlatRepository - ->where('id', $productId) - ->orWhere('parent_id', $productId) - ->orWhere('id', $productId) - ->get() - ->first(); + ->where('id', $productId) + ->orWhere('parent_id', $productId) + ->orWhere('id', $productId) + ->get() + ->first(); if ($productFlat == null) { return response()->json([ @@ -123,9 +123,11 @@ class ComparisonController extends Controller if (request()->get('productId') == 'all') { // delete all $customerId = auth()->guard('customer')->user()->id; + $this->compareProductsRepository->deleteWhere([ 'customer_id' => auth()->guard('customer')->user()->id, ]); + $message = trans('velocity::app.customer.compare.removed-all'); } else { // delete individual @@ -133,6 +135,7 @@ class ComparisonController extends Controller 'product_flat_id' => request()->get('productId'), 'customer_id' => auth()->guard('customer')->user()->id, ]); + $message = trans('velocity::app.customer.compare.removed'); } diff --git a/packages/Webkul/Velocity/src/Repositories/CategoryRepository.php b/packages/Webkul/Velocity/src/Repositories/CategoryRepository.php index 741a7fa28..f4713179e 100644 --- a/packages/Webkul/Velocity/src/Repositories/CategoryRepository.php +++ b/packages/Webkul/Velocity/src/Repositories/CategoryRepository.php @@ -3,7 +3,7 @@ namespace Webkul\Velocity\Repositories; use Webkul\Core\Eloquent\Repository; -use Illuminate\Container\Container as App; +use Illuminate\Container\Container; use Prettus\Repository\Traits\CacheableRepository; class CategoryRepository extends Repository @@ -14,15 +14,15 @@ class CategoryRepository extends Repository * Create a new repository instance. * * @param \Webkul\Category\Repositories\CategoryRepository $categoryRepository - * @param \Illuminate\Container\Container $app + * @param \Illuminate\Container\Container $container * @return void */ public function __construct( protected CategoryRepository $categoryRepository, - App $app + Container $container ) { - parent::__construct($app); + parent::__construct($container); } /** diff --git a/packages/Webkul/Velocity/src/Repositories/ContentRepository.php b/packages/Webkul/Velocity/src/Repositories/ContentRepository.php index be03bc7da..1341a5d08 100644 --- a/packages/Webkul/Velocity/src/Repositories/ContentRepository.php +++ b/packages/Webkul/Velocity/src/Repositories/ContentRepository.php @@ -3,7 +3,7 @@ namespace Webkul\Velocity\Repositories; use Webkul\Core\Eloquent\Repository; -use Illuminate\Container\Container as App; +use Illuminate\Container\Container; use Webkul\Product\Repositories\ProductRepository; use Prettus\Repository\Traits\CacheableRepository; @@ -15,15 +15,15 @@ class ContentRepository extends Repository * Create a new controller instance. * * @param \Webkul\Product\Repositories\ProductRepository $productRepository - * @param \Illuminate\Container\Container $app + * @param \Illuminate\Container\Container $container * @return void */ public function __construct( protected ProductRepository $productRepository, - App $app + Container $container ) { - parent::__construct($app); + parent::__construct($container); } /** @@ -42,8 +42,6 @@ class ContentRepository extends Repository */ public function create(array $data) { - // Event::fire('velocity.content.create.before'); - if ( isset($data['locale']) && $data['locale'] == 'all' @@ -61,26 +59,6 @@ class ContentRepository extends Repository $content = $this->model->create($data); - // Event::fire('velocity.content.create.after', $content); - - return $content; - } - - /** - * @param array $data - * @param int $id - * @return \Webkul\Velocity\Models\Content - */ - public function update(array $data, $id) - { - $content = $this->find($id); - - // Event::fire('velocity.content.update.before', $id); - - $content->update($data); - - // Event::fire('velocity.content.update.after', $id); - return $content; } diff --git a/packages/Webkul/Velocity/src/Repositories/Product/ProductRepository.php b/packages/Webkul/Velocity/src/Repositories/Product/ProductRepository.php index 6765f56b4..addc3f507 100644 --- a/packages/Webkul/Velocity/src/Repositories/Product/ProductRepository.php +++ b/packages/Webkul/Velocity/src/Repositories/Product/ProductRepository.php @@ -3,7 +3,7 @@ namespace Webkul\Velocity\Repositories\Product; use Webkul\Core\Eloquent\Repository; -use Illuminate\Container\Container as App; +use Illuminate\Container\Container; use Webkul\Product\Models\ProductAttributeValue; use Prettus\Repository\Traits\CacheableRepository; use Webkul\Product\Repositories\ProductFlatRepository; @@ -17,15 +17,15 @@ class ProductRepository extends Repository * Create a new controller instance. * * @param \Webkul\Attribute\Repositories\AttributeRepository $attributeRepository - * @param \Illuminate\Container\Container $app + * @param \Illuminate\Container\Container $container * @return void */ public function __construct( protected AttributeRepository $attributeRepository, - App $app + Container $container ) { - parent::__construct($app); + parent::__construct($container); } /** @@ -52,13 +52,13 @@ class ProductRepository extends Repository $locale = core()->getRequestedLocaleCode(); return $query->distinct() - ->addSelect('product_flat.*') - ->where('product_flat.status', 1) - ->where('product_flat.visible_individually', 1) - ->where('product_flat.featured', 1) - ->where('product_flat.channel', $channel) - ->where('product_flat.locale', $locale) - ->orderBy('product_id', 'desc'); + ->addSelect('product_flat.*') + ->where('product_flat.status', 1) + ->where('product_flat.visible_individually', 1) + ->where('product_flat.featured', 1) + ->where('product_flat.channel', $channel) + ->where('product_flat.locale', $locale) + ->orderBy('product_id', 'desc'); })->paginate($count); return $results; @@ -78,13 +78,13 @@ class ProductRepository extends Repository $locale = core()->getRequestedLocaleCode(); return $query->distinct() - ->addSelect('product_flat.*') - ->where('product_flat.status', 1) - ->where('product_flat.visible_individually', 1) - ->where('product_flat.new', 1) - ->where('product_flat.channel', $channel) - ->where('product_flat.locale', $locale) - ->orderBy('product_id', 'desc'); + ->addSelect('product_flat.*') + ->where('product_flat.status', 1) + ->where('product_flat.visible_individually', 1) + ->where('product_flat.new', 1) + ->where('product_flat.channel', $channel) + ->where('product_flat.locale', $locale) + ->orderBy('product_id', 'desc'); })->paginate($count); return $results; @@ -112,14 +112,14 @@ class ProductRepository extends Repository } $query = $query->distinct() - ->addSelect('product_flat.*') - ->leftJoin('products', 'product_flat.product_id', '=', 'products.id') - ->leftJoin('product_categories', 'products.id', '=', 'product_categories.product_id') - ->where('product_flat.status', 1) - ->where('product_flat.visible_individually', 1) - ->where('product_flat.channel', $channel) - ->where('product_flat.locale', $locale) - ->whereNotNull('product_flat.url_key'); + ->addSelect('product_flat.*') + ->leftJoin('products', 'product_flat.product_id', '=', 'products.id') + ->leftJoin('product_categories', 'products.id', '=', 'product_categories.product_id') + ->where('product_flat.status', 1) + ->where('product_flat.visible_individually', 1) + ->where('product_flat.channel', $channel) + ->where('product_flat.locale', $locale) + ->whereNotNull('product_flat.url_key'); if ($term) $query->where('product_flat.name', 'like', '%' . urldecode($term) . '%'); @@ -179,7 +179,7 @@ class ProductRepository extends Repository }); } else { $query2->where('product_flat.min_price', '>=', core()->convertToBasePrice(current($temp))) - ->where('product_flat.min_price', '<=', core()->convertToBasePrice(end($temp))); + ->where('product_flat.min_price', '<=', core()->convertToBasePrice(end($temp))); } } }); diff --git a/packages/Webkul/Velocity/src/Repositories/ReviewRepository.php b/packages/Webkul/Velocity/src/Repositories/ReviewRepository.php index 6ec9e3ddd..16039b269 100644 --- a/packages/Webkul/Velocity/src/Repositories/ReviewRepository.php +++ b/packages/Webkul/Velocity/src/Repositories/ReviewRepository.php @@ -27,8 +27,6 @@ class ReviewRepository extends Repository function getAll() { - $reviews = $this->model->get(); - - return $reviews; + return $this->all(); } } \ No newline at end of file