Files
InvoiceShelf/app/Http/Controllers/V1/Admin/Modules/EnableModuleController.php
Darko Gjorgjijoski 6b80b5f48d Change namespace
2024-01-27 23:53:20 +01:00

33 lines
898 B
PHP

<?php
namespace InvoiceShelf\Http\Controllers\V1\Admin\Modules;
use InvoiceShelf\Events\ModuleEnabledEvent;
use InvoiceShelf\Http\Controllers\Controller;
use InvoiceShelf\Models\Module as ModelsModule;
use Illuminate\Http\Request;
use Nwidart\Modules\Facades\Module;
class EnableModuleController extends Controller
{
/**
* Handle the incoming request.
*
* @param \Illuminate\Http\Request $request
* @return \Illuminate\Http\Response
*/
public function __invoke(Request $request, string $module)
{
$this->authorize('manage modules');
$module = ModelsModule::where('name', $module)->first();
$module->update(['enabled' => true]);
$installedModule = Module::find($module->name);
$installedModule->enable();
ModuleEnabledEvent::dispatch($module);
return response()->json(['success' => true]);
}
}