Add fire event on every controller
This commit is contained in:
parent
64e451d7f9
commit
5916482f7c
|
|
@ -4,6 +4,7 @@ namespace Webkul\Admin\Http\Controllers;
|
|||
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Http\Response;
|
||||
use Illuminate\Support\Facades\Event;
|
||||
use Webkul\Admin\Facades\Configuration;
|
||||
use Webkul\Core\Repositories\CoreConfigRepository as CoreConfig;
|
||||
use Webkul\Core\Tree;
|
||||
|
|
@ -130,8 +131,12 @@ class ConfigurationController extends Controller
|
|||
*/
|
||||
public function store()
|
||||
{
|
||||
Event::fire('core.configuration.save.after');
|
||||
|
||||
$this->coreConfig->create(request()->all());
|
||||
|
||||
Event::fire('core.configuration.save.after');
|
||||
|
||||
session()->flash('success', 'Shipping Method is created successfully');
|
||||
|
||||
return redirect()->back();
|
||||
|
|
|
|||
|
|
@ -21,5 +21,13 @@ class EventServiceProvider extends ServiceProvider
|
|||
Event::listen('checkout.invoice.save.after', 'Webkul\Admin\Listeners\Order@sendNewShipmentMail');
|
||||
|
||||
Event::listen('checkout.order.save.after', 'Webkul\Admin\Listeners\Order@updateProductInventory');
|
||||
|
||||
Event::listen('products.datagrid.sync', 'Webkul\Admin\Listeners\Product@sync');
|
||||
|
||||
Event::listen('catalog.product.create.after', 'Webkul\Admin\Listeners\Product@afterProductCreated');
|
||||
|
||||
Event::listen('catalog.product.update.after', 'Webkul\Admin\Listeners\Product@afterProductUpdate');
|
||||
|
||||
Event::listen('catalog.product.delete.after', 'Webkul\Admin\Listeners\Product@afterProductDelete');
|
||||
}
|
||||
}
|
||||
|
|
@ -4,6 +4,7 @@ namespace Webkul\Attribute\Http\Controllers;
|
|||
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Http\Response;
|
||||
use Illuminate\Support\Facades\Event;
|
||||
use Webkul\Attribute\Repositories\AttributeRepository as Attribute;
|
||||
|
||||
|
||||
|
|
@ -77,7 +78,11 @@ class AttributeController extends Controller
|
|||
'type' => 'required'
|
||||
]);
|
||||
|
||||
$this->attribute->create(request()->all());
|
||||
Event::fire('catalog.attribute.create.before');
|
||||
|
||||
$attribute = $this->attribute->create(request()->all());
|
||||
|
||||
Event::fire('catalog.attribute.create.after', $attribute);
|
||||
|
||||
session()->flash('success', 'Attribute created successfully.');
|
||||
|
||||
|
|
@ -112,7 +117,11 @@ class AttributeController extends Controller
|
|||
'type' => 'required'
|
||||
]);
|
||||
|
||||
$this->attribute->update(request()->all(), $id);
|
||||
Event::fire('catalog.attribute.update.before', $id);
|
||||
|
||||
$attribute = $this->attribute->update(request()->all(), $id);
|
||||
|
||||
Event::fire('catalog.attribute.update.after', $attribute);
|
||||
|
||||
session()->flash('success', 'Attribute updated successfully.');
|
||||
|
||||
|
|
@ -133,8 +142,12 @@ class AttributeController extends Controller
|
|||
session()->flash('error', 'Can not delete system attribute.');
|
||||
} else {
|
||||
try {
|
||||
Event::fire('catalog.attribute.delete.before', $id);
|
||||
|
||||
$this->attribute->delete($id);
|
||||
|
||||
Event::fire('catalog.attribute.delete.after', $id);
|
||||
|
||||
session()->flash('success', 'Attribute deleted successfully.');
|
||||
} catch(\Exception $e) {
|
||||
session()->flash('error', 'Attribute is used in configurable products.');
|
||||
|
|
@ -159,10 +172,15 @@ class AttributeController extends Controller
|
|||
$attribute = $this->attribute->findOrFail($value);
|
||||
|
||||
try {
|
||||
if(!$attribute->is_user_defined)
|
||||
if(!$attribute->is_user_defined) {
|
||||
continue;
|
||||
else
|
||||
} else {
|
||||
Event::fire('catalog.attribute.delete.before', $value);
|
||||
|
||||
$this->attribute->delete($value);
|
||||
|
||||
Event::fire('catalog.attribute.delete.after', $value);
|
||||
}
|
||||
} catch(\Exception $e) {
|
||||
$suppressFlash = true;
|
||||
|
||||
|
|
|
|||
|
|
@ -4,6 +4,7 @@ namespace Webkul\Attribute\Http\Controllers;
|
|||
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Http\Response;
|
||||
use Illuminate\Support\Facades\Event;
|
||||
use Webkul\Attribute\Repositories\AttributeFamilyRepository as AttributeFamily;
|
||||
use Webkul\Attribute\Repositories\AttributeRepository as Attribute;
|
||||
|
||||
|
|
@ -82,7 +83,11 @@ class AttributeFamilyController extends Controller
|
|||
'name' => 'required'
|
||||
]);
|
||||
|
||||
$this->attributeFamily->create(request()->all());
|
||||
Event::fire('catalog.attribute_family.create.before');
|
||||
|
||||
$attributeFamily = $this->attributeFamily->create(request()->all());
|
||||
|
||||
Event::fire('catalog.attribute_family.create.after', $attributeFamily);
|
||||
|
||||
session()->flash('success', 'Family created successfully.');
|
||||
|
||||
|
|
@ -119,8 +124,11 @@ class AttributeFamilyController extends Controller
|
|||
'name' => 'required'
|
||||
]);
|
||||
|
||||
Event::fire('catalog.attribute_family.update.before', $id);
|
||||
|
||||
$this->attributeFamily->update(request()->all(), $id);
|
||||
$attributeFamily = $this->attributeFamily->update(request()->all(), $id);
|
||||
|
||||
Event::fire('catalog.attribute_family.update.after', $attributeFamily);
|
||||
|
||||
session()->flash('success', 'Family updated successfully.');
|
||||
|
||||
|
|
@ -142,8 +150,12 @@ class AttributeFamilyController extends Controller
|
|||
} else if ($attributeFamily->products()->count()) {
|
||||
session()->flash('error', 'Attribute family is used in products.');
|
||||
} else {
|
||||
Event::fire('catalog.attribute_family.delete.before', $id);
|
||||
|
||||
$this->attributeFamily->delete($id);
|
||||
|
||||
Event::fire('catalog.attribute_family.delete.after', $id);
|
||||
|
||||
session()->flash('success', 'Family deleted successfully.');
|
||||
}
|
||||
|
||||
|
|
@ -163,7 +175,11 @@ class AttributeFamilyController extends Controller
|
|||
|
||||
foreach($indexes as $key => $value) {
|
||||
try {
|
||||
Event::fire('catalog.attribute_family.delete.before', $value);
|
||||
|
||||
$this->attributeFamily->delete($value);
|
||||
|
||||
Event::fire('catalog.attribute_family.delete.after', $value);
|
||||
} catch(\Exception $e) {
|
||||
$suppressFlash = true;
|
||||
|
||||
|
|
|
|||
|
|
@ -4,6 +4,7 @@ namespace Webkul\Category\Http\Controllers;
|
|||
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Http\Response;
|
||||
use Illuminate\Support\Facades\Event;
|
||||
use Webkul\Category\Repositories\CategoryRepository as Category;
|
||||
|
||||
/**
|
||||
|
|
@ -78,7 +79,11 @@ class CategoryController extends Controller
|
|||
'image.*' => 'mimes:jpeg,jpg,bmp,png'
|
||||
]);
|
||||
|
||||
$this->category->create(request()->all());
|
||||
Event::fire('catalog.category.create.before');
|
||||
|
||||
$category = $this->category->create(request()->all());
|
||||
|
||||
Event::fire('catalog.category.create.after', $category);
|
||||
|
||||
session()->flash('success', 'Category created successfully.');
|
||||
|
||||
|
|
@ -110,6 +115,7 @@ class CategoryController extends Controller
|
|||
public function update(Request $request, $id)
|
||||
{
|
||||
$locale = request()->get('locale') ?: app()->getLocale();
|
||||
|
||||
$this->validate(request(), [
|
||||
$locale . '.slug' => ['required', new \Webkul\Core\Contracts\Validations\Slug, function ($attribute, $value, $fail) use ($id) {
|
||||
if (!$this->category->isSlugUnique($id, $value)) {
|
||||
|
|
@ -120,8 +126,12 @@ class CategoryController extends Controller
|
|||
'image.*' => 'mimes:jpeg,jpg,bmp,png'
|
||||
]);
|
||||
|
||||
Event::fire('catalog.category.update.before', $id);
|
||||
|
||||
$this->category->update(request()->all(), $id);
|
||||
|
||||
Event::fire('catalog.category.update.after', $id);
|
||||
|
||||
session()->flash('success', 'Category updated successfully.');
|
||||
|
||||
return redirect()->route($this->_config['redirect']);
|
||||
|
|
@ -135,8 +145,12 @@ class CategoryController extends Controller
|
|||
*/
|
||||
public function destroy($id)
|
||||
{
|
||||
Event::fire('catalog.category.delete.before', $id);
|
||||
|
||||
$this->category->delete($id);
|
||||
|
||||
Event::fire('catalog.category.delete.after', $id);
|
||||
|
||||
session()->flash('success', 'Category deleted successfully.');
|
||||
|
||||
return redirect()->back();
|
||||
|
|
@ -155,7 +169,11 @@ class CategoryController extends Controller
|
|||
|
||||
foreach($indexes as $key => $value) {
|
||||
try {
|
||||
Event::fire('catalog.category.delete.before', $value);
|
||||
|
||||
$this->category->delete($value);
|
||||
|
||||
Event::fire('catalog.category.delete.after', $value);
|
||||
} catch(\Exception $e) {
|
||||
$suppressFlash = true;
|
||||
|
||||
|
|
|
|||
|
|
@ -4,6 +4,7 @@ namespace Webkul\Core\Http\Controllers;
|
|||
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Http\Response;
|
||||
use Illuminate\Support\Facades\Event;
|
||||
use Webkul\Core\Repositories\ChannelRepository as Channel;
|
||||
|
||||
|
||||
|
|
@ -82,7 +83,11 @@ class ChannelController extends Controller
|
|||
'favicon.*' => 'mimes:jpeg,jpg,bmp,png'
|
||||
]);
|
||||
|
||||
$this->channel->create(request()->all());
|
||||
Event::fire('core.channel.create.before');
|
||||
|
||||
$channel = $this->channel->create(request()->all());
|
||||
|
||||
Event::fire('core.channel.create.after', $channel);
|
||||
|
||||
session()->flash('success', 'Channel created successfully.');
|
||||
|
||||
|
|
@ -122,7 +127,11 @@ class ChannelController extends Controller
|
|||
'favicon.*' => 'mimes:jpeg,jpg,bmp,png'
|
||||
]);
|
||||
|
||||
$this->channel->update(request()->all(), $id);
|
||||
Event::fire('core.channel.update.before', $id);
|
||||
|
||||
$channel = $this->channel->update(request()->all(), $id);
|
||||
|
||||
Event::fire('core.channel.update.after', $channel);
|
||||
|
||||
session()->flash('success', 'Channel updated successfully.');
|
||||
|
||||
|
|
@ -140,8 +149,12 @@ class ChannelController extends Controller
|
|||
if($this->channel->count() == 1) {
|
||||
session()->flash('error', 'At least one channel is required.');
|
||||
} else {
|
||||
Event::fire('core.channel.delete.before', $id);
|
||||
|
||||
$this->channel->delete($id);
|
||||
|
||||
Event::fire('core.channel.delete.after', $id);
|
||||
|
||||
session()->flash('success', 'Channel deleted successfully.');
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -56,7 +56,8 @@ class CountryStateController extends Controller
|
|||
*
|
||||
* @return array
|
||||
*/
|
||||
public function getCountries() {
|
||||
public function getCountries()
|
||||
{
|
||||
$countries = $this->country->all();
|
||||
$states = $this->state->all();
|
||||
|
||||
|
|
@ -73,7 +74,8 @@ class CountryStateController extends Controller
|
|||
return view($this->_config['view'])->with('statesCountries', $nestedArray);
|
||||
}
|
||||
|
||||
public function getStates($country) {
|
||||
public function getStates($country)
|
||||
{
|
||||
$countries = $this->country->all();
|
||||
$states = $this->state->all();
|
||||
|
||||
|
|
|
|||
|
|
@ -4,6 +4,7 @@ namespace Webkul\Core\Http\Controllers;
|
|||
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Http\Response;
|
||||
use Illuminate\Support\Facades\Event;
|
||||
use Webkul\Core\Repositories\CurrencyRepository as Currency;
|
||||
|
||||
/**
|
||||
|
|
@ -76,7 +77,11 @@ class CurrencyController extends Controller
|
|||
'name' => 'required'
|
||||
]);
|
||||
|
||||
$this->currency->create(request()->all());
|
||||
Event::fire('core.channel.create.before');
|
||||
|
||||
$currency = $this->currency->create(request()->all());
|
||||
|
||||
Event::fire('core.currency.create.after', $currency);
|
||||
|
||||
session()->flash('success', 'Currency created successfully.');
|
||||
|
||||
|
|
@ -110,7 +115,11 @@ class CurrencyController extends Controller
|
|||
'name' => 'required'
|
||||
]);
|
||||
|
||||
$this->currency->update(request()->all(), $id);
|
||||
Event::fire('core.currency.update.before', $id);
|
||||
|
||||
$currency = $this->currency->update(request()->all(), $id);
|
||||
|
||||
Event::fire('core.currency.update.after', $currency);
|
||||
|
||||
session()->flash('success', 'Currency updated successfully.');
|
||||
|
||||
|
|
@ -126,8 +135,12 @@ class CurrencyController extends Controller
|
|||
public function destroy($id)
|
||||
{
|
||||
try {
|
||||
Event::fire('core.currency.delete.before', $id);
|
||||
|
||||
$result = $this->currency->delete($id);
|
||||
|
||||
Event::fire('core.currency.delete.after', $id);
|
||||
|
||||
if($result)
|
||||
session()->flash('success', 'Currency deleted successfully.');
|
||||
else
|
||||
|
|
@ -152,7 +165,11 @@ class CurrencyController extends Controller
|
|||
|
||||
foreach($indexes as $key => $value) {
|
||||
try {
|
||||
Event::fire('core.currency.delete.before', $value);
|
||||
|
||||
$this->currency->delete($value);
|
||||
|
||||
Event::fire('core.currency.delete.after', $value);
|
||||
} catch(\Exception $e) {
|
||||
$suppressFlash = true;
|
||||
|
||||
|
|
|
|||
|
|
@ -4,6 +4,7 @@ namespace Webkul\Core\Http\Controllers;
|
|||
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Http\Response;
|
||||
use Illuminate\Support\Facades\Event;
|
||||
use Webkul\Core\Repositories\ExchangeRateRepository as ExchangeRate;
|
||||
use Webkul\Core\Repositories\CurrencyRepository as Currency;
|
||||
|
||||
|
|
@ -89,7 +90,11 @@ class ExchangeRateController extends Controller
|
|||
'rate' => 'required|numeric'
|
||||
]);
|
||||
|
||||
$this->exchangeRate->create(request()->all());
|
||||
Event::fire('core.exchange_rate.create.before');
|
||||
|
||||
$exchangeRate = $this->exchangeRate->create(request()->all());
|
||||
|
||||
Event::fire('core.exchange_rate.create.after', $exchangeRate);
|
||||
|
||||
session()->flash('success', 'Exchange rate created successfully.');
|
||||
|
||||
|
|
@ -125,7 +130,11 @@ class ExchangeRateController extends Controller
|
|||
'rate' => 'required|numeric'
|
||||
]);
|
||||
|
||||
$this->exchangeRate->update(request()->all(), $id);
|
||||
Event::fire('core.exchange_rate.update.before', $id);
|
||||
|
||||
$exchangeRate = $this->exchangeRate->update(request()->all(), $id);
|
||||
|
||||
Event::fire('core.exchange_rate.update.after', $exchangeRate);
|
||||
|
||||
session()->flash('success', 'Exchange rate updated successfully.');
|
||||
|
||||
|
|
@ -143,8 +152,12 @@ class ExchangeRateController extends Controller
|
|||
if($this->exchangeRate->count() == 1) {
|
||||
session()->flash('error', 'At least one Exchange rate is required.');
|
||||
} else {
|
||||
Event::fire('core.exchange_rate.delete.before', $id);
|
||||
|
||||
$this->exchangeRate->delete($id);
|
||||
|
||||
Event::fire('core.exchange_rate.delete.after', $id);
|
||||
|
||||
session()->flash('success', 'Exchange rate deleted successfully.');
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -4,6 +4,7 @@ namespace Webkul\Core\Http\Controllers;
|
|||
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Http\Response;
|
||||
use Illuminate\Support\Facades\Event;
|
||||
use Webkul\Core\Repositories\LocaleRepository as Locale;
|
||||
|
||||
/**
|
||||
|
|
@ -76,7 +77,11 @@ class LocaleController extends Controller
|
|||
'name' => 'required'
|
||||
]);
|
||||
|
||||
$this->locale->create(request()->all());
|
||||
Event::fire('core.locale.create.before');
|
||||
|
||||
$locale = $this->locale->create(request()->all());
|
||||
|
||||
Event::fire('core.locale.create.after', $locale);
|
||||
|
||||
session()->flash('success', 'Locale created successfully.');
|
||||
|
||||
|
|
@ -110,7 +115,11 @@ class LocaleController extends Controller
|
|||
'name' => 'required'
|
||||
]);
|
||||
|
||||
$this->locale->update(request()->all(), $id);
|
||||
Event::fire('core.locale.update.before', $id);
|
||||
|
||||
$locale = $this->locale->update(request()->all(), $id);
|
||||
|
||||
Event::fire('core.locale.update.after', $locale);
|
||||
|
||||
session()->flash('success', 'Locale updated successfully.');
|
||||
|
||||
|
|
@ -128,8 +137,12 @@ class LocaleController extends Controller
|
|||
if($this->locale->count() == 1) {
|
||||
session()->flash('error', 'At least one locale is required.');
|
||||
} else {
|
||||
Event::fire('core.locale.delete.before', $id);
|
||||
|
||||
$this->locale->delete($id);
|
||||
|
||||
Event::fire('core.locale.delete.after', $id);
|
||||
|
||||
session()->flash('success', 'Locale deleted successfully.');
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -4,6 +4,7 @@ namespace Webkul\Customer\Http\Controllers;
|
|||
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Http\Response;
|
||||
use Illuminate\Support\Facades\Event;
|
||||
use Illuminate\Support\Facades\Mail;
|
||||
use Webkul\Customer\Mail\VerificationEmail;
|
||||
use Illuminate\Routing\Controller;
|
||||
|
|
@ -29,7 +30,8 @@ class RegistrationController extends Controller
|
|||
/**
|
||||
* @param CustomerRepository object $customer
|
||||
*/
|
||||
public function __construct(CustomerRepository $customer) {
|
||||
public function __construct(CustomerRepository $customer)
|
||||
{
|
||||
$this->_config = request('_config');
|
||||
$this->customer = $customer;
|
||||
}
|
||||
|
|
@ -39,7 +41,8 @@ class RegistrationController extends Controller
|
|||
*
|
||||
* @return view
|
||||
*/
|
||||
public function show() {
|
||||
public function show()
|
||||
{
|
||||
return view($this->_config['view']);
|
||||
}
|
||||
|
||||
|
|
@ -48,7 +51,8 @@ class RegistrationController extends Controller
|
|||
*
|
||||
* @return Mixed
|
||||
*/
|
||||
public function create(Request $request) {
|
||||
public function create(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'first_name' => 'string|required',
|
||||
'last_name' => 'string|required',
|
||||
|
|
@ -70,9 +74,14 @@ class RegistrationController extends Controller
|
|||
$verificationData['email'] = $data['email'];
|
||||
$verificationData['token'] = md5(uniqid(rand(), true));
|
||||
$data['token'] = $verificationData['token'];
|
||||
$created = $this->customer->create($data);
|
||||
|
||||
if ($created) {
|
||||
Event::fire('customer.registration.before');
|
||||
|
||||
$customer = $this->customer->create($data);
|
||||
|
||||
Event::fire('customer.registration.after', $customer);
|
||||
|
||||
if ($customer) {
|
||||
try {
|
||||
session()->flash('success', trans('shop::app.customer.signup-form.success'));
|
||||
|
||||
|
|
@ -95,7 +104,8 @@ class RegistrationController extends Controller
|
|||
* Method to verify account
|
||||
*
|
||||
*/
|
||||
public function verifyAccount($token) {
|
||||
public function verifyAccount($token)
|
||||
{
|
||||
$customer = $this->customer->findOneByField('token', $token);
|
||||
|
||||
if($customer) {
|
||||
|
|
@ -109,7 +119,8 @@ class RegistrationController extends Controller
|
|||
return redirect()->route('customer.session.index');
|
||||
}
|
||||
|
||||
public function resendVerificationEmail($email) {
|
||||
public function resendVerificationEmail($email)
|
||||
{
|
||||
$verificationData['email'] = $email;
|
||||
$verificationData['token'] = md5(uniqid(rand(), true));
|
||||
|
||||
|
|
|
|||
|
|
@ -10,7 +10,6 @@ use Webkul\Core\Eloquent\Repository;
|
|||
* @author Prashant Singh <prashant.singh852@webkul.com>
|
||||
* @copyright 2018 Webkul Software Pvt Ltd (http://www.webkul.com)
|
||||
*/
|
||||
|
||||
class CustomerRepository extends Repository
|
||||
{
|
||||
/**
|
||||
|
|
@ -23,32 +22,4 @@ class CustomerRepository extends Repository
|
|||
{
|
||||
return 'Webkul\Customer\Models\Customer';
|
||||
}
|
||||
|
||||
/**
|
||||
* @param array $data
|
||||
* @return mixed
|
||||
*/
|
||||
|
||||
public function create(array $data)
|
||||
{
|
||||
$customer = $this->model->create($data);
|
||||
|
||||
return $customer;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param array $data
|
||||
* @param $id
|
||||
* @param string $attribute
|
||||
* @return mixed
|
||||
*/
|
||||
|
||||
public function update(array $data, $id, $attribute = "id")
|
||||
{
|
||||
$customer = $this->find($id);
|
||||
|
||||
$customer->update($data);
|
||||
|
||||
return $customer;
|
||||
}
|
||||
}
|
||||
|
|
@ -4,6 +4,7 @@ namespace Webkul\Inventory\Http\Controllers;
|
|||
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Http\Response;
|
||||
use Illuminate\Support\Facades\Event;
|
||||
use Webkul\Inventory\Repositories\InventorySourceRepository as InventorySource;
|
||||
|
||||
/**
|
||||
|
|
@ -85,7 +86,11 @@ class InventorySourceController extends Controller
|
|||
|
||||
$data['status'] = !isset($data['status']) ? 0 : 1;
|
||||
|
||||
$this->inventorySource->create($data);
|
||||
Event::fire('inventory.inventory_source.create.before');
|
||||
|
||||
$inventorySource = $this->inventorySource->create($data);
|
||||
|
||||
Event::fire('inventory.inventory_source.create.after', $inventorySource);
|
||||
|
||||
session()->flash('success', 'Inventory source created successfully.');
|
||||
|
||||
|
|
@ -131,7 +136,11 @@ class InventorySourceController extends Controller
|
|||
|
||||
$data['status'] = !isset($data['status']) ? 0 : 1;
|
||||
|
||||
$this->inventorySource->update($data, $id);
|
||||
Event::fire('inventory.inventory_source.update.before', $id);
|
||||
|
||||
$inventorySource = $this->inventorySource->update($data, $id);
|
||||
|
||||
Event::fire('inventory.inventory_source.update.after', $inventorySource);
|
||||
|
||||
session()->flash('success', 'Inventory source updated successfully.');
|
||||
|
||||
|
|
@ -149,8 +158,12 @@ class InventorySourceController extends Controller
|
|||
if($this->inventorySource->count() == 1) {
|
||||
session()->flash('error', 'At least one inventory source is required.');
|
||||
} else {
|
||||
Event::fire('inventory.inventory_source.delete.before', $id);
|
||||
|
||||
$this->inventorySource->delete($id);
|
||||
|
||||
Event::fire('inventory.inventory_source.delete.after', $id);
|
||||
|
||||
session()->flash('success', 'Inventory source deleted successfully.');
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -4,13 +4,13 @@ namespace Webkul\Product\Http\Controllers;
|
|||
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Http\Response;
|
||||
use Illuminate\Support\Facades\Event;
|
||||
use Webkul\Product\Http\Requests\ProductForm;
|
||||
use Webkul\Product\Repositories\ProductRepository as Product;
|
||||
use Webkul\Product\Repositories\ProductGridRepository as ProductGrid;
|
||||
use Webkul\Attribute\Repositories\AttributeFamilyRepository as AttributeFamily;
|
||||
use Webkul\Category\Repositories\CategoryRepository as Category;
|
||||
use Webkul\Inventory\Repositories\InventorySourceRepository as InventorySource;
|
||||
use Event;
|
||||
|
||||
/**
|
||||
* Product controller
|
||||
|
|
@ -126,9 +126,6 @@ class ProductController extends Controller
|
|||
*/
|
||||
public function store()
|
||||
{
|
||||
//before store of the product
|
||||
// Event::fire('product.save.before', false);
|
||||
|
||||
if(!request()->get('family') && request()->input('type') == 'configurable' && request()->input('sku') != '') {
|
||||
return redirect(url()->current() . '?family=' . request()->input('attribute_family_id') . '&sku=' . request()->input('sku'));
|
||||
}
|
||||
|
|
@ -145,10 +142,14 @@ class ProductController extends Controller
|
|||
'sku' => ['required', 'unique:products,sku', new \Webkul\Core\Contracts\Validations\Slug]
|
||||
]);
|
||||
|
||||
|
||||
//before store of the product
|
||||
Event::fire('catalog.product.create.before');
|
||||
|
||||
$product = $this->product->create(request()->all());
|
||||
|
||||
//after store of the product
|
||||
Event::fire('product.save.after', $product);
|
||||
Event::fire('catalog.product.create.after', $product);
|
||||
|
||||
session()->flash('success', 'Product created successfully.');
|
||||
|
||||
|
|
@ -181,13 +182,11 @@ class ProductController extends Controller
|
|||
*/
|
||||
public function update(ProductForm $request, $id)
|
||||
{
|
||||
// before update of product
|
||||
// Event::fire('product.update.before', $id);
|
||||
Event::fire('catalog.product.update.before', $id);
|
||||
|
||||
$product = $this->product->update(request()->all(), $id);
|
||||
|
||||
//after update of product
|
||||
Event::fire('product.update.after', $product);
|
||||
Event::fire('catalog.product.update.after', $product);
|
||||
|
||||
session()->flash('success', 'Product updated successfully.');
|
||||
|
||||
|
|
@ -202,12 +201,11 @@ class ProductController extends Controller
|
|||
*/
|
||||
public function destroy($id)
|
||||
{
|
||||
Event::fire('product.delete.before', $id);
|
||||
Event::fire('catalog.product.delete.before', $id);
|
||||
|
||||
$this->product->delete($id);
|
||||
|
||||
//before update of product
|
||||
// Event::fire('product.delete.after', $id);
|
||||
Event::fire('catalog.product.delete.after', $id);
|
||||
|
||||
session()->flash('success', 'Product deleted successfully.');
|
||||
|
||||
|
|
@ -228,7 +226,11 @@ class ProductController extends Controller
|
|||
$product = $this->product->find($productId);
|
||||
|
||||
if(!is_null($product)) {
|
||||
Event::fire('catalog.product.delete.before', $productId);
|
||||
|
||||
$product->delete();
|
||||
|
||||
Event::fire('catalog.product.delete.after', $productId);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -258,11 +260,15 @@ class ProductController extends Controller
|
|||
$product = $this->product->find($productId);
|
||||
|
||||
if($data['update-options'] == 0 && $data['selected-option-text'] == 'In Active') {
|
||||
Event::fire('catelog.product.update.before', $productId);
|
||||
|
||||
$result = $this->product->updateAttribute($product, $attribute, $data['update-options']);
|
||||
|
||||
if($result)
|
||||
Event::fire('product.update.after', $product);
|
||||
Event::fire('catelog.product.update.after', $product);
|
||||
} else if($data['update-options'] == 1 && $data['selected-option-text'] == 'Active') {
|
||||
Event::fire('catelog.product.update.before', $productId);
|
||||
|
||||
$result = $this->product->updateAttribute($product, $attribute, $data['update-options']);
|
||||
|
||||
if($result)
|
||||
|
|
|
|||
|
|
@ -4,6 +4,7 @@ namespace Webkul\Product\Http\Controllers;
|
|||
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Http\Response;
|
||||
use Illuminate\Support\Facades\Event;
|
||||
use Webkul\Product\Repositories\ProductRepository as Product;
|
||||
use Webkul\Product\Repositories\ProductReviewRepository as ProductReview;
|
||||
|
||||
|
|
@ -85,8 +86,12 @@ class ReviewController extends Controller
|
|||
*/
|
||||
public function update(Request $request, $id)
|
||||
{
|
||||
Event::fire('customer.review.update.before', $id);
|
||||
|
||||
$this->productReview->update(request()->all(), $id);
|
||||
|
||||
Event::fire('customer.review.update.after', $id);
|
||||
|
||||
session()->flash('success', 'Review updated successfully.');
|
||||
|
||||
return redirect()->route($this->_config['redirect']);
|
||||
|
|
@ -100,8 +105,12 @@ class ReviewController extends Controller
|
|||
*/
|
||||
public function destroy($id)
|
||||
{
|
||||
Event::fire('customer.review.delete.before', $id);
|
||||
|
||||
$this->productReview->delete($id);
|
||||
|
||||
Event::fire('customer.review.delete.after', $id);
|
||||
|
||||
session()->flash('success', 'Review Successfully Deleted');
|
||||
|
||||
return redirect()->back();
|
||||
|
|
@ -122,7 +131,11 @@ class ReviewController extends Controller
|
|||
|
||||
foreach($indexes as $key => $value) {
|
||||
try {
|
||||
Event::fire('customer.review.delete.before', $value);
|
||||
|
||||
$this->productReview->delete($value);
|
||||
|
||||
Event::fire('customer.review.delete.after', $value);
|
||||
} catch(\Exception $e) {
|
||||
$suppressFlash = true;
|
||||
|
||||
|
|
@ -162,7 +175,11 @@ class ReviewController extends Controller
|
|||
|
||||
try {
|
||||
if($data['massaction-type'] == 1 && $data['update-options'] == 1 && $data['selected-option-text'] == 'Approve') {
|
||||
Event::fire('customer.review.update.before', $value);
|
||||
|
||||
$review->update(['status' => 'approved']);
|
||||
|
||||
Event::fire('customer.review.update.after', $review);
|
||||
} else if($data['massaction-type'] == 1 && $data['update-options'] == 0 && $data['selected-option-text'] == 'Disapprove') {
|
||||
$review->update(['status' => 'pending']);
|
||||
} else {
|
||||
|
|
|
|||
|
|
@ -1,41 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace Webkul\Product\Observers;
|
||||
|
||||
use Webkul\Product\Models\Product;
|
||||
|
||||
class ProductObserver
|
||||
{
|
||||
/**
|
||||
* Handle to the product "created" event.
|
||||
*
|
||||
* @param \App\Product $product
|
||||
* @return void
|
||||
*/
|
||||
public function created(Product $product)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Handle the product "updated" event.
|
||||
*
|
||||
* @param \App\Product $product
|
||||
* @return void
|
||||
*/
|
||||
public function updated(Product $product)
|
||||
{
|
||||
//
|
||||
}
|
||||
|
||||
/**
|
||||
* Handle the product "deleted" event.
|
||||
*
|
||||
* @param \App\Product $product
|
||||
* @return void
|
||||
*/
|
||||
public function deleted(Product $product)
|
||||
{
|
||||
//
|
||||
}
|
||||
}
|
||||
|
|
@ -5,8 +5,6 @@ namespace Webkul\Product\Providers;
|
|||
use Illuminate\Support\ServiceProvider;
|
||||
use Illuminate\Routing\Router;
|
||||
use Webkul\Product\Models\Product;
|
||||
use Webkul\Product\Observers\ProductObserver;
|
||||
use Event;
|
||||
|
||||
class ProductServiceProvider extends ServiceProvider
|
||||
{
|
||||
|
|
@ -18,20 +16,6 @@ class ProductServiceProvider extends ServiceProvider
|
|||
public function boot(Router $router)
|
||||
{
|
||||
$this->loadMigrationsFrom(__DIR__ . '/../Database/Migrations');
|
||||
|
||||
Event::listen('products.datagrid.sync', 'Webkul\Admin\Listeners\Product@sync');
|
||||
|
||||
Event::listen('product.save.after', 'Webkul\Admin\Listeners\Product@afterProductCreated');
|
||||
|
||||
Event::listen('product.update.before',
|
||||
'Webkul\Admin\Listeners\Product@beforeProductUpdate');
|
||||
|
||||
Event::listen('product.update.after',
|
||||
'Webkul\Admin\Listeners\Product@afterProductUpdate');
|
||||
|
||||
Event::listen('product.delete.after', 'Webkul\Admin\Listeners\Product@afterProductDelete');
|
||||
|
||||
Product::observe(ProductObserver::class);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -38,10 +38,12 @@ class ProductImageRepository extends Repository
|
|||
$dir = 'product/' . $product->id;
|
||||
|
||||
if (str_contains($imageId, 'image_')) {
|
||||
$this->create([
|
||||
'path' => request()->file($file)->store($dir),
|
||||
'product_id' => $product->id
|
||||
]);
|
||||
if(request()->hasFile($file)) {
|
||||
$this->create([
|
||||
'path' => request()->file($file)->store($dir),
|
||||
'product_id' => $product->id
|
||||
]);
|
||||
}
|
||||
} else {
|
||||
if(is_numeric($index = $previousImageIds->search($imageId))) {
|
||||
$previousImageIds->forget($index);
|
||||
|
|
|
|||
|
|
@ -4,6 +4,7 @@ namespace Webkul\Tax\Http\Controllers;
|
|||
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Http\Response;
|
||||
use Illuminate\Support\Facades\Event;
|
||||
use Webkul\Channel as Channel;
|
||||
use Webkul\Tax\Repositories\TaxCategoryRepository as TaxCategory;
|
||||
use Webkul\Tax\Repositories\TaxRateRepository as TaxRate;
|
||||
|
|
@ -99,28 +100,26 @@ class TaxCategoryController extends Controller
|
|||
'taxrates' => 'array|required'
|
||||
]);
|
||||
|
||||
if($taxCategory = $this->taxCategory->create(request()->input())) {
|
||||
$allTaxCategories = $data['taxrates'];
|
||||
Event::fire('tax.tax_category.create.before');
|
||||
|
||||
//attach the categories in the tax map table
|
||||
$this->taxCategory->attachOrDetach($taxCategory, $allTaxCategories);
|
||||
$taxCategory = $this->taxCategory->create($data);
|
||||
|
||||
session()->flash('success', trans('admin::app.settings.tax-categories.create-success'));
|
||||
//attach the categories in the tax map table
|
||||
$this->taxCategory->attachOrDetach($taxCategory, $data['taxrates']);
|
||||
|
||||
return redirect()->route($this->_config['redirect']);
|
||||
} else {
|
||||
session()->flash('error', trans('admin::app.settings.tax-categories.create-error'));
|
||||
}
|
||||
Event::fire('tax.tax_category.create.after', $taxCategory);
|
||||
|
||||
return view($this->_config['view']);
|
||||
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
|
||||
*
|
||||
* @param int $id
|
||||
* @return view
|
||||
*/
|
||||
|
||||
public function edit($id)
|
||||
{
|
||||
$taxCategory = $this->taxCategory->findOrFail($id);
|
||||
|
|
@ -131,10 +130,11 @@ class TaxCategoryController extends Controller
|
|||
/**
|
||||
* To update the tax category
|
||||
*
|
||||
* @return view
|
||||
* @param int $id
|
||||
* @return Response
|
||||
*/
|
||||
|
||||
public function update($id) {
|
||||
public function update($id)
|
||||
{
|
||||
$this->validate(request(), [
|
||||
'channel_id' => 'required|numeric',
|
||||
'code' => 'required|string|unique:tax_categories,code,'.$id,
|
||||
|
|
@ -145,10 +145,15 @@ class TaxCategoryController extends Controller
|
|||
|
||||
$data = request()->input();
|
||||
|
||||
Event::fire('tax.tax_category.update.before', $id);
|
||||
|
||||
$taxCategory = $this->taxCategory->update($data, $id);
|
||||
|
||||
Event::fire('tax.tax_category.update.after', $taxCategory);
|
||||
|
||||
if(!$taxCategory) {
|
||||
session()->flash('error', trans('admin::app.settings.tax-categories.update-error'));
|
||||
|
||||
return redirect()->back();
|
||||
}
|
||||
|
||||
|
|
@ -173,8 +178,12 @@ class TaxCategoryController extends Controller
|
|||
if($this->taxCategory->count() == 1) {
|
||||
session()->flash('error', trans('admin::app.settings.tax-categories.atleast-one'));
|
||||
} else {
|
||||
Event::fire('tax.tax_category.delete.before', $id);
|
||||
|
||||
$this->taxCategory->delete($id);
|
||||
|
||||
Event::fire('tax.tax_category.delete.after', $id);
|
||||
|
||||
session()->flash('success', trans('admin::app.settings.tax-categories.delete'));
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -4,6 +4,7 @@ namespace Webkul\Tax\Http\Controllers;
|
|||
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Http\Response;
|
||||
use Illuminate\Support\Facades\Event;
|
||||
use Webkul\Tax\Repositories\TaxRateRepository as TaxRate;
|
||||
|
||||
|
||||
|
|
@ -91,17 +92,15 @@ class TaxRateController extends Controller
|
|||
unset($data['zip_code']);
|
||||
}
|
||||
|
||||
if($this->taxRate->create($data)) {
|
||||
session()->flash('success', trans('admin::app.settings.tax-rates.create-success'));
|
||||
Event::fire('tax.tax_rate.create.before');
|
||||
|
||||
return redirect()->route($this->_config['redirect']);
|
||||
} else {
|
||||
session()->flash('error', trans('admin::app.settings.tax-rates.create-error'));
|
||||
$taxRate = $this->taxRate->create($data);
|
||||
|
||||
return redirect()->back();
|
||||
}
|
||||
Event::fire('tax.tax_rate.create.after', $taxRate);
|
||||
|
||||
return redirect()->back();
|
||||
session()->flash('success', trans('admin::app.settings.tax-rates.create-success'));
|
||||
|
||||
return redirect()->route($this->_config['redirect']);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -136,17 +135,15 @@ class TaxRateController extends Controller
|
|||
'tax_rate' => 'required|numeric'
|
||||
]);
|
||||
|
||||
if($this->taxRate->update(request()->input(), $id)) {
|
||||
session()->flash('success', trans('admin::app.settings.tax-rates.update-success'));
|
||||
Event::fire('tax.tax_rate.update.before', $id);
|
||||
|
||||
return redirect()->route($this->_config['redirect']);
|
||||
} else {
|
||||
session()->flash('error', trans('admin::app.settings.tax-rates.update-error'));
|
||||
$taxRate = $this->taxRate->update(request()->input(), $id);
|
||||
|
||||
return redirect()->back();
|
||||
}
|
||||
Event::fire('tax.tax_rate.update.after', $taxRate);
|
||||
|
||||
return redirect()->back();
|
||||
session()->flash('success', trans('admin::app.settings.tax-rates.update-success'));
|
||||
|
||||
return redirect()->route($this->_config['redirect']);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -160,8 +157,12 @@ class TaxRateController extends Controller
|
|||
if($this->taxRate->count() == 1) {
|
||||
session()->flash('error', trans('admin::app.settings.tax-rates.atleast-one'));
|
||||
} else {
|
||||
Event::fire('tax.tax_rate.delete.before', $id);
|
||||
|
||||
$this->taxRate->delete($id);
|
||||
|
||||
Event::fire('tax.tax_rate.delete.after', $id);
|
||||
|
||||
session()->flash('success', trans('admin::app.settings.tax-rates.delete'));
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -4,6 +4,7 @@ namespace Webkul\User\Http\Controllers;
|
|||
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Http\Response;
|
||||
use Illuminate\Support\Facades\Event;
|
||||
use Webkul\User\Repositories\RoleRepository as Role;
|
||||
|
||||
/**
|
||||
|
|
@ -76,7 +77,11 @@ class RoleController extends Controller
|
|||
'permission_type' => 'required',
|
||||
]);
|
||||
|
||||
$this->role->create(request()->all());
|
||||
Event::fire('user.role.create.before');
|
||||
|
||||
$role = $this->role->create(request()->all());
|
||||
|
||||
Event::fire('user.role.create.after', $role);
|
||||
|
||||
session()->flash('success', 'Role created successfully.');
|
||||
|
||||
|
|
@ -110,7 +115,11 @@ class RoleController extends Controller
|
|||
'permission_type' => 'required',
|
||||
]);
|
||||
|
||||
$this->role->update(request()->all(), $id);
|
||||
Event::fire('user.role.update.before', $id);
|
||||
|
||||
$role = $this->role->update(request()->all(), $id);
|
||||
|
||||
Event::fire('user.role.update.after', $role);
|
||||
|
||||
session()->flash('success', 'Role updated successfully.');
|
||||
|
||||
|
|
@ -128,8 +137,12 @@ class RoleController extends Controller
|
|||
if($this->role->count() == 1) {
|
||||
session()->flash('error', 'At least one role is required.');
|
||||
} else {
|
||||
Event::fire('user.role.delete.before', $id);
|
||||
|
||||
$this->role->delete($id);
|
||||
|
||||
Event::fire('user.role.delete.after', $id);
|
||||
|
||||
session()->flash('success', 'Role source deleted successfully.');
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -4,6 +4,7 @@ namespace Webkul\User\Http\Controllers;
|
|||
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Http\Response;
|
||||
use Illuminate\Support\Facades\Event;
|
||||
use Webkul\User\Repositories\AdminRepository as Admin;
|
||||
use Webkul\User\Repositories\RoleRepository as Role;
|
||||
use Webkul\User\Http\Requests\UserForm;
|
||||
|
|
@ -92,7 +93,11 @@ class UserController extends Controller
|
|||
if(isset($data['password']) && $data['password'])
|
||||
$data['password'] = bcrypt($data['password']);
|
||||
|
||||
$this->admin->create($data);
|
||||
Event::fire('user.admin.create.before');
|
||||
|
||||
$admin = $this->admin->create($data);
|
||||
|
||||
Event::fire('user.admin.delete.after', $admin);
|
||||
|
||||
session()->flash('success', 'User created successfully.');
|
||||
|
||||
|
|
@ -136,7 +141,11 @@ class UserController extends Controller
|
|||
$data['status'] = 0;
|
||||
}
|
||||
|
||||
$this->admin->update($data, $id);
|
||||
Event::fire('user.admin.update.before', $id);
|
||||
|
||||
$admin = $this->admin->update($data, $id);
|
||||
|
||||
Event::fire('user.admin.update.after', $admin);
|
||||
|
||||
session()->flash('success', 'User updated successfully.');
|
||||
|
||||
|
|
@ -154,8 +163,12 @@ class UserController extends Controller
|
|||
if($this->admin->count() == 1) {
|
||||
session()->flash('error', 'At least one admin is required.');
|
||||
} else {
|
||||
Event::fire('user.admin.delete.before', $id);
|
||||
|
||||
$this->admin->delete($id);
|
||||
|
||||
Event::fire('user.admin.delete.after', $id);
|
||||
|
||||
session()->flash('success', 'Admin source deleted successfully.');
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue