Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
31 changes: 31 additions & 0 deletions modules/anagrafiche/actions.php
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,9 @@
use Models\PrintTemplate;
use Models\Upload;
use Modules\Anagrafiche\Anagrafica;
//mod maulapi
use Modules\Anagrafiche\Referente;
//fine mod maulapi

switch (post('op')) {
case 'restore':
Expand Down Expand Up @@ -255,6 +258,34 @@

$anagrafica->save();

//mod maulapi
// Se sono stati forniti dati per il referente, li salvo nella tabella an_referenti
if (!empty(post('referente_nome')) || !empty(post('referente_cellulare')) || !empty(post('referente_email')) || !empty(post('referente_mansione'))) {
try {
// Normalizzo l'id mansione (se presente)
$id_mansione = (!empty(post('referente_mansione')) && post('referente_mansione') != '-1') ? post('referente_mansione') : null;

// Creo il referente (build salva già il record)
//$referente = Referente::build($anagrafica->id, post('referente_nome') ?: null,
//$id_mansione);
$referente = Referente::build($anagrafica->id, post('referente_nome') ?: null, $id_mansione, 0);

// Aggiungo i campi opzionali e salvo (build() esegue già save, ma risalvo per sicurezza dopo aver settato gli altri campi)
if (!empty(post('referente_cellulare'))) {
$referente->telefono = post('referente_cellulare');
}
if (!empty(post('referente_email'))) {
$referente->email = post('referente_email');
}
$referente->save();
} catch (\Throwable $e) {
// Non bloccare la creazione dell'anagrafica: loggare l'errore e mostrare warning
\error_log('Errore salvataggio referente: '.$e->getMessage());
flash()->warning(tr('Impossibile salvare il referente:').' '.$e->getMessage());
}
}
//fine mod maulapi

if ($anagrafica->isAzienda()) {
flash()->info(tr('Anagrafica Azienda impostata come predefinita').'. '.tr('Per ulteriori informazioni, visitare "Strumenti -> Impostazioni -> Generali"'));
}
Expand Down
34 changes: 34 additions & 0 deletions modules/anagrafiche/add.php
Original file line number Diff line number Diff line change
Expand Up @@ -137,6 +137,40 @@
</div>
</div>';

//mod maulapi
//<!-- INSERIRE questo blocco prima dei PULSANTI / modal-footer -->
echo '
<br>
<div class="card card-info collapsed-card">
<div class="card-header">
<h3 class="card-title">'.tr('Referente').'</h3>
<div class="card-tools pull-right">
<button type="button" class="btn btn-tool" data-card-widget="collapse">
<i class="fa fa-plus"></i>
</button>
</div>
</div>
<div class="card-body collapse">
<div class="row">
<div class="col-md-6">
{[ "type": "text", "label": "'.tr('Nominativo').'", "name": "referente_nome", "id": "referente_nome_add" ]}
</div>
<div class="col-md-6">
{[ "type": "telefono", "label": "'.tr('Cellulare').'", "name": "referente_cellulare", "id": "referente_cellulare_add", "class": "text-center" ]}
</div>
</div>
<div class="row" style="margin-top:10px;">
<div class="col-md-6">
{[ "type": "email", "label": "'.tr('E-mail').'", "name": "referente_email", "id": "referente_email_add", "placeholder":"referente@dominio.ext" ]}
</div>
<div class="col-md-6">
{[ "type": "select", "label": "'.tr('Mansione').'", "name": "referente_mansione", "id": "referente_mansione_add", "values": "query=SELECT `id` AS id, `nome` AS descrizione FROM `an_mansioni` ORDER BY `nome`", "include_blank": true ]}
</div>
</div>
</div>
</div>';
//fine mod maulapi

echo '
<!-- PULSANTI -->
<div class="modal-footer">
Expand Down
Loading