diff --git a/CHANGELOG.md b/CHANGELOG.md index 3c28a4343..45b276402 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,7 +4,7 @@ Tutti i maggiori cambiamenti di questo progetto saranno documentati in questo fi Il formato utilizzato è basato sulle linee guida di [Keep a Changelog](http://keepachangelog.com/), e il progetto segue il [Semantic Versioning](http://semver.org/) per definire le versioni delle release. -- [2.3.1 (2018-02-16)](#231) +- [2.3.1 (2018-02-19)](#231-2018-02-19) - [Aggiunto (Added)](#aggiunto-added) - [Modificato (Changed)](#modificato-changed) - [Rimosso (Removed)](#rimosso-removed) @@ -25,7 +25,7 @@ Il formato utilizzato è basato sulle linee guida di [Keep a Changelog](http://k - [Fixed](#fixed) -## 2.3.1 (2018-02-16) +## 2.3.1 (2018-02-19) ### Aggiunto (Added) - Aggiunti i seriali in stampa @@ -33,7 +33,7 @@ Il formato utilizzato è basato sulle linee guida di [Keep a Changelog](http://k - Aggiunta tramite flag la possibilità di inserire la descrizione dell'intervento in fattura - Aggiunta esportazione bulk in zip dei pdf degli interventi selezionati - Aggiunte informazioni del cliente e fornitore nelle relative stampe ordini - + ### Modificato (Changed) - Migliorati i widget di "Crediti da clienti" e "Debiti verso fornitori", con calcolo parziale del rimanente - Disabilitato di default il modulo "Viste" diff --git a/modules/aggiornamenti/edit.php b/modules/aggiornamenti/edit.php index 93e0df3d6..b744634a4 100644 --- a/modules/aggiornamenti/edit.php +++ b/modules/aggiornamenti/edit.php @@ -136,7 +136,7 @@ foreach ($modules as $module) { $compatible = ''; $class = 'success'; } else { - $compatible = ''; + $compatible = ''; $class = 'danger'; } @@ -200,7 +200,7 @@ foreach ($modules as $module) { $compatible = ''; $class = 'success'; } else { - $compatible = ''; + $compatible = ''; $class = 'danger'; } diff --git a/modules/anagrafiche/edit.php b/modules/anagrafiche/edit.php index 8c1f94533..2c3f5e266 100644 --- a/modules/anagrafiche/edit.php +++ b/modules/anagrafiche/edit.php @@ -9,7 +9,7 @@ $google = Settings::get('Google Maps API key'); if (!empty($google)) { echo ' -'; +'; } if (!$cliente) { diff --git a/modules/dashboard/edit.php b/modules/dashboard/edit.php index e9858be3d..5f0b268b8 100644 --- a/modules/dashboard/edit.php +++ b/modules/dashboard/edit.php @@ -37,6 +37,9 @@ if (!isset($_SESSION['dashboard']['idzone'])) { $rs = $dbo->fetchArray('SELECT id, descrizione FROM an_zone'); $_SESSION['dashboard']['idzone'] = ["'-1'"]; + + //"Nessuna zona" di default + $_SESSION['dashboard']['idzone'][] = "'0'"; for ($i = 0; $i < count($rs); ++$i) { $_SESSION['dashboard']['idzone'][] = "'".$rs[$i]['id']."'"; @@ -235,7 +238,7 @@ $checks = ''; $count = 0; $total = 0; -$rs = $dbo->fetchArray('SELECT id, descrizione FROM an_zone ORDER BY descrizione ASC'); +$rs = $dbo->fetchArray('(SELECT 0 AS ordine, \'0\' AS id, \'Nessuna zona\' AS descrizione) UNION (SELECT 1 AS ordine, id, descrizione FROM an_zone) ORDER BY ordine, descrizione ASC'); $total = count($rs); for ($i = 0; $i < count($rs); ++$i) { diff --git a/modules/fatture/actions.php b/modules/fatture/actions.php index 37de86c64..543c915be 100644 --- a/modules/fatture/actions.php +++ b/modules/fatture/actions.php @@ -295,7 +295,7 @@ switch (post('op')) { $codice = $rs[0]['codice']; //Fatturo le ore di lavoro raggruppate per costo orario - $rst = $dbo->fetchArray('SELECT SUM( ROUND( TIMESTAMPDIFF( MINUTE, orario_inizio, orario_fine ) / 60, '.get_var('Cifre decimali per quantità').' ) ) AS tot_ore, SUM(prezzo_ore_consuntivo) AS tot_prezzo_ore_consuntivo, prezzo_ore_unitario FROM in_interventi_tecnici WHERE idintervento='.prepare($idintervento).' GROUP BY prezzo_ore_unitario'); + $rst = $dbo->fetchArray('SELECT SUM( ROUND( TIMESTAMPDIFF( MINUTE, orario_inizio, orario_fine ) / 60, '.get_var('Cifre decimali per quantità').' ) ) AS tot_ore, SUM(prezzo_ore_consuntivo) AS tot_prezzo_ore_consuntivo, SUM(sconto) AS tot_sconto, prezzo_ore_unitario FROM in_interventi_tecnici WHERE idintervento='.prepare($idintervento).' GROUP BY prezzo_ore_unitario'); //Aggiunta riga intervento sul documento if (sizeof($rst) == 0) { @@ -310,7 +310,7 @@ switch (post('op')) { $query = 'SELECT * FROM co_iva WHERE id='.prepare($idiva); $rs = $dbo->fetchArray($query); - $sconto = $rst[$i]['sconto']; + $sconto = $rst[$i]['tot_sconto']; $subtot = $rst[$i]['tot_prezzo_ore_consuntivo']; $iva = ($subtot - $sconto) / 100 * $rs[0]['percentuale']; $iva_indetraibile = $iva / 100 * $rs[0]['indetraibile']; diff --git a/modules/interventi/add.php b/modules/interventi/add.php index 45199f238..d065e1e75 100644 --- a/modules/interventi/add.php +++ b/modules/interventi/add.php @@ -71,7 +71,7 @@ elseif (!empty($idcontratto) && !empty($idcontratto_riga)) { $idimpianto = implode(',', array_column($rs, 'idimpianto')); // Seleziono "In programmazione" come stato - $rs = $dbo->fetchArray("SELECT * FROM in_statiintervento WHERE codice='WIP'"); + $rs = $dbo->fetchArray("SELECT * FROM in_statiintervento WHERE idstatointervento='WIP'"); $idstatointervento = $rs[0]['idstatointervento']; } diff --git a/modules/preventivi/edit.php b/modules/preventivi/edit.php index 6170d8b03..8aa670566 100644 --- a/modules/preventivi/edit.php +++ b/modules/preventivi/edit.php @@ -123,9 +123,9 @@ $_SESSION['superselect']['idanagrafica'] = $records[0]['idanagrafica']; -
+
@@ -152,9 +152,10 @@ $_SESSION['superselect']['idanagrafica'] = $records[0]['idanagrafica']; -
+ +

diff --git a/modules/viste/edit.php b/modules/viste/edit.php index c2bcdba21..e605a789c 100644 --- a/modules/viste/edit.php +++ b/modules/viste/edit.php @@ -132,16 +132,17 @@ if (!empty($options) && $options != 'custom') {
-
+
{[ "type": "text", "label": "'.tr('Nome').'", "name": "name['.$key.']", "value": "'.$field['name'].'"'; if (!$editable) { echo ', "readonly": "1"'; } echo ', "help": "'.tr('Nome con cui il campo viene identificato e visualizzato nella tabella').'" ]}
- -
- {[ "type": "text", "label": "'.tr('Query prevista').'", "name": "query['.$key.']", "value": "'.$field['query'].'"'; +
+
+
+ {[ "type": "textarea", "label": "'.tr('Query prevista').'", "name": "query['.$key.']", "value": "'.$field['query'].'"'; if (!$editable) { echo ', "readonly": "1"'; } @@ -275,13 +276,13 @@ if (!empty($options) && $options != 'custom') {
- -
+
{[ "type": "text", "label": "'.tr('Nome').'", "name": "name[-id-]" ]}
- -
- {[ "type": "text", "label": "'.tr('Query prevista').'", "name": "query[-id-]" ]} +
+
+
+ {[ "type": "textarea", "label": "'.tr('Query prevista').'", "name": "query[-id-]" ]}
diff --git a/plugins/sedi/edit.php b/plugins/sedi/edit.php index f0fccfbcd..cc21108e5 100644 --- a/plugins/sedi/edit.php +++ b/plugins/sedi/edit.php @@ -7,7 +7,7 @@ $google = Settings::get('Google Maps API key'); /* if (!empty($google)) { echo ' -'; +'; } */ diff --git a/templates/base/header.php b/templates/base/header.php index a546ce0dc..9ce6fa0e2 100644 --- a/templates/base/header.php +++ b/templates/base/header.php @@ -9,14 +9,22 @@ * La personalizzazione specifica dell'header deve comunque seguire lo standard della cartella custom: anche se il file header.php non esiste nella stampa originaria, se si vuole personalizzare l'header bisogna crearlo all'interno della cartella custom. */ +// Individuazione dell'immagine +$logo = $infos['full_directory'].'/logo_azienda.jpg'; +if (!file_exists($logo)) { + $logo = __DIR__.'/logo_azienda.jpg'; +} + +// Header return '
- Logo + Logo

'.$f_ragionesociale.'

-

'.$f_indirizzo.' '.$f_citta_full.'

+

'.$f_indirizzo.'

+

'.$f_citta_full.'

'.(!empty($f_piva) ? tr('P.Iva').': '.$f_piva : '').'

'.(!empty($f_codicefiscale) ? tr('C.F.').': '.$f_codicefiscale : '').'

'.(!empty($f_capsoc) ? tr('Cap.Soc.').': '.$f_capsoc : '').'

diff --git a/templates/base/logo_azienda.jpg b/templates/base/logo_azienda.jpg new file mode 100644 index 000000000..3fd391452 Binary files /dev/null and b/templates/base/logo_azienda.jpg differ diff --git a/templates/contratti/body.php b/templates/contratti/body.php index 3500772ab..dd5b03219 100644 --- a/templates/contratti/body.php +++ b/templates/contratti/body.php @@ -292,3 +292,19 @@ echo ' echo '

'.tr('Il tutto S.E. & O.').'

'.tr("In attesa di un Vostro Cortese riscontro, colgo l'occasione per porgere Cordiali Saluti").'

'; + + +//Firma +echo '
+ + + + + +
+ lì, ___________________________ + + FIRMA PER ACCETTAZIONE

+ _____________________________________________ +
+
'; diff --git a/templates/contratti/footer.php b/templates/contratti/footer.php new file mode 100644 index 000000000..f8bab89ab --- /dev/null +++ b/templates/contratti/footer.php @@ -0,0 +1,3 @@ + \ No newline at end of file diff --git a/templates/contratti/settings.php b/templates/contratti/settings.php new file mode 100644 index 000000000..0f521bee5 --- /dev/null +++ b/templates/contratti/settings.php @@ -0,0 +1,5 @@ + 35, +]; diff --git a/templates/preventivi/body.php b/templates/preventivi/body.php index c9edca07b..dada6403b 100644 --- a/templates/preventivi/body.php +++ b/templates/preventivi/body.php @@ -344,3 +344,19 @@ echo ' // Conclusione echo '

'.tr("In attesa di un Vostro Cortese riscontro, colgo l'occasione per porgere Cordiali Saluti").'

'; + + +//Firma +echo '
+ + + + + +
+ lì, ___________________________ + + FIRMA PER ACCETTAZIONE

+ _____________________________________________ +
+
'; \ No newline at end of file diff --git a/templates/preventivi/footer.php b/templates/preventivi/footer.php index 6bad627b8..f8bab89ab 100644 --- a/templates/preventivi/footer.php +++ b/templates/preventivi/footer.php @@ -1,17 +1,3 @@ - - - - - - -
- lì, ___________________________ - - FIRMA PER ACCETTAZIONE

- _____________________________________ -
-
- \ No newline at end of file diff --git a/templates/preventivi/settings.php b/templates/preventivi/settings.php new file mode 100644 index 000000000..0f521bee5 --- /dev/null +++ b/templates/preventivi/settings.php @@ -0,0 +1,5 @@ + 35, +];