diff --git a/CHANGELOG.md b/CHANGELOG.md index 9866df73d..10c2cfa2a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -38,6 +38,7 @@ Il formato utilizzato è basato sulle linee guida di [Keep a Changelog](http://k - Stampe dei consuntivi interni (i prezzi sono sostituiti dai costi) - Supporto all'inserimento manuale di maggiori attributi per le *Fatture Elettroniche*, tramite gli appositi pulsanti "Attributi avanzati" all'interno delle **Fatture di vendita** - Aggiunto Identificativo documento, Num Item, codici CIG e CUP in **DDT di uscita** + - Modulo **Newsletter** per la gestione delle campagne di newsletter sulla base delle informazioni delle **Anagrafiche** ### Modificato (Changed) @@ -45,10 +46,15 @@ Il formato utilizzato è basato sulle linee guida di [Keep a Changelog](http://k - Correzione dell'importazione delle *Fatture Elettroniche* per supportare Ritenuta d'Acconto (dove indicata), Rivalsa INPS (su tutto il documento) e Ritenuta contributi (su tutto il documento) - Miglioramento del sistema di evasione delle quantità nel passaggio tra documenti, ora integrato nelle classi Eloquent e completamente automatico - Correzione delle diciure generali *Imponibile scontato* in *Totale imponibile* e *Sconto* in *Sconto/maggiorazione* + - Aggiornamento degli hook per permettere l'aggiunta di task in background + - Invio email massimo + - Backup automatico + - **Articoli** ora eliminabili solo virtualmente attraverso il flag *deleted_at* ### Rimosso (Removed) - Funzione *get_costi_intervento* del modulo **Attività**, a causa dell'aggiornamento della maggior parte del sistema di gestione degli **Attività** con le classi Eloquent - Funzione *aggiorna_scadenziario* del modulo **Prima Nota** + - Classe *src/Mail.php* ### Fixed diff --git a/assets/src/js/functions/hooks.js b/assets/src/js/functions/hooks.js index 8baccdfaf..3a8b122d5 100644 --- a/assets/src/js/functions/hooks.js +++ b/assets/src/js/functions/hooks.js @@ -33,6 +33,8 @@ function startHooks() { } /** + * Esegue l'hook e lo visualizza. + * Considerare l'utilizzo di localStorage per bloccare l'esecuzione locale multipla dell'hook nel caso di problemi. * * @param hook * @param element_id diff --git a/index.php b/index.php index 4a4afe173..36d168d35 100644 --- a/index.php +++ b/index.php @@ -12,7 +12,7 @@ switch ($op) { $password = post('password'); if ($dbo->isConnected() && $dbo->isInstalled() && auth()->attempt($username, $password)) { - $_SESSION['keep_alive'] = (filter('keep_alive') != null); + $_SESSION['keep_alive'] = true; // Rimozione log vecchi $dbo->query('DELETE FROM `zz_operations` WHERE DATE_ADD(`created_at`, INTERVAL 30*24*60*60 SECOND) <= NOW()'); @@ -131,21 +131,10 @@ echo'> {[ "type": "password", "name": "password", "autocomplete": "current-password", "placeholder": "'.tr('Password').'", "icon-before": "" ]} - -
+ +
'.tr('Dimenticata la password?').'
- -
- -
- '.tr('Mantieni attiva la sessione').' - -
diff --git a/modules/newsletter/actions.php b/modules/newsletter/actions.php index ff05734a8..9aa9a6e48 100644 --- a/modules/newsletter/actions.php +++ b/modules/newsletter/actions.php @@ -53,6 +53,8 @@ switch (filter('op')) { $mail->content = $newsletter->content; $mail->save(); + + $newsletter->anagrafiche()->updateExistingPivot($anagrafica->id, ['id_email' => $mail->id], false); } $newsletter->state = 'WAIT'; @@ -62,6 +64,24 @@ switch (filter('op')) { break; + case 'block': + $mails = $newsletter->emails; + + foreach ($mails as $mail) { + if (empty($mail->sent_at)) { + $newsletter->emails()->updateExistingPivot($mail->id, ['id_email' => null], false); + + $mail->delete(); + } + } + + $newsletter->state = 'DEV'; + $newsletter->save(); + + flash()->info(tr('Coda della campagna newsletter svuotata!')); + + break; + case 'add_receivers': $receivers = post('receivers'); diff --git a/modules/newsletter/buttons.php b/modules/newsletter/buttons.php index 6773f835b..ff1c4742c 100644 --- a/modules/newsletter/buttons.php +++ b/modules/newsletter/buttons.php @@ -5,4 +5,9 @@ if ($newsletter->state == 'DEV') { '; +} else if ($newsletter->state == 'WAIT') { + echo ' +'; }