diff --git a/modules/interventi/actions.php b/modules/interventi/actions.php index b5bc6d09a..50bb4465e 100644 --- a/modules/interventi/actions.php +++ b/modules/interventi/actions.php @@ -685,7 +685,7 @@ switch (post('op')) { $ore = 1; $inizio = post('orario_inizio') ?: date('Y-m-d H:\0\0'); - $fine = post('orario_fine') ?: date_modify(date_create(date('Y-m-d H:\0\0')), '+'.$ore.' hours')->format('Y-m-d H:\0\0'); + $fine = null; add_tecnico($id_record, $id_tecnico, $inizio, $fine, $idcontratto); break; diff --git a/modules/interventi/add.php b/modules/interventi/add.php index d05360a56..b425d232e 100755 --- a/modules/interventi/add.php +++ b/modules/interventi/add.php @@ -36,7 +36,7 @@ $orario_inizio = filter('orario_inizio'); $orario_fine = filter('orario_fine'); if (null == $orario_inizio || '00:00:00' == $orario_inizio) { $orario_inizio = date('H').':00:00'; - $orario_fine = date('H', time() + 60 * 60).':00:00'; + $orario_fine = date('H').':00:00'; } // Un utente del gruppo Tecnici può aprire attività solo a proprio nome @@ -197,7 +197,7 @@ echo '
- {[ "type": "select", "label": "'.tr('Tipo').'", "name": "idtipointervento", "required": 1, "values": "query=SELECT idtipointervento AS id, descrizione FROM in_tipiintervento ORDER BY descrizione ASC", "value": "'.$id_tipo.'", "ajax-source": "tipiintervento" ]} + {[ "type": "select", "label": "'.tr('Tipo').'", "name": "idtipointervento", "required": 1, "value": "'.$id_tipo.'", "ajax-source": "tipiintervento" ]}
@@ -571,24 +571,18 @@ echo ' input("componenti").setDisabled(!$(this).val()) .getElement().selectReset(); - });'; + }); -if (filter('orario_fine') !== null) { - echo ' - // Automatismo del tempo standard + // Automatismo del tempo standard input("idtipointervento").change(function() { - let data = $(this).selectData(); - if (data && data.tempo_standard > 0) { + let data = $("#idtipointervento").selectData(); + if (data && data.tempo_standard > 0) { let orario_inizio = input("orario_inizio").get(); - - if (moment(orario_inizio, globals.timestamp_format, globals.locale).isValid()) { - let tempo_standard = data.tempo_standard * 60; - let nuovo_orario_fine = moment(orario_inizio).add(tempo_standard, "m"); - input("orario_fine").set(moment(nuovo_orario_fine).format(globals.timestamp_format)); - } - } - });'; -} + let tempo_standard = data.tempo_standard * 60; + let nuovo_orario_fine = moment(orario_inizio, "DD/MM/YYYY HH:mm").add(tempo_standard, "m").format("DD/MM/YYYY HH:mm"); + input("orario_fine").set(nuovo_orario_fine); + } + });'; if (!$origine_dashboard) { echo ' diff --git a/modules/interventi/src/Components/Sessione.php b/modules/interventi/src/Components/Sessione.php index 8a17180b7..3dbccd71d 100755 --- a/modules/interventi/src/Components/Sessione.php +++ b/modules/interventi/src/Components/Sessione.php @@ -65,6 +65,10 @@ class Sessione extends Model $tipo_sessione = TipoSessione::find($id_tipo); $model->tipo()->associate($tipo_sessione); + if (empty($fine)) { + $fine = date_modify(date_create($inizio), '+'.($tipo_sessione->tempo_standard*60).' minutes')->format('Y-m-d H:i'); + } + $model->orario_inizio = $inizio; $model->orario_fine = $fine; diff --git a/update/2_4_31.sql b/update/2_4_31.sql index a85edcca6..1b48157a6 100644 --- a/update/2_4_31.sql +++ b/update/2_4_31.sql @@ -10,3 +10,6 @@ UPDATE `zz_modules` SET `options` = 'SELECT |select| FROM `co_scadenziario`\nLEF INSERT INTO `zz_views` (`id_module`, `name`, `query`, `order`, `search`, `slow`, `format`, `search_inside`, `order_by`, `visible`, `summable`, `default`) VALUES ((SELECT `id` FROM `zz_modules` WHERE `name` = 'Scadenzario'), 'icon_Inviato', 'IF(`email`.`id_email` IS NOT NULL, ''fa fa-envelope text-success'', '''')', 16, 1, 0, 0, '', '', 1, 0, 1), ((SELECT `id` FROM `zz_modules` WHERE `name` = 'Scadenzario'), 'icon_title_Inviato', 'IF(`email`.`id_email` IS NOT NULL, ''Inviato'', '''')', 17, 1, 0, 0, '', '', 0, 0, 1); + +-- Set tipo intervento tempo_standard = 1 +UPDATE `in_tipiintervento` SET `tempo_standard` = '1' WHERE `in_tipiintervento`.`tempo_standard` = 0 OR `in_tipiintervento`.`tempo_standard` IS NULL; \ No newline at end of file