mirror of
https://github.com/InvoiceShelf/InvoiceShelf.git
synced 2026-04-15 17:24:10 +00:00
Move global admin controllers from Admin to SuperAdmin namespace
Backup, Update, Modules, and global Settings controllers (mail config, PDF config, disk management, global settings) are application-wide features not scoped to a company. Move them from Admin/ to SuperAdmin/ to match the v3.0 UI structure where these live under Administration. Company-scoped settings controllers remain in Admin/Settings/.
This commit is contained in:
@@ -0,0 +1,32 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Controllers\V1\SuperAdmin\Modules;
|
||||
|
||||
use App\Events\ModuleDisabledEvent;
|
||||
use App\Http\Controllers\Controller;
|
||||
use App\Models\Module as ModelsModule;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Http\Response;
|
||||
use Nwidart\Modules\Facades\Module;
|
||||
|
||||
class DisableModuleController extends Controller
|
||||
{
|
||||
/**
|
||||
* Handle the incoming request.
|
||||
*
|
||||
* @return Response
|
||||
*/
|
||||
public function __invoke(Request $request, string $module)
|
||||
{
|
||||
$this->authorize('manage modules');
|
||||
|
||||
$module = ModelsModule::where('name', $module)->first();
|
||||
$module->update(['enabled' => false]);
|
||||
$installedModule = Module::find($module->name);
|
||||
$installedModule->disable();
|
||||
|
||||
ModuleDisabledEvent::dispatch($module);
|
||||
|
||||
return response()->json(['success' => true]);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user