Rename controller namespaces: drop V1 prefix, clarify roles

V1/Admin     -> Company       (company-scoped controllers)
V1/SuperAdmin -> Admin        (platform-wide admin controllers)
V1/Customer  -> CustomerPortal (customer-facing portal)
V1/Installation -> Setup      (installation wizard)
V1/PDF       -> Pdf           (consistent casing)
V1/Modules   -> Modules       (drop V1 prefix)
V1/Webhook   -> Webhook       (drop V1 prefix)

The V1 prefix served no purpose - API versioning is in the route prefix
(/api/v1/), not the controller namespace. "Admin" was misleading for
company-scoped controllers. "SuperAdmin" is now simply "Admin" for
platform administration.
This commit is contained in:
Darko Gjorgjijoski
2026-04-03 19:15:20 +02:00
parent 0aaf0419c3
commit 64c481e963
129 changed files with 236 additions and 236 deletions

View File

@@ -0,0 +1,87 @@
<?php
namespace App\Http\Controllers\Setup;
use App\Http\Controllers\Controller;
use App\Http\Requests\DatabaseEnvironmentRequest;
use App\Services\Installation\EnvironmentManager;
use App\Services\Installation\InstallUtils;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Artisan;
class DatabaseConfigurationController extends Controller
{
/**
* @var EnvironmentManager
*/
protected $EnvironmentManager;
public function __construct(EnvironmentManager $environmentManager)
{
$this->environmentManager = $environmentManager;
}
public function saveDatabaseEnvironment(DatabaseEnvironmentRequest $request)
{
Artisan::call('config:clear');
Artisan::call('cache:clear');
$results = $this->environmentManager->saveDatabaseVariables($request);
if (array_key_exists('success', $results)) {
// Automatically regenerating the key is disabled to prevent complications in the wizard process.
// This can cause issues with the CSRF token, resulting in "Token Mismatch" or "Invalid CSRF Token" errors.
// It is recommended that the user manually generates the key before running the wizard to ensure application security and stability.
// Artisan::call('key:generate --force');
Artisan::call('optimize:clear');
Artisan::call('config:clear');
Artisan::call('cache:clear');
Artisan::call('storage:link');
Artisan::call('migrate --seed --force');
// Set version.
InstallUtils::setCurrentVersion();
}
return response()->json($results);
}
public function getDatabaseEnvironment(Request $request)
{
$databaseData = [];
$connection = $request->connection ?? config('database.default');
switch ($connection) {
case 'sqlite':
$databaseData = [
'database_connection' => 'sqlite',
'database_name' => config('database.connections.sqlite.database', storage_path('database.sqlite')),
];
break;
case 'pgsql':
$databaseData = [
'database_connection' => 'pgsql',
'database_host' => '127.0.0.1',
'database_port' => 5432,
];
break;
case 'mysql':
$databaseData = [
'database_connection' => 'mysql',
'database_host' => '127.0.0.1',
'database_port' => 3306,
];
break;
}
return response()->json([
'config' => $databaseData,
'success' => true,
]);
}
}