perf: ⚡️ Miglioramento funzione di test
- Divisi silenziatori (success e error) - Rimosso success dalla risposta del backend (ci si deve riferire solo ai codici errore per sapere se una richiesta ha avuto esito positivo o negativo)
This commit is contained in:
parent
c31f9b7d3f
commit
ffea235e0a
|
@ -5,9 +5,9 @@ namespace App\Http\Controllers;
|
|||
use Exception;
|
||||
use Illuminate\Http\JsonResponse;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Http\Response;
|
||||
use Illuminate\Support\Facades\DB;
|
||||
use Illuminate\Support\Str;
|
||||
use Symfony\Component\HttpFoundation\Response;
|
||||
|
||||
class SetupController extends Controller
|
||||
{
|
||||
|
@ -15,7 +15,7 @@ class SetupController extends Controller
|
|||
* Verifica la connessione al database secondo i parametri indicati nella richiesta.
|
||||
* Restituisce un array di permessi mancanti in caso la connessione avvenga con successo, oppure null in caso contrario.
|
||||
*/
|
||||
final public function testDatabase(Request $request): JsonResponse
|
||||
final public function testDatabase(Request $request): Response|JsonResponse
|
||||
{
|
||||
$database_name = $request->input('database_name');
|
||||
|
||||
|
@ -79,12 +79,10 @@ class SetupController extends Controller
|
|||
}
|
||||
|
||||
if (count($requirements) === 0) {
|
||||
return response()->json([
|
||||
'success' => true,
|
||||
]);
|
||||
return response()->noContent();
|
||||
}
|
||||
return \response()->json([
|
||||
'success' => false,
|
||||
|
||||
return response()->json([
|
||||
'error' => __("L'utente del database non ha i seguenti permessi necessari: ", $requirements),
|
||||
], Response::HTTP_BAD_REQUEST);
|
||||
}
|
||||
|
|
|
@ -218,14 +218,13 @@ export default class SetupPage extends Page {
|
|||
window.location.href = window.route('app.language', {language: event.target.value});
|
||||
}
|
||||
|
||||
async testDatabase(silent = false): boolean {
|
||||
async testDatabase(silentSuccess = false, silentError = false): boolean {
|
||||
const form = $('form');
|
||||
let response;
|
||||
|
||||
try {
|
||||
response = await redaxios.options(window.route('setup.test'), {data: getFormData(form)});
|
||||
await redaxios.options(window.route('setup.test'), {data: getFormData(form)});
|
||||
} catch (error) {
|
||||
if (!silent) {
|
||||
if (!silentError) {
|
||||
const alert = $('#test-connection-alert-error');
|
||||
alert.find('.content').text(__('Si è verificato un errore durante la connessione al'
|
||||
+ ' database: :error', {error: error.data.error}));
|
||||
|
@ -234,20 +233,10 @@ export default class SetupPage extends Page {
|
|||
return false;
|
||||
}
|
||||
|
||||
if (response.data.success) {
|
||||
if (!silent) {
|
||||
document.querySelector('#test-connection-alert-success')
|
||||
.show();
|
||||
}
|
||||
return true;
|
||||
if (!silentSuccess) {
|
||||
document.querySelector('#test-connection-alert-success')
|
||||
.show();
|
||||
}
|
||||
|
||||
if (!silent) {
|
||||
const alert = $('#test-connection-alert-error');
|
||||
alert.find('.content').text(__('Si è verificato un errore durante la connessione al'
|
||||
+ ' database: :error', {error: response.data.error}));
|
||||
alert.get(0).show();
|
||||
}
|
||||
return false;
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue