++ fix richiesta password prima di azzeramento applicazione
This commit is contained in:
@@ -26,6 +26,23 @@
|
||||
uploadInCorso: false,
|
||||
uploadPercento: 0,
|
||||
erroreUpload: '',
|
||||
passwordAzzeramento: '',
|
||||
|
||||
azzera() {
|
||||
if (!this.passwordAzzeramento) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (!confirm('Hai verificato il backup scaricato? Confermando, i dati vengono cancellati definitivamente.')) {
|
||||
return;
|
||||
}
|
||||
|
||||
const password = this.passwordAzzeramento;
|
||||
// Svuotato subito: se la password è sbagliata si ridigita, e nel
|
||||
// frattempo non resta nel campo di una scheda lasciata aperta.
|
||||
this.passwordAzzeramento = '';
|
||||
$wire.confermaAzzeramento(password);
|
||||
},
|
||||
|
||||
inviaRipristino(event) {
|
||||
const form = event.target;
|
||||
@@ -115,6 +132,22 @@
|
||||
ed è l’ultima possibilità di tornare indietro.
|
||||
</p>
|
||||
|
||||
{{-- La password sta in Alpine, non in una proprietà del
|
||||
componente: le proprietà pubbliche di Livewire tornano
|
||||
al browser dentro lo snapshot a ogni risposta, e una
|
||||
password non ha motivo di fare quel viaggio. Passata
|
||||
come parametro del metodo, viaggia solo in andata. --}}
|
||||
<div class="max-w-xs">
|
||||
<label for="passwordConferma" class="block text-xs font-medium text-amber-900">
|
||||
Conferma con la tua password
|
||||
</label>
|
||||
<input type="password" id="passwordConferma" autocomplete="current-password"
|
||||
x-model="passwordAzzeramento"
|
||||
x-on:keydown.enter.prevent="azzera()"
|
||||
class="mt-1 block w-full rounded-lg border-amber-300 shadow-sm focus:ring-red-500 focus:border-red-500 text-sm">
|
||||
@error('passwordConferma') <p class="mt-1 text-xs font-medium text-red-700">{{ $message }}</p> @enderror
|
||||
</div>
|
||||
|
||||
<div class="flex flex-wrap items-center gap-3">
|
||||
<a href="{{ route('backup.file', $operationId) }}"
|
||||
style="display:inline-flex;align-items:center;gap:6px;background:#fff;color:#92400e;border:1px solid #d97706;border-radius:8px;padding:8px 14px;font-size:13px;font-weight:500;text-decoration:none;">
|
||||
@@ -122,8 +155,9 @@
|
||||
</a>
|
||||
|
||||
<button type="button"
|
||||
wire:click="confermaAzzeramento"
|
||||
wire:confirm="Hai verificato il backup scaricato? Confermando, i dati vengono cancellati definitivamente."
|
||||
x-on:click="azzera()"
|
||||
x-bind:disabled="!passwordAzzeramento"
|
||||
x-bind:style="!passwordAzzeramento ? 'opacity:.5;cursor:not-allowed;' : ''"
|
||||
style="display:inline-flex;align-items:center;gap:6px;background:#b91c1c;color:#fff;border:1px solid #7f1d1d;border-radius:8px;padding:8px 14px;font-size:13px;font-weight:600;">
|
||||
Ho salvato il backup, azzera tutto
|
||||
</button>
|
||||
@@ -262,7 +296,7 @@
|
||||
</p>
|
||||
<ol class="text-xs text-gray-600 list-decimal list-inside space-y-1">
|
||||
<li><strong>Viene creato e scaricato un backup completo</strong> di tutto ciò che c’è adesso.</li>
|
||||
<li>L’operazione si ferma e aspetta: <strong>controlli il file scaricato e confermi</strong>. Fino a quel clic non viene toccato nulla, e puoi annullare.</li>
|
||||
<li>L’operazione si ferma e aspetta: <strong>controlli il file scaricato, digiti la tua password e confermi</strong>. Fino a quel clic non viene toccato nulla, e puoi annullare.</li>
|
||||
<li>Vengono eliminati territori, proclamatori, assegnazioni, campagne, zone, tipologie, anni di servizio, il registro attività e <strong>tutti i file caricati</strong>.</li>
|
||||
<li>Le impostazioni tornano ai valori di default e i ruoli vengono riseminati.</li>
|
||||
<li><strong>Tutti gli altri utenti vengono eliminati.</strong> Resta solo il tuo account di amministratore, con la password attuale — come un’installazione nuova, che ha un amministratore solo.</li>
|
||||
|
||||
Reference in New Issue
Block a user