From f050816b573047384cf27fa2d3c57994dd3049cb Mon Sep 17 00:00:00 2001 From: Luca Date: Thu, 16 Nov 2017 14:27:43 +0100 Subject: [PATCH] Warning before delete button Warning per documenti collegati alla scheda, prima del tasto elimina. --- modules/articoli/edit.php | 61 +++++++++++++++++++++++++++---------- modules/contratti/edit.php | 22 ++++++++----- modules/ddt/edit.php | 25 +++++++++------ modules/interventi/edit.php | 20 +++++++----- modules/ordini/edit.php | 21 +++++++------ modules/preventivi/edit.php | 22 ++++++++----- 6 files changed, 112 insertions(+), 59 deletions(-) diff --git a/modules/articoli/edit.php b/modules/articoli/edit.php index d6e019956..e2b8880cb 100644 --- a/modules/articoli/edit.php +++ b/modules/articoli/edit.php @@ -290,26 +290,55 @@ $("#categoria").change( function(){ }); - - - fetchArray('SELECT COUNT(*) AS tot FROM ( - SELECT `idarticolo` FROM `co_righe_documenti` WHERE `idarticolo` = '.prepare($id_record).' UNION - SELECT `idarticolo` FROM `dt_righe_ddt` WHERE `idarticolo` = '.prepare($id_record).' UNION - SELECT `idarticolo` FROM `or_righe_ordini` WHERE `idarticolo` = '.prepare($id_record).' UNION - SELECT `idarticolo` FROM `mg_articoli_interventi` WHERE `idarticolo` = '.prepare($id_record).' -) AS count'); +//fatture, ddt, preventivi collegati a questo articolo +$elementi = $dbo->fetchArray('SELECT `co_documenti`.`id`, `co_documenti`.`data`, `co_documenti`.`numero`, `co_documenti`.`numero_esterno`, `co_tipidocumento`.`descrizione` AS tipo_documento, `co_tipidocumento`.`dir` FROM `co_documenti` JOIN `co_tipidocumento` ON `co_tipidocumento`.`id` = `co_documenti`.`idtipodocumento` WHERE `co_documenti`.`id` IN (SELECT `iddocumento` FROM `co_righe_documenti` WHERE `idarticolo` = '.prepare($id_record).') UNION +SELECT `dt_ddt`.`id`, `dt_ddt`.`data`, `dt_ddt`.`numero`, `dt_ddt`.`numero_esterno`, `dt_tipiddt`.`descrizione` AS tipo_documento, `dt_tipiddt`.`dir` FROM `dt_ddt` JOIN `dt_tipiddt` ON `dt_tipiddt`.`id` = `dt_ddt`.`idtipoddt` WHERE `dt_ddt`.`id` IN (SELECT `idddt` FROM `dt_righe_ddt` WHERE `idarticolo` = '.prepare($id_record).') UNION +SELECT `co_preventivi`.`id`, `co_preventivi`.`data_bozza`, `co_preventivi`.`numero`, 0 AS numero_esterno , "Preventivo" AS tipo_documento, 0 AS dir FROM `co_preventivi` WHERE `co_preventivi`.`id` IN (SELECT `idpreventivo` FROM `co_righe_preventivi` WHERE `idarticolo` = '.prepare($id_record).') ORDER BY `data`'); -$tot = $count[0]['tot']; -if ($tot > 0) { + +if (!empty($elementi)) { echo ' -
- '.tr('Ci sono _NUM_ righe di documenti collegate', [ - '_NUM_' => $tot, - ]).'. - '.tr('Eliminando questo elemento si potrebbero verificare problemi nelle altre sezioni del gestionale!').' +
+

'.tr('_NUM_ altr_I_ document_I_ collegat_I_', [ + '_NUM_' => count($elementi), + '_I_' => (count($elementi)>1) ? tr('i') : tr('o') + ]).':

+
    '; + + foreach ($elementi as $elemento) { + $descrizione = tr('_DOC_ num. _NUM_ del _DATE_', [ + '_DOC_' => $elemento['tipo_documento'], + '_NUM_' => !empty($elemento['numero_esterno']) ? $elemento['numero_esterno'] : $elemento['numero'], + '_DATE_' => Translator::dateToLocale($elemento['data']), + ]); + + //se non è un preventivo è un ddt o una fattura + //se non è un ddt è una fattura. + if (in_array($elemento['tipo_documento'], ['Preventivo'])) { + $modulo ='Preventivi'; + } else if (!in_array($elemento['tipo_documento'], ['Ddt di vendita', 'Ddt di acquisto'])) { + $modulo = ($elemento['dir'] == 'entrata') ? 'Fatture di vendita' : 'Fatture di acquisto'; + } else { + $modulo = ($elemento['dir'] == 'entrata') ? 'Ddt di vendita' : 'Ddt di acquisto'; + } + + $id = $elemento['id']; + + echo ' +
  • '.Modules::link($modulo, $id, $descrizione).'
  • '; + } + + echo ' +
+

'.tr('Eliminando questo documento si potrebbero verificare problemi nelle altre sezioni del gestionale.').'

'; } + +?> + + + + \ No newline at end of file diff --git a/modules/contratti/edit.php b/modules/contratti/edit.php index 896d1417d..5e804a81e 100644 --- a/modules/contratti/edit.php +++ b/modules/contratti/edit.php @@ -365,19 +365,18 @@ if (!empty($records[0]['idcontratto_prev'])) { }); - - - + fetchArray('SELECT `co_documenti`.*, `co_tipidocumento`.`descrizione` AS tipo_documento, `co_tipidocumento`.`dir` FROM `co_documenti` JOIN `co_tipidocumento` ON `co_tipidocumento`.`id` = `co_documenti`.`idtipodocumento` WHERE `co_documenti`.`id` IN (SELECT `iddocumento` FROM `co_righe_documenti` WHERE `idcontratto` = '.prepare($id_record).') ORDER BY `data`'); if (!empty($fatture)) { echo ' -
-

'.tr('Ci sono _NUM_ documenti collegate a questo elemento', [ + div class="alert alert-warning"> +

'.tr('_NUM_ altr_I_ document_I_ collegat_I_', [ '_NUM_' => count($fatture), - ]).'.

+ '_I_' => (count($fatture)>1) ? tr('i') : tr('o') + ]).':

    '; foreach ($fatture as $fattura) { @@ -396,6 +395,13 @@ if (!empty($fatture)) { echo '
-

'.tr('Eliminando questo elemento si potrebbero verificare problemi nelle altre sezioni del gestionale!').'

+

'.tr('Eliminando questo documento si potrebbero verificare problemi nelle altre sezioni del gestionale.').'

'; } + +?> + + + + + \ No newline at end of file diff --git a/modules/ddt/edit.php b/modules/ddt/edit.php index 234668d17..38fa11e4a 100644 --- a/modules/ddt/edit.php +++ b/modules/ddt/edit.php @@ -193,20 +193,19 @@ include $docroot.'/modules/ddt/row-list.php'; }); - - - + fetchArray('SELECT `co_documenti`.*, `co_tipidocumento`.`descrizione` AS tipo_documento, `co_tipidocumento`.`dir` FROM `co_documenti` JOIN `co_tipidocumento` ON `co_tipidocumento`.`id` = `co_documenti`.`idtipodocumento` WHERE `co_documenti`.`id` IN (SELECT `iddocumento` FROM `co_righe_documenti` WHERE `idddt` = '.prepare($id_record).') ORDER BY `data`'); if (!empty($fatture)) { echo ' -
-

'.tr('Ci sono _NUM_ documenti collegate a questo elemento', [ - '_NUM_' => count($fatture), - ]).'.

-
    '; + div class="alert alert-warning"> +

    '.tr('_NUM_ altr_I_ document_I_ collegat_I_', [ + '_NUM_' => count($fatture), + '_I_' => (count($fatture)>1) ? tr('i') : tr('o') + ]).':

    +
      '; foreach ($fatture as $fattura) { $descrizione = tr('_DOC_ num. _NUM_ del _DATE_', [ @@ -224,6 +223,12 @@ if (!empty($fatture)) { echo '
    -

    '.tr('Eliminando questo elemento si potrebbero verificare problemi nelle altre sezioni del gestionale!').'

    +

    '.tr('Eliminando questo documento si potrebbero verificare problemi nelle altre sezioni del gestionale.').'

'; } + +?> + + + + diff --git a/modules/interventi/edit.php b/modules/interventi/edit.php index b5c122108..be7ffe493 100644 --- a/modules/interventi/edit.php +++ b/modules/interventi/edit.php @@ -292,21 +292,19 @@ if (empty($records[0]['firma_file'])) { }); - - - fetchArray('SELECT `co_documenti`.*, `co_tipidocumento`.`descrizione` AS tipo_documento, `co_tipidocumento`.`dir` FROM `co_documenti` JOIN `co_tipidocumento` ON `co_tipidocumento`.`id` = `co_documenti`.`idtipodocumento` WHERE `co_documenti`.`id` IN (SELECT `iddocumento` FROM `co_righe_documenti` WHERE `idintervento` = '.prepare($id_record).') ORDER BY `data`'); if (!empty($fatture)) { echo ' -
-

'.tr('Ci sono _NUM_ documenti collegate a questo elemento', [ + div class="alert alert-warning"> +

'.tr('_NUM_ altr_I_ document_I_ collegat_I_', [ '_NUM_' => count($fatture), - ]).'.

+ '_I_' => (count($fatture)>1) ? tr('i') : tr('o') + ]).':

    '; foreach ($fatture as $fattura) { @@ -325,6 +323,12 @@ if (!empty($fatture)) { echo '
-

'.tr('Eliminando questo elemento si potrebbero verificare problemi nelle altre sezioni del gestionale!').'

+

'.tr('Eliminando questo documento si potrebbero verificare problemi nelle altre sezioni del gestionale.').'

'; } + +?> + + + + \ No newline at end of file diff --git a/modules/ordini/edit.php b/modules/ordini/edit.php index 8b451ef8f..192cc07c7 100644 --- a/modules/ordini/edit.php +++ b/modules/ordini/edit.php @@ -124,20 +124,17 @@ if ($module['name'] == 'Ordini cliente') { {( "name": "filelist_and_upload", "id_module": "", "id_record": "" )} - - - - fetchArray('SELECT `co_documenti`.`id`, `co_documenti`.`data`, `co_documenti`.`numero`, `co_documenti`.`numero_esterno`, `co_tipidocumento`.`descrizione` AS tipo_documento, `co_tipidocumento`.`dir` FROM `co_documenti` JOIN `co_tipidocumento` ON `co_tipidocumento`.`id` = `co_documenti`.`idtipodocumento` WHERE `co_documenti`.`id` IN (SELECT `iddocumento` FROM `co_righe_documenti` WHERE `idordine` = '.prepare($id_record).') UNION SELECT `dt_ddt`.`id`, `dt_ddt`.`data`, `dt_ddt`.`numero`, `dt_ddt`.`numero_esterno`, `dt_tipiddt`.`descrizione` AS tipo_documento, `dt_tipiddt`.`dir` FROM `dt_ddt` JOIN `dt_tipiddt` ON `dt_tipiddt`.`id` = `dt_ddt`.`idtipoddt` WHERE `dt_ddt`.`id` IN (SELECT `idddt` FROM `dt_righe_ddt` WHERE `idordine` = '.prepare($id_record).') ORDER BY `data`'); if (!empty($elementi)) { echo ' -
-

'.tr('Ci sono _NUM_ documenti collegate a questo elemento', [ +

+

'.tr('_NUM_ altr_I_ document_I_ collegat_I_', [ '_NUM_' => count($elementi), - ]).'.

+ '_I_' => (count($elementi)>1) ? tr('i') : tr('o') + ]).':

    '; foreach ($elementi as $elemento) { @@ -161,6 +158,12 @@ if (!empty($elementi)) { echo '
-

'.tr('Eliminando questo elemento si potrebbero verificare problemi nelle altre sezioni del gestionale!').'

+

'.tr('Eliminando questo documento si potrebbero verificare problemi nelle altre sezioni del gestionale.').'

'; } + +?> + + + + diff --git a/modules/preventivi/edit.php b/modules/preventivi/edit.php index 9c936ea51..385975312 100644 --- a/modules/preventivi/edit.php +++ b/modules/preventivi/edit.php @@ -158,19 +158,18 @@ include $docroot.'/modules/preventivi/row-list.php';
- - - + fetchArray('SELECT `co_documenti`.*, `co_tipidocumento`.`descrizione` AS tipo_documento, `co_tipidocumento`.`dir` FROM `co_documenti` JOIN `co_tipidocumento` ON `co_tipidocumento`.`id` = `co_documenti`.`idtipodocumento` WHERE `co_documenti`.`id` IN (SELECT `iddocumento` FROM `co_righe_documenti` WHERE `idpreventivo` = '.prepare($id_record).') ORDER BY `data`'); if (!empty($fatture)) { echo ' -
-

'.tr('Ci sono _NUM_ documenti collegate a questo elemento', [ + div class="alert alert-warning"> +

'.tr('_NUM_ altr_I_ document_I_ collegat_I_', [ '_NUM_' => count($fatture), - ]).'.

+ '_I_' => (count($fatture)>1) ? tr('i') : tr('o') + ]).':

-

'.tr('Eliminando questo elemento si potrebbero verificare problemi nelle altre sezioni del gestionale!').'

+

'.tr('Eliminando questo documento si potrebbero verificare problemi nelle altre sezioni del gestionale.').'

'; } + +?> + + + + + \ No newline at end of file