From 3f9c0ac6cc36abfc975690f60f61019298ec1c41 Mon Sep 17 00:00:00 2001 From: Devansh Date: Tue, 11 Jan 2022 14:20:24 +0530 Subject: [PATCH] Some More Events Moved --- .../Controllers/ExchangeRateController.php | 34 +++------- .../src/Http/Controllers/LocaleController.php | 27 +++----- .../src/Repositories/CurrencyRepository.php | 2 +- .../Repositories/ExchangeRateRepository.php | 61 ++++++++++++++++-- .../src/Repositories/LocaleRepository.php | 61 ++++++++++++++++-- .../Controllers/InventorySourceController.php | 19 +----- .../InventorySourceRepository.php | 59 +++++++++++++++-- .../Controllers/TaxCategoryController.php | 38 +++-------- .../Http/Controllers/TaxRateController.php | 49 ++++++--------- .../Repositories/TaxCategoryRepository.php | 63 +++++++++++++++++-- .../src/Repositories/TaxRateRepository.php | 59 +++++++++++++++-- .../src/Http/Controllers/RoleController.php | 19 +----- .../src/Http/Controllers/UserController.php | 22 +------ .../User/src/Repositories/AdminRepository.php | 57 ++++++++++++++++- .../User/src/Repositories/RoleRepository.php | 49 ++++++++++++--- 15 files changed, 433 insertions(+), 186 deletions(-) diff --git a/packages/Webkul/Core/src/Http/Controllers/ExchangeRateController.php b/packages/Webkul/Core/src/Http/Controllers/ExchangeRateController.php index 43c3f049c..84444a04a 100755 --- a/packages/Webkul/Core/src/Http/Controllers/ExchangeRateController.php +++ b/packages/Webkul/Core/src/Http/Controllers/ExchangeRateController.php @@ -2,28 +2,27 @@ namespace Webkul\Core\Http\Controllers; -use Illuminate\Support\Facades\Event; -use Webkul\Core\Repositories\ExchangeRateRepository; use Webkul\Core\Repositories\CurrencyRepository; +use Webkul\Core\Repositories\ExchangeRateRepository; class ExchangeRateController extends Controller { /** - * Contains route related configuration + * Contains route related configuration. * * @var array */ protected $_config; /** - * ExchangeRateRepository instance + * Exchange rate repository instance. * * @var \Webkul\Core\Repositories\ExchangeRateRepository */ protected $exchangeRateRepository; /** - * CurrencyRepository object + * Currency repository instance. * * @var \Webkul\Core\Repositories\CurrencyRepository */ @@ -39,8 +38,7 @@ class ExchangeRateController extends Controller public function __construct( ExchangeRateRepository $exchangeRateRepository, CurrencyRepository $currencyRepository - ) - { + ) { $this->exchangeRateRepository = $exchangeRateRepository; $this->currencyRepository = $currencyRepository; @@ -82,11 +80,7 @@ class ExchangeRateController extends Controller 'rate' => 'required|numeric', ]); - Event::dispatch('core.exchange_rate.create.before'); - - $exchangeRate = $this->exchangeRateRepository->create(request()->all()); - - Event::dispatch('core.exchange_rate.create.after', $exchangeRate); + $this->exchangeRateRepository->create(request()->all()); session()->flash('success', trans('admin::app.settings.exchange_rates.create-success')); @@ -121,11 +115,7 @@ class ExchangeRateController extends Controller 'rate' => 'required|numeric', ]); - Event::dispatch('core.exchange_rate.update.before', $id); - - $exchangeRate = $this->exchangeRateRepository->update(request()->all(), $id); - - Event::dispatch('core.exchange_rate.update.after', $exchangeRate); + $this->exchangeRateRepository->update(request()->all(), $id); session()->flash('success', trans('admin::app.settings.exchange_rates.update-success')); @@ -143,7 +133,7 @@ class ExchangeRateController extends Controller app(config('services.exchange-api.' . config('services.exchange-api.default') . '.class'))->updateRates(); session()->flash('success', trans('admin::app.settings.exchange_rates.update-success')); - } catch(\Exception $e) { + } catch (\Exception $e) { session()->flash('error', $e->getMessage()); } @@ -158,21 +148,17 @@ class ExchangeRateController extends Controller */ public function destroy($id) { - $exchangeRate = $this->exchangeRateRepository->findOrFail($id); + $this->exchangeRateRepository->findOrFail($id); try { - Event::dispatch('core.exchange_rate.delete.before', $id); - $this->exchangeRateRepository->delete($id); session()->flash('success', trans('admin::app.settings.exchange_rates.delete-success')); - Event::dispatch('core.exchange_rate.delete.after', $id); - return response()->json(['message' => true], 200); } catch (\Exception $e) { report($e); - + session()->flash('error', trans('admin::app.response.delete-error', ['name' => 'Exchange rate'])); } diff --git a/packages/Webkul/Core/src/Http/Controllers/LocaleController.php b/packages/Webkul/Core/src/Http/Controllers/LocaleController.php index 5ba4bc37b..73126af01 100755 --- a/packages/Webkul/Core/src/Http/Controllers/LocaleController.php +++ b/packages/Webkul/Core/src/Http/Controllers/LocaleController.php @@ -2,20 +2,19 @@ namespace Webkul\Core\Http\Controllers; -use Illuminate\Support\Facades\Event; use Webkul\Core\Repositories\LocaleRepository; class LocaleController extends Controller { /** - * Contains route related configuration + * Contains route related configuration. * * @var array */ protected $_config; /** - * LocaleRepository object + * Locale repository instance. * * @var \Webkul\Core\Repositories\LocaleRepository */ @@ -67,11 +66,7 @@ class LocaleController extends Controller 'direction' => 'in:ltr,rtl', ]); - Event::dispatch('core.locale.create.before'); - - $locale = $this->localeRepository->create(request()->all()); - - Event::dispatch('core.locale.create.after', $locale); + $this->localeRepository->create(request()->all()); session()->flash('success', trans('admin::app.settings.locales.create-success')); @@ -105,11 +100,7 @@ class LocaleController extends Controller 'direction' => 'in:ltr,rtl', ]); - Event::dispatch('core.locale.update.before', $id); - - $locale = $this->localeRepository->update(request()->all(), $id); - - Event::dispatch('core.locale.update.after', $locale); + $this->localeRepository->update(request()->all(), $id); session()->flash('success', trans('admin::app.settings.locales.update-success')); @@ -124,26 +115,22 @@ class LocaleController extends Controller */ public function destroy($id) { - $locale = $this->localeRepository->findOrFail($id); + $this->localeRepository->findOrFail($id); if ($this->localeRepository->count() == 1) { session()->flash('warning', trans('admin::app.settings.locales.last-delete-error')); } else { try { - Event::dispatch('core.locale.delete.before', $id); - $this->localeRepository->delete($id); - Event::dispatch('core.locale.delete.after', $id); - session()->flash('success', trans('admin::app.settings.locales.delete-success')); return response()->json(['message' => true], 200); - } catch(\Exception $e) { + } catch (\Exception $e) { session()->flash('error', trans('admin::app.response.delete-failed', ['name' => 'Locale'])); } } return response()->json(['message' => false], 400); } -} \ No newline at end of file +} diff --git a/packages/Webkul/Core/src/Repositories/CurrencyRepository.php b/packages/Webkul/Core/src/Repositories/CurrencyRepository.php index d21f28d0f..c3f042a37 100755 --- a/packages/Webkul/Core/src/Repositories/CurrencyRepository.php +++ b/packages/Webkul/Core/src/Repositories/CurrencyRepository.php @@ -21,7 +21,7 @@ class CurrencyRepository extends Repository } /** - * Save a new entity in repository + * Create. * * @param array $attributes * @return mixed diff --git a/packages/Webkul/Core/src/Repositories/ExchangeRateRepository.php b/packages/Webkul/Core/src/Repositories/ExchangeRateRepository.php index be1c97bdf..4ee1862f4 100755 --- a/packages/Webkul/Core/src/Repositories/ExchangeRateRepository.php +++ b/packages/Webkul/Core/src/Repositories/ExchangeRateRepository.php @@ -2,20 +2,71 @@ namespace Webkul\Core\Repositories; -use Webkul\Core\Eloquent\Repository; +use Illuminate\Support\Facades\Event; use Prettus\Repository\Traits\CacheableRepository; +use Webkul\Core\Eloquent\Repository; class ExchangeRateRepository extends Repository { use CacheableRepository; /** - * Specify Model class name + * Specify model class name. * * @return mixed */ - function model() + public function model() { - return 'Webkul\Core\Contracts\CurrencyExchangeRate'; + return \Webkul\Core\Contracts\CurrencyExchangeRate::class; } -} \ No newline at end of file + + /** + * Create. + * + * @param array $attributes + * @return mixed + */ + public function create(array $attributes) + { + Event::dispatch('core.exchange_rate.create.before'); + + $exchangeRate = parent::create($attributes); + + Event::dispatch('core.exchange_rate.create.after', $exchangeRate); + + return $exchangeRate; + } + + /** + * Update. + * + * @param array $attributes + * @param $id + * @return mixed + */ + public function update(array $attributes, $id) + { + Event::dispatch('core.exchange_rate.update.before', $id); + + $exchangeRate = parent::update($attributes, $id); + + Event::dispatch('core.exchange_rate.update.after', $exchangeRate); + + return $exchangeRate; + } + + /** + * Delete. + * + * @param int $id + * @return bool + */ + public function delete($id) + { + Event::dispatch('core.exchange_rate.delete.before', $id); + + parent::delete($id); + + Event::dispatch('core.exchange_rate.delete.after', $id); + } +} diff --git a/packages/Webkul/Core/src/Repositories/LocaleRepository.php b/packages/Webkul/Core/src/Repositories/LocaleRepository.php index 260b74b17..645ad3f33 100755 --- a/packages/Webkul/Core/src/Repositories/LocaleRepository.php +++ b/packages/Webkul/Core/src/Repositories/LocaleRepository.php @@ -2,20 +2,71 @@ namespace Webkul\Core\Repositories; -use Webkul\Core\Eloquent\Repository; +use Illuminate\Support\Facades\Event; use Prettus\Repository\Traits\CacheableRepository; +use Webkul\Core\Eloquent\Repository; class LocaleRepository extends Repository { use CacheableRepository; /** - * Specify Model class name + * Specify model class name. * * @return mixed */ - function model() + public function model() { - return 'Webkul\Core\Contracts\Locale'; + return \Webkul\Core\Contracts\Locale::class; } -} \ No newline at end of file + + /** + * Create. + * + * @param array $attributes + * @return mixed + */ + public function create(array $attributes) + { + Event::dispatch('core.locale.create.before'); + + $locale = parent::create($attributes); + + Event::dispatch('core.locale.create.after', $locale); + + return $locale; + } + + /** + * Update. + * + * @param array $attributes + * @param $id + * @return mixed + */ + public function update(array $attributes, $id) + { + Event::dispatch('core.locale.update.before', $id); + + $locale = parent::update($attributes, $id); + + Event::dispatch('core.locale.update.after', $locale); + + return $locale; + } + + /** + * Delete. + * + * @param int $id + * @return bool + */ + public function delete($id) + { + Event::dispatch('core.locale.delete.before', $id); + + parent::delete($id); + + Event::dispatch('core.locale.delete.after', $id); + } +} diff --git a/packages/Webkul/Inventory/src/Http/Controllers/InventorySourceController.php b/packages/Webkul/Inventory/src/Http/Controllers/InventorySourceController.php index fa568f1f2..b2af08a87 100755 --- a/packages/Webkul/Inventory/src/Http/Controllers/InventorySourceController.php +++ b/packages/Webkul/Inventory/src/Http/Controllers/InventorySourceController.php @@ -2,7 +2,6 @@ namespace Webkul\Inventory\Http\Controllers; -use Illuminate\Support\Facades\Event; use Webkul\Inventory\Http\Requests\InventorySourceRequest; use Webkul\Inventory\Repositories\InventorySourceRepository; @@ -66,11 +65,7 @@ class InventorySourceController extends Controller $data['status'] = ! isset($data['status']) ? 0 : 1; - Event::dispatch('inventory.inventory_source.create.before'); - - $inventorySource = $this->inventorySourceRepository->create($data); - - Event::dispatch('inventory.inventory_source.create.after', $inventorySource); + $this->inventorySourceRepository->create($data); session()->flash('success', trans('admin::app.settings.inventory_sources.create-success')); @@ -102,11 +97,7 @@ class InventorySourceController extends Controller $data['status'] = ! isset($data['status']) ? 0 : 1; - Event::dispatch('inventory.inventory_source.update.before', $id); - - $inventorySource = $this->inventorySourceRepository->update($data, $id); - - Event::dispatch('inventory.inventory_source.update.after', $inventorySource); + $this->inventorySourceRepository->update($data, $id); session()->flash('success', trans('admin::app.settings.inventory_sources.update-success')); @@ -121,18 +112,14 @@ class InventorySourceController extends Controller */ public function destroy($id) { - $inventorySource = $this->inventorySourceRepository->findOrFail($id); + $this->inventorySourceRepository->findOrFail($id); if ($this->inventorySourceRepository->count() == 1) { session()->flash('error', trans('admin::app.settings.inventory_sources.last-delete-error')); } else { try { - Event::dispatch('inventory.inventory_source.delete.before', $id); - $this->inventorySourceRepository->delete($id); - Event::dispatch('inventory.inventory_source.delete.after', $id); - session()->flash('success', trans('admin::app.settings.inventory_sources.delete-success')); return response()->json(['message' => true], 200); diff --git a/packages/Webkul/Inventory/src/Repositories/InventorySourceRepository.php b/packages/Webkul/Inventory/src/Repositories/InventorySourceRepository.php index 4dfd98ac6..1939c13bc 100755 --- a/packages/Webkul/Inventory/src/Repositories/InventorySourceRepository.php +++ b/packages/Webkul/Inventory/src/Repositories/InventorySourceRepository.php @@ -2,18 +2,69 @@ namespace Webkul\Inventory\Repositories; +use Illuminate\Support\Facades\Event; use Webkul\Core\Eloquent\Repository; class InventorySourceRepository extends Repository { /** - * Specify Model class name + * Specify model class name. * * @return mixed */ - function model() + public function model() { - return 'Webkul\Inventory\Contracts\InventorySource'; + 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); } /** @@ -35,4 +86,4 @@ class InventorySourceRepository extends Repository return $channelInventorySourceIds = ($found ? $found : collect([])); } -} \ 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 4c1f6cf11..c6d0ad0ca 100755 --- a/packages/Webkul/Tax/src/Http/Controllers/TaxCategoryController.php +++ b/packages/Webkul/Tax/src/Http/Controllers/TaxCategoryController.php @@ -2,28 +2,27 @@ namespace Webkul\Tax\Http\Controllers; -use Illuminate\Support\Facades\Event; use Webkul\Tax\Repositories\TaxCategoryRepository; use Webkul\Tax\Repositories\TaxRateRepository; class TaxCategoryController extends Controller { /** - * Contains route related configuration + * Contains route related configuration. * * @var array */ protected $_config; /** - * TaxCategoryRepository + * Tax category repository instance. * * @var \Webkul\Tax\Repositories\TaxCategoryRepository */ protected $taxCategoryRepository; /** - * TaxRateRepository + * Tax rate repository instance. * * @var \Webkul\Tax\Repositories\TaxRateRepository */ @@ -39,8 +38,7 @@ class TaxCategoryController extends Controller public function __construct( TaxCategoryRepository $taxCategoryRepository, TaxRateRepository $taxRateRepository - ) - { + ) { $this->taxCategoryRepository = $taxCategoryRepository; $this->taxRateRepository = $taxRateRepository; @@ -49,7 +47,7 @@ class TaxCategoryController extends Controller } /** - * Function to show the tax category form + * Function to show the tax category form. * * @return \Illuminate\View\View */ @@ -74,22 +72,17 @@ class TaxCategoryController extends Controller 'taxrates' => 'array|required', ]); - Event::dispatch('tax.tax_category.create.before'); - $taxCategory = $this->taxCategoryRepository->create($data); - //attach the categories in the tax map table $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']); } /** - * To show the edit form form the tax category + * To show the edit form for the tax category. * * @param int $id * @return \Illuminate\View\View @@ -102,7 +95,7 @@ class TaxCategoryController extends Controller } /** - * To update the tax category + * To update the tax category. * * @param int $id * @return \Illuminate\Http\Response @@ -118,22 +111,15 @@ class TaxCategoryController extends Controller $data = request()->input(); - Event::dispatch('tax.tax_category.update.before', $id); - $taxCategory = $this->taxCategoryRepository->update($data, $id); - Event::dispatch('tax.tax_category.update.after', $taxCategory); - if (! $taxCategory) { session()->flash('error', trans('admin::app.settings.tax-categories.update-error')); return redirect()->back(); } - $taxRates = $data['taxrates']; - - //attach the categories in the tax map table - $this->taxCategoryRepository->attachOrDetach($taxCategory, $taxRates); + $this->taxCategoryRepository->attachOrDetach($taxCategory, $data['taxrates']); session()->flash('success', trans('admin::app.settings.tax-categories.update-success')); @@ -148,19 +134,15 @@ class TaxCategoryController extends Controller */ public function destroy($id) { - $taxCategory = $this->taxCategoryRepository->findOrFail($id); + $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); - session()->flash('success', trans('admin::app.response.delete-success', ['name' => 'Tax Category'])); return response()->json(['message' => true], 200); - } catch(Exception $e) { + } catch (Exception $e) { session()->flash('error', trans('admin::app.response.delete-failed', ['name' => 'Tax Category'])); } diff --git a/packages/Webkul/Tax/src/Http/Controllers/TaxRateController.php b/packages/Webkul/Tax/src/Http/Controllers/TaxRateController.php index e790801df..c868e1eed 100755 --- a/packages/Webkul/Tax/src/Http/Controllers/TaxRateController.php +++ b/packages/Webkul/Tax/src/Http/Controllers/TaxRateController.php @@ -2,10 +2,9 @@ namespace Webkul\Tax\Http\Controllers; -use Illuminate\Support\Facades\Event; -use Webkul\Admin\Imports\DataGridImport; use Illuminate\Support\Facades\Validator; use Maatwebsite\Excel\Validators\Failure; +use Webkul\Admin\Imports\DataGridImport; use Webkul\Tax\Repositories\TaxRateRepository; class TaxRateController extends Controller @@ -18,7 +17,7 @@ class TaxRateController extends Controller protected $_config; /** - * TaxRateRepository object + * Tax rate repository instance. * * @var \Webkul\Tax\Repositories\TaxRateRepository */ @@ -82,11 +81,7 @@ class TaxRateController extends Controller unset($data['zip_code']); } - Event::dispatch('tax.tax_rate.create.before'); - - $taxRate = $this->taxRateRepository->create($data); - - Event::dispatch('tax.tax_rate.create.after', $taxRate); + $this->taxRateRepository->create($data); session()->flash('success', trans('admin::app.settings.tax-rates.create-success')); @@ -115,7 +110,7 @@ class TaxRateController extends Controller public function update($id) { $this->validate(request(), [ - 'identifier' => 'required|string|unique:tax_rates,identifier,'.$id, + 'identifier' => 'required|string|unique:tax_rates,identifier,' . $id, 'is_zip' => 'sometimes', 'zip_from' => 'nullable|required_with:is_zip', 'zip_to' => 'nullable|required_with:is_zip,zip_from', @@ -123,11 +118,7 @@ class TaxRateController extends Controller 'tax_rate' => 'required|numeric|min:0.0001', ]); - Event::dispatch('tax.tax_rate.update.before', $id); - - $taxRate = $this->taxRateRepository->update(request()->input(), $id); - - Event::dispatch('tax.tax_rate.update.after', $taxRate); + $this->taxRateRepository->update(request()->input(), $id); session()->flash('success', trans('admin::app.settings.tax-rates.update-success')); @@ -142,19 +133,15 @@ class TaxRateController extends Controller */ public function destroy($id) { - $taxRate = $this->taxRateRepository->findOrFail($id); + $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); - session()->flash('success', trans('admin::app.response.delete-success', ['name' => 'Tax Rate'])); return response()->json(['message' => true], 200); - } catch(\Exception $e) { + } catch (\Exception $e) { session()->flash('error', trans('admin::app.response.delete-failed', ['name' => 'Tax Rate'])); } @@ -162,7 +149,7 @@ class TaxRateController extends Controller } /** - * import function for the upload. + * Import function for the upload. * * @return \Illuminate\Http\Response */ @@ -179,7 +166,7 @@ class TaxRateController extends Controller foreach ($excelData as $data) { foreach ($data as $column => $uploadData) { - if (! is_null($uploadData['zip_from']) && !is_null($uploadData['zip_to'])) { + if (! is_null($uploadData['zip_from']) && ! is_null($uploadData['zip_to'])) { $uploadData['is_zip'] = 1; } @@ -195,10 +182,10 @@ class TaxRateController extends Controller ]); if ($validator->fails()) { - $failedRules[$column+1] = $validator->errors(); + $failedRules[$column + 1] = $validator->errors(); } - $identiFier[$column+1] = $uploadData['identifier']; + $identiFier[$column + 1] = $uploadData['identifier']; } $identiFierCount = array_count_values($identiFier); @@ -213,7 +200,7 @@ class TaxRateController extends Controller $message[] = trans('admin::app.export.duplicate-error', ['identifier' => $identifier, 'position' => $position]); } - $finalMsg = implode(" ", $message); + $finalMsg = implode(' ', $message); session()->flash('error', $finalMsg); } else { @@ -221,7 +208,7 @@ class TaxRateController extends Controller if (isset($failedRules)) { foreach ($failedRules as $coulmn => $fail) { - if ($fail->first('identifier')){ + if ($fail->first('identifier')) { $errorMsg[$coulmn] = $fail->first('identifier'); } elseif ($fail->first('tax_rate')) { $errorMsg[$coulmn] = $fail->first('tax_rate'); @@ -239,11 +226,11 @@ class TaxRateController extends Controller } foreach ($errorMsg as $key => $msg) { - $msg = str_replace(".", "", $msg); - $message[] = $msg. ' at Row ' .$key . '.'; + $msg = str_replace('.', '', $msg); + $message[] = $msg . ' at Row ' . $key . '.'; } - $finalMsg = implode(" ", $message); + $finalMsg = implode(' ', $message); session()->flash('error', $finalMsg); } else { @@ -257,7 +244,7 @@ class TaxRateController extends Controller foreach ($data as $column => $uploadData) { if (! is_null($uploadData['zip_from']) && ! is_null($uploadData['zip_to'])) { $uploadData['is_zip'] = 1; - $uploadData['zip_code'] = NULL; + $uploadData['zip_code'] = null; } if (isset($rateIdentifier)) { @@ -287,4 +274,4 @@ class TaxRateController extends Controller return redirect()->route($this->_config['redirect']); } -} \ No newline at end of file +} diff --git a/packages/Webkul/Tax/src/Repositories/TaxCategoryRepository.php b/packages/Webkul/Tax/src/Repositories/TaxCategoryRepository.php index 89b40ec46..e3ebfb8ec 100755 --- a/packages/Webkul/Tax/src/Repositories/TaxCategoryRepository.php +++ b/packages/Webkul/Tax/src/Repositories/TaxCategoryRepository.php @@ -2,31 +2,84 @@ namespace Webkul\Tax\Repositories; +use Illuminate\Support\Facades\Event; use Webkul\Core\Eloquent\Repository; class TaxCategoryRepository extends Repository { /** - * Specify Model class name + * Specify model class name. * * @return string */ - function model() + public function model() { - return 'Webkul\Tax\Contracts\TaxCategory'; + 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. + * * @param \Webkul\Tax\Contracts\TaxCategory $taxCategory * @param array $data * @return bool */ public function attachOrDetach($taxCategory, $data) { - $taxRates = $taxCategory->tax_rates; + $taxCategory->tax_rates; $this->model->findOrFail($taxCategory->id)->tax_rates()->sync($data); return true; } -} \ 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 be71f0f75..a3a5f5084 100755 --- a/packages/Webkul/Tax/src/Repositories/TaxRateRepository.php +++ b/packages/Webkul/Tax/src/Repositories/TaxRateRepository.php @@ -2,17 +2,68 @@ namespace Webkul\Tax\Repositories; +use Illuminate\Support\Facades\Event; use Webkul\Core\Eloquent\Repository; class TaxRateRepository extends Repository { /** - * Specify Model class name + * Specify model class name. * * @return mixed */ - function model() + public function model() { - return 'Webkul\Tax\Contracts\TaxRate'; + return \Webkul\Tax\Contracts\TaxRate::class; } -} \ No newline at end of file + + /** + * 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 d8ef1c6ab..19946a57d 100755 --- a/packages/Webkul/User/src/Http/Controllers/RoleController.php +++ b/packages/Webkul/User/src/Http/Controllers/RoleController.php @@ -2,7 +2,6 @@ namespace Webkul\User\Http\Controllers; -use Illuminate\Support\Facades\Event; use Webkul\User\Repositories\AdminRepository; use Webkul\User\Repositories\RoleRepository; @@ -81,11 +80,7 @@ class RoleController extends Controller 'permission_type' => 'required', ]); - Event::dispatch('user.role.create.before'); - - $role = $this->roleRepository->create(request()->all()); - - Event::dispatch('user.role.create.after', $role); + $this->roleRepository->create(request()->all()); session()->flash('success', trans('admin::app.response.create-success', ['name' => 'Role'])); @@ -123,7 +118,7 @@ class RoleController extends Controller /** * 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 = $params['permission_type'] == 'custom' && $this->roleRepository->find($id)->permission_type == 'all'; if ($isChangedFromAll && $this->adminRepository->countAdminsWithAllAccess() === 1) { session()->flash('error', trans('admin::app.response.being-used', ['name' => 'Role', 'source' => 'Admin User'])); @@ -131,11 +126,7 @@ class RoleController extends Controller return redirect()->route($this->_config['redirect']); } - Event::dispatch('user.role.update.before', $id); - - $role = $this->roleRepository->update($params, $id); - - Event::dispatch('user.role.update.after', $role); + $this->roleRepository->update($params, $id); session()->flash('success', trans('admin::app.response.update-success', ['name' => 'Role'])); @@ -158,12 +149,8 @@ class RoleController extends Controller session()->flash('error', trans('admin::app.response.last-delete-error', ['name' => 'Role'])); } else { try { - Event::dispatch('user.role.delete.before', $id); - $this->roleRepository->delete($id); - Event::dispatch('user.role.delete.after', $id); - session()->flash('success', trans('admin::app.response.delete-success', ['name' => 'Role'])); return response()->json(['message' => true], 200); diff --git a/packages/Webkul/User/src/Http/Controllers/UserController.php b/packages/Webkul/User/src/Http/Controllers/UserController.php index 99d87084b..6e813a2ae 100755 --- a/packages/Webkul/User/src/Http/Controllers/UserController.php +++ b/packages/Webkul/User/src/Http/Controllers/UserController.php @@ -2,8 +2,8 @@ namespace Webkul\User\Http\Controllers; -use Hash; use Illuminate\Support\Facades\Event; +use Illuminate\Support\Facades\Hash; use Illuminate\Support\Str; use Webkul\User\Http\Requests\UserForm; use Webkul\User\Repositories\AdminRepository; @@ -89,11 +89,7 @@ class UserController extends Controller $data['api_token'] = Str::random(80); } - Event::dispatch('user.admin.create.before'); - - $admin = $this->adminRepository->create($data); - - Event::dispatch('user.admin.create.after', $admin); + $this->adminRepository->create($data); session()->flash('success', trans('admin::app.response.create-success', ['name' => 'User'])); @@ -130,15 +126,7 @@ class UserController extends Controller return $data; } - 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); + $this->adminRepository->update($data, $id); session()->flash('success', trans('admin::app.response.update-success', ['name' => 'User'])); @@ -158,8 +146,6 @@ class UserController extends Controller if ($this->adminRepository->count() == 1) { session()->flash('error', trans('admin::app.response.last-delete-error', ['name' => 'Admin'])); } else { - Event::dispatch('user.admin.delete.before', $id); - if (auth()->guard('admin')->user()->id == $id) { return response()->json([ 'redirect' => route('super.users.confirm', ['id' => $id]), @@ -171,8 +157,6 @@ class UserController extends Controller session()->flash('success', trans('admin::app.response.delete-success', ['name' => 'Admin'])); - Event::dispatch('user.admin.delete.after', $id); - return response()->json(['message' => true], 200); } catch (\Exception $e) { session()->flash('error', trans('admin::app.response.delete-failed', ['name' => 'Admin'])); diff --git a/packages/Webkul/User/src/Repositories/AdminRepository.php b/packages/Webkul/User/src/Repositories/AdminRepository.php index db0cb3008..48e2af2d3 100755 --- a/packages/Webkul/User/src/Repositories/AdminRepository.php +++ b/packages/Webkul/User/src/Repositories/AdminRepository.php @@ -2,6 +2,7 @@ namespace Webkul\User\Repositories; +use Illuminate\Support\Facades\Event; use Webkul\Core\Eloquent\Repository; class AdminRepository extends Repository @@ -11,11 +12,65 @@ class AdminRepository extends Repository * * @return mixed */ - function model(): string + public function model(): string { 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 edffa5eae..e26f2e7c4 100755 --- a/packages/Webkul/User/src/Repositories/RoleRepository.php +++ b/packages/Webkul/User/src/Repositories/RoleRepository.php @@ -2,18 +2,36 @@ namespace Webkul\User\Repositories; +use Illuminate\Support\Facades\Event; use Webkul\Core\Eloquent\Repository; class RoleRepository extends Repository { /** - * Specify Model class name + * Specify model class name. * * @return mixed */ - function model() + public function model() { - return 'Webkul\User\Contracts\Role'; + 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; } /** @@ -21,11 +39,12 @@ class RoleRepository extends Repository * * @param array $data * @param int $id - * - * @return \Webkul\User\Model\Role + * @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); @@ -37,7 +56,23 @@ class RoleRepository extends Repository $role->permissions = $requestedData->has('permissions') ? $requestedData['permissions'] : []; $role->update(); - /* returning updated role */ + Event::dispatch('user.role.update.after', $role); + return $role; } -} \ No newline at end of file + + /** + * 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); + } +}