'email_host', 'Username SMTP' => 'email_username', 'Porta SMTP' => 'email_porta', 'Sicurezza SMTP' => 'email_secure', 'Password SMTP' => 'email_password', ]; $rs = $dbo->fetchArray("SELECT * FROM zz_settings WHERE sezione = 'Email'"); foreach ($rs as $r) { if (!empty($replace[$r['nome']])) { $dati[$replace[$r['nome']]] = $r['valore']; } } // Preparazione email $mail = new PHPMailer(); // Se non specificato l'host uso le impostazioni di invio mail di default del server if (!empty($dati['email_host'])) { $mail->IsSMTP(); $mail->IsHTML(); $mail->SMTPDebug = 2; $mail->Host = $dati['email_host']; $mail->Port = $dati['email_porta']; // Controllo se è necessaria l'autenticazione per il server di posta if (!empty($dati['email_username'])) { $mail->SMTPAuth = true; $mail->Username = $dati['email_username']; $mail->Password = $dati['email_password']; } if (in_array(strtolower($dati['email_secure']), ['ssl', 'tls'])) { $mail->SMTPSecure = strtolower($dati['email_secure']); } } $mail->WordWrap = 50; // Mittente $mail->From = $dati['email_from']; $mail->FromName = $_SESSION['username']; $mail->AddReplyTo($dati['email_from']); // Destinatario $mail->AddAddress($dati['email_to']); // Copia if (!empty($dati['email_cc'])) { $mail->AddCC($dati['email_cc']); } // Copia nascosta if (!empty($dati['email_bcc'])) { $mail->AddBCC($dati['email_bcc']); } $mail->Subject = 'Segnalazione bug OSM '.$version.' ('.(!empty($revision) ? 'R'.$revision : tr('In sviluppo')).')'; $mail->AltBody = tr('Questa email arriva dal modulo bug di segnalazione bug di OSM'); $body = $dati['body'].'

'.tr('IP').': '.get_client_ip()."
\n"; // Se ho scelto di inoltrare i file di log, allego if (!empty($post['log']) && file_exists($docroot.'/logs/error.log')) { $mail->AddAttachment($docroot.'/logs/error.log'); } // Se ho scelto di inoltrare copia del db if (!empty($post['sql'])) { backup_tables('Backup OSM '.date('Y-m-d').' '.date('H_i_s').'.sql'); if (file_put_contents($docroot.'/'.$backup_file, $dump)) { $mail->AddAttachment($docroot.'/'.$backup_file); $_SESSION['infos'][] = tr('Backup del database eseguito ed allegato correttamente!'); } else { $_SESSION['errors'][] = tr('Errore durante la creazione del file di backup!'); } } // Se ho scelto di inoltrare le INFO del mio sistema if (!empty($post['info'])) { $body .= $_SERVER['HTTP_USER_AGENT'].' - '.getOS(); } $mail->Body = $body; // Invio mail if (!$mail->send()) { $_SESSION['errors'][] = tr("Errore durante l'invio della segnalazione").': '.$mail->ErrorInfo; } else { $_SESSION['infos'][] = tr('Email inviata correttamente!'); } $mail->SmtpClose(); if (!empty($post['sql'])) { unlink($docroot.'/'.$backup_file); } redirect($rootdir.'/bug.php'); exit(); } if (file_exists($docroot.'/include/custom/top.php')) { include $docroot.'/include/custom/top.php'; } else { include $docroot.'/include/top.php'; } $email_to = ''; $email_from = ''; $rs = $dbo->fetchArray("SELECT * FROM zz_settings WHERE sezione = 'Email'"); foreach ($rs as $r) { if (($r['nome'] == 'Server SMTP' || $r['nome'] == 'Indirizzo per le email in uscita' || $r['nome'] == 'Destinatario') && $r['valore'] == '') { $alert = true; } if ($r['nome'] == 'Destinatario') { $email_to = $r['valore']; } elseif ($r['nome'] == 'Indirizzo per le email in uscita') { $email_from = $r['valore']; } } if (!empty($alert)) { echo '
'.tr('Attenzione!').' '.tr('Per utilizzare correttamente il modulo di segnalazione bug devi configurare alcuni parametri email nella scheda impostazioni').'. '.Modules::link('Opzioni', $dbo->fetchArray("SELECT `idimpostazione` FROM `zz_settings` WHERE sezione='Email'")[0]['idimpostazione'], tr('Correggi'), null, 'class="btn btn-warning pull-right"').'
'; } echo '

'.tr('Segnalazione bug').'

'.tr('Da').': {[ "type": "email", "placeholder": "'.tr('Mittente').'", "name": "email_from", "value": "'.$email_from.'", "required": 1 ]}
'.tr('A').': {[ "type": "email", "placeholder": "'.tr('Destinatario').'", "name": "email_to", "value": "'.$email_to.'", "required": 1 ]}
'.tr('Cc').': {[ "type": "email", "placeholder": "'.tr('Copia a').'...", "name": "email_cc" ]}
'.tr('Bcc').': {[ "type": "email", "placeholder": "'.tr('Copia nascosta a').'...", "name": "email_bcc" ]}
'.tr('Versione OSM').': {[ "type": "span", "placeholder": "'.tr('Versione OSM').'", "value": "'.$version.' ('.(!empty($revision) ? 'R'.$revision : tr('In sviluppo')).')" ]}
{[ "type": "checkbox", "placeholder": "'.tr('Allega file di log').'", "name": "log", "value": "1" ]}
{[ "type": "checkbox", "placeholder": "'.tr('Allega copia del database').'", "name": "sql", "value": "0" ]}
{[ "type": "checkbox", "placeholder": "'.tr('Allega informazioni sul PC').'", "name": "info", "value": "1" ]}

{[ "type": "textarea", "label": "'.tr('Descrizione del bug').'", "name": "body" ]}
'; if (file_exists($docroot.'/include/custom/bottom.php')) { include $docroot.'/include/custom/bottom.php'; } else { include $docroot.'/include/bottom.php'; }