Skip to content

Releases: dadebertolino/db-event-manager

v1.4.0 — Sicurezza endpoint pubblici, prova del consenso, eventi su più giorni

Choose a tag to compare

@dadebertolino dadebertolino released this 28 Aug 07:10

Aggiornamento consigliato a tutti i siti: chiude un'esposizione di dati personali nelle pagine pubbliche e corregge un bug che impediva il salvataggio corretto di IP e prova del consenso.

⚠️ Dopo l'aggiornamento

Le pagine pubbliche di check-in e partecipanti richiedono ora obbligatoriamente un PIN. Se non ne avevi configurato uno, viene generato automaticamente: leggilo in Event Manager → Impostazioni e comunicalo allo staff prima del prossimo evento. Se avevi già un PIN, resta invariato e non cambia nulla.

Sicurezza

  • Le pagine pubbliche di check-in e partecipanti richiedono ora obbligatoriamente un PIN. Prima era opzionale e vuoto di default: chiunque conoscesse l'indirizzo poteva leggere le anagrafiche complete degli iscritti, approvare o annullare iscrizioni e far partire email dal sito
  • Nuova classe DBEM_Security: confronto del PIN in tempo costante (hash_equals), rate limit di 10 tentativi per IP ogni 15 minuti, verifica nonce su tutte le chiamate AJAX pubbliche (protezione CSRF)
  • Corretto un XSS memorizzato nella pagina pubblica partecipanti: il nome di un iscritto poteva iniettare attributi HTML nella tabella vista dall'organizzatore
  • Le azioni sui partecipanti sono vincolate all'evento selezionato
  • Export CSV: neutralizzate le formule (=, +, -, @) interpretate da Excel

Dati e consenso

  • Corretto l'array di format di wpdb->insert, che aveva 8 specificatori per 13 colonne: l'indirizzo IP veniva salvato come 0 a ogni iscrizione e, con checkbox GDPR attiva, testo, timestamp e URL del consenso venivano azzerati. Su MySQL in strict mode l'iscrizione falliva del tutto mostrando comunque un messaggio di successo
  • Corretto uno statement troncato che rendeva inefficace il controllo di errore sull'inserimento
  • Il path DB Form Builder non registra più un consenso non verificato: nuovo campo "Campo Privacy" nella mappatura del form, la prova viene salvata solo a fronte di una checkbox effettivamente spuntata
  • Nuovo uninstall.php con opzione "Elimina tutti i dati alla disinstallazione" (disattivata di default)

Elenco eventi

  • Gli eventi su più giorni mostrano un intervallo nel riquadro data (21-25 SET) invece del solo giorno di inizio, la riga di dettaglio riporta l'intervallo completo e compare il badge "Più date"
  • Nuova opzione per evento "Non mostrare il giorno nel riquadro della card": il riquadro riporta solo mese e anno

Correzioni

  • Il promemoria evento ora funziona: nuovo campo "Promemoria evento" (N ore prima dell'inizio). L'hook cron esisteva ma non veniva mai pianificato
  • L'azione in blocco "Conferma" non reinvia più l'email a chi era già confermato
  • Corretto il markup del metabox Iscrizioni: un </table> fuori posto lasciava la sezione Privacy/GDPR e "Assegnazione orario" senza layout
  • Capability corretta nel salvataggio evento (edit_post al posto di manage_options)
  • Rimossa la registrazione AJAX dbem_save_event_meta, il cui callback non è mai esistito
  • Aggiunto load_plugin_textdomain e cartella languages/: le stringhe sono ora traducibili
  • Lo shortcode [dbem_event] non applica più the_content in modo annidato

Nota sulla v1.3.1

Il tag v1.3.1 era stato creato su un commit in cui l'header del plugin dichiarava ancora Version: 1.3.0, quindi i siti che l'avevano installata continuavano a vedersi proporre l'aggiornamento. Con la 1.4.0 header e tag coincidono e la segnalazione rientra.

v1.3.1

Choose a tag to compare

@dadebertolino dadebertolino released this 21 May 07:00

Improved csv export

v1.3.0

Choose a tag to compare

@dadebertolino dadebertolino released this 03 May 17:17

1.3.0

Integrazione ecosistema privacy DB: dichiarazioni trattamenti al Privacy Hub, DSAR export/erase con dual channel (Hub + WP core), consent storage con 5 colonne GDPR
Checkbox GDPR configurabile per evento: on/off, testo personalizzabile, link privacy policy (fallback a pagina Privacy WP)
Link "Leggi l'informativa privacy" cliccabile nel form di iscrizione
Checkbox GDPR condizionale: visibile e validata solo se attivata per l'evento
Fix variabili consent mancanti nel metodo iscrizione via DB Form Builder
Dichiarazione email privacy con mittente configurato e info trasporto SMTP
Costante DBEM_DSAR_AVAILABLE per integrazione con Privacy Hub policy generator
1.2.0

Pagina pubblica partecipanti: iscrizione manuale (nome + email + orario opzionale) con generazione QR e invio email automatico
Pagina pubblica partecipanti: modifica orario assegnato con modal dedicato (bottone 🕐)
Pagina pubblica partecipanti: export CSV lato client con filtro attivo
Fix sfarfallio hover sulla tabella partecipanti
Bottoni azioni a dimensione fissa per stabilità layout
1.1.0

Approvazione con assegnazione orario
Form orario inline nel link di approvazione email
Nuovo placeholder email {orario}
Se assegnazione orario è attiva, la data evento mostra solo il giorno (senza ora)
Colonna "Orario assegnato" nella tabella partecipanti admin e nel CSV export
Libreria phpqrcode refactorizzata con namespace isolato (DBEM_QRcode_Lib) per evitare conflitti
Generazione QR via file temporaneo per compatibilità con ambienti restrittivi
Fix timezone: le date vengono visualizzate in ora locale senza doppia conversione
Nuove costanti protette con if (!defined(...)) per convivenza con altri plugin QR
Stati "In attesa" e "Rifiutato" aggiunti ai label export CSV
1.0.0

Release iniziale
Gestione eventi con CPT, categorie, meta
Form iscrizione integrato + integrazione DB Form Builder
Modalità accettazione automatica e con approvazione
Approvazione via email con bottoni Approva/Rifiuta (link HMAC)
QR code con phpqrcode (libreria PHP pura affidabile)
Check-in con scanner QR — pagina pubblica con PIN
Ricerca partecipanti cross-evento
Email: conferma, pending, approvazione, rifiuto, promemoria, survey, annullamento
Survey post-evento con link univoco
Gestione partecipanti con 5 stati, tooltip, azioni bulk, export CSV
Shortcode con parametri: past, limit, cols, category
Blocchi Gutenberg
Aggiornamenti automatici da GitHub
Design system admin condiviso (db-admin-ui.css)
Accessibilità WCAG 2.1 AA

V1.2.0 Fixes

Choose a tag to compare

@dadebertolino dadebertolino released this 28 Apr 08:52
v1.2.0

v1.2.0

v1.1.0

Choose a tag to compare

@dadebertolino dadebertolino released this 22 Apr 06:43
v1.1.0  Corrections and improvements

v1.0.0

Choose a tag to compare

@dadebertolino dadebertolino released this 12 Apr 09:04
first public release