diff --git a/modules/interventi/actions.php b/modules/interventi/actions.php index 381c5da8c..8f5286f2f 100644 --- a/modules/interventi/actions.php +++ b/modules/interventi/actions.php @@ -507,8 +507,8 @@ switch (post('op')) { $ore = 1; - $inizio = date('Y-m-d H:\0\0'); - $fine = date_modify(date_create(date('Y-m-d H:\0\0')), '+'.$ore.' hours')->format('Y-m-d H:\0\0'); + $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'); add_tecnico($id_record, $id_tecnico, $inizio, $fine, $idcontratto); break; diff --git a/modules/interventi/ajax_tecnici.php b/modules/interventi/ajax_tecnici.php index d0d6c97cf..a94c0bca7 100755 --- a/modules/interventi/ajax_tecnici.php +++ b/modules/interventi/ajax_tecnici.php @@ -195,11 +195,15 @@ if (!empty($sessioni)) { if (!$is_completato) { echo ' - + + - + '; } @@ -343,4 +347,20 @@ function elimina_sessione(id_sessione) { }); } } + +async function copySessione(button) { + var riga = $(button).closest("tr"); + var id = riga.data("id"); + + // Salvataggio via AJAX + await salvaForm("#edit-form", {}, button); + + // Chiusura tooltip + if ($(button).hasClass("tooltipstered")) + $(button).tooltipster("close"); + + // Apertura modal + openModal("'.tr('Copia sessione').'", "'.$module->fileurl('modals/copy_sessione.php').'?id_module=" + globals.id_module + "&id_record=" + globals.id_record + "&id_sessione=" + id); +} + '; diff --git a/modules/interventi/modals/copy_sessione.php b/modules/interventi/modals/copy_sessione.php new file mode 100644 index 000000000..fe7502deb --- /dev/null +++ b/modules/interventi/modals/copy_sessione.php @@ -0,0 +1,73 @@ +. + */ + +include_once __DIR__.'/../../../core.php'; +include_once __DIR__.'/../../../../core.php'; + +$sessione = $dbo->fetchOne('SELECT in_interventi_tecnici.*, an_anagrafiche.ragione_sociale, an_anagrafiche.deleted_at, in_interventi_tecnici.tipo_scontokm AS tipo_sconto_km, in_interventi_tecnici.prezzo_ore_unitario, in_interventi_tecnici.prezzo_km_unitario, in_interventi_tecnici.prezzo_dirittochiamata FROM in_interventi_tecnici INNER JOIN an_anagrafiche ON in_interventi_tecnici.idtecnico = an_anagrafiche.idanagrafica WHERE in_interventi_tecnici.id = '.prepare(get('id_sessione'))); + +$op = 'add_sessione'; +$button = ' '.tr('Aggiungi'); + +echo ' +
+ + '; + +// Tecnico +echo ' +
+
+ {[ "type": "select", "label": "'.tr('Tecnico').'", "name": "id_tecnico", "required": 1, "ajax-source": "tecnici" ]} +
'; + +// Orari +echo ' +
+ {[ "type": "timestamp", "label": "'.tr('Inizio attività').'", "name": "orario_inizio", "required": 1, "value": "'.$sessione['orario_inizio'].'" ]} +
+ +
+ {[ "type": "timestamp", "label": "'.tr('Fine attività').'", "name": "orario_fine", "required": 1, "value": "'.$sessione['orario_fine'].'" ]} +
+
'; + +echo ' + + +
+
+ +
+
+
'; + +echo ' +'; + +echo ' +';