| Riepilogo | Un componente tema leggero che richiede conferma prima di eliminare un post | |
| Repository | GitHub - scavin/discourse-confirm-delete · GitHub | |
| Guida all’installazione | Come installare un tema o un componente tema | |
| Principiante con i temi Discourse? | Guida per principianti all’uso dei temi Discourse |
Installa questo componente tema
Condivido un piccolo componente tema che aggiunge un passaggio di conferma prima che un post venga eliminato.
Per impostazione predefinita, facendo clic sul pulsante di eliminazione viene eseguita immediatamente l’azione di eliminazione standard di Discourse. Questo componente visualizza prima la finestra di dialogo di conferma di pericolo nativa di Discourse, aiutando a prevenire eliminazioni accidentali.
Cosa fa?
Quando un utente fa clic sul pulsante Elimina su un post, il componente visualizza una finestra di dialogo di conferma:
Elimina post
Sei sicuro di voler eliminare questo post?
Le azioni disponibili sono:
- Annulla — chiude la finestra di dialogo senza fare nulla
- Elimina — prosegue con l’azione di eliminazione originale di Discourse
Caratteristiche principali
Utilizza l’interfaccia utente della finestra di dialogo nativa di Discourse
Utilizza un pulsante Elimina di stile “pericolo” rosso
Preserva il comportamento di eliminazione originale di Discourse
Non modifica i controlli delle autorizzazioni
Non modifica il Core di Discourse
Nessun plugin richiesto
Nessun jQuery o window.confirm()
Nessuna simulazione di clic DOM
Funziona su desktop e mobile
Traduzioni in inglese e cinese semplificato
Le altre lingue ricadono sull’inglese
Gli amministratori possono sovrascrivere il testo tramite le traduzioni del tema
Come funziona
Il componente utilizza le API frontend ufficiali di Discourse:
apiInitializer- il trasformatore di valori
post-menu-buttons - il servizio integrato
dialog.deleteConfirm()
Sostituisce il componente del pulsante Elimina nel menu del post con un piccolo wrapper. Dopo la conferma, il wrapper chiama l’azione originale deletePost.
Questo significa che il componente non reimplementa l’eliminazione, non effettua richieste API proprie e non bypassa la logica di autorizzazione esistente di Discourse.
Dopo l’installazione:
- Apri il componente in Amministratore → Personalizza → Temi
- Aggiungilo ai temi in cui deve essere abilitato
- Aggiorna la pagina dell’argomento
- Fai clic sul pulsante Elimina su un post per testare la finestra di dialogo di conferma
Traduzioni
Il componente include attualmente:
- Inglese (
en) - Cinese semplificato (
zh_CN)
Il titolo della finestra di dialogo, il messaggio, il pulsante Annulla e il pulsante Elimina utilizzano tutti chiavi di traduzione del tema. Accogliamo con piacere ulteriori traduzioni.
Compatibilità
Progettato per le versioni attuali di Discourse che utilizzano il menu dei post Glimmer moderno e l’API Plugin.
Spero che questo piccolo componente aiuti a prevenire l’eliminazione accidentale dei post. Feedback, segnalazioni di bug, traduzioni e suggerimenti sono benvenuti! ![]()
