diff --git a/editor.php b/editor.php
index e6ccde6f7..2630c0f69 100755
--- a/editor.php
+++ b/editor.php
@@ -18,11 +18,13 @@ $query = Util\Query::getQuery($module, [
]);
Util\Query::setSegments(true);
+$query = str_replace(['AND `deleted_at` IS NULL', '`deleted_at` IS NULL', 'AND deleted_at IS NULL', 'deleted_at IS NULL'], '', $query);
+
$has_access = !empty($query) ? $dbo->fetchNum($query) !== 0 : true;
if ($has_access) {
// Inclusione gli elementi fondamentali
- include_once $docroot.'/actions.php';
+ include_once DOCROOT.'/actions.php';
}
if (empty($record) || !$has_access) {
@@ -104,6 +106,26 @@ if (empty($record) || !$has_access) {
';
+ if(!empty($record['deleted_at'])){
+ echo '
+
+
'.tr('Ripristinare il record?').'
+
+
+ '.tr('Ripristina').'
+
+
+
+ ';
+ }
+
// Pulsanti di default
echo '
@@ -326,7 +348,7 @@ if (empty($record) || !$has_access) {
$id_plugin = $plugin['id'];
- include $docroot.'/include/manager.php';
+ include DOCROOT.'/include/manager.php';
echo '
';
diff --git a/modules/anagrafiche/actions.php b/modules/anagrafiche/actions.php
index 9602258de..a2733483f 100644
--- a/modules/anagrafiche/actions.php
+++ b/modules/anagrafiche/actions.php
@@ -5,6 +5,9 @@ include_once __DIR__.'/../../core.php';
use Modules\Anagrafiche\Anagrafica;
switch (post('op')) {
+ case 'restore':
+ $anagrafica->restore();
+
case 'update':
// Informazioni sulla sede
$sede = $anagrafica->sedeLegale;
@@ -241,26 +244,12 @@ switch (post('op')) {
case 'delete':
// Se l'anagrafica non è l'azienda principale, la disattivo
- if (!in_array($id_azienda, $tipi_anagrafica)) {
- $interventi = $dbo->fetchOne('SELECT id FROM in_interventi WHERE idanagrafica='.prepare($id_record));
- $preventivi = $dbo->fetchOne('SELECT id FROM co_preventivi WHERE idanagrafica='.prepare($id_record));
- $contratti = $dbo->fetchOne('SELECT id FROM co_contratti WHERE idanagrafica='.prepare($id_record));
- $ordini = $dbo->fetchOne('SELECT id FROM or_ordini WHERE idanagrafica='.prepare($id_record));
- $ddt = $dbo->fetchOne('SELECT id FROM dt_ddt WHERE idanagrafica='.prepare($id_record));
- $fatture = $dbo->fetchOne('SELECT id FROM co_documenti WHERE idanagrafica='.prepare($id_record));
+ if (!$anagrafica->isAzienda()) {
+ //$anagrafica->delete();
+ $dbo->query('UPDATE an_anagrafiche SET deleted_at = NOW() WHERE idanagrafica = '.prepare($id_record));
- // Se non ci sono documenti collegati, elimino l'anagrafica
- if (count($interventi) == 0 && count($preventivi) == 0 && count($contratti) == 0 && count($ordini) == 0 && count($ddt) == 0 && count($fatture) == 0) {
- $dbo->query('DELETE FROM an_anagrafiche WHERE idanagrafica = '.prepare($id_record));
- }
-
- // altrimenti la disabilito solo
- else {
- $dbo->query('UPDATE an_anagrafiche SET deleted_at = NOW() WHERE idanagrafica = '.prepare($id_record));
-
- // Se l'anagrafica è collegata ad un utente lo disabilito
- $dbo->query('UPDATE zz_users SET enabled = 0 WHERE idanagrafica = '.prepare($id_record));
- }
+ // Se l'anagrafica è collegata ad un utente lo disabilito
+ $dbo->query('UPDATE zz_users SET enabled = 0 WHERE idanagrafica = '.prepare($id_record));
flash()->info(tr('Anagrafica eliminata!'));
}
diff --git a/modules/anagrafiche/edit.php b/modules/anagrafiche/edit.php
index 0f814eb5a..fc31b9812 100644
--- a/modules/anagrafiche/edit.php
+++ b/modules/anagrafiche/edit.php
@@ -26,7 +26,7 @@ if (!$cliente) {
?>