function nuEmail($pPDForPHP, $pEmailTo, $pSubject, $pMessage, $hashData) { //-- Emails a PDF,PHP generated file or plain email (Requires hashdata of form to generate file from) if ($hashData == '') { $hashData = nuHashData(); } $session = $hashData['session_id']; $sql = "SELECT * FROM zzzsys_session INNER JOIN zzzsys_user ON sss_zzzsys_user_id = zzzsys_user_id WHERE zzzsys_session_id = '{$session}'"; $t = nuRunQuery($sql); $r = db_fetch_object($t); if ($r != null) { $fromname = $r->sus_name; $fromaddress = $r->sus_email; } else { $setup = $GLOBALS['nuSetup']; //-- Read SMTP AUTH Settings from zzsys_setup table $fromname = trim($setup->set_smtp_from_name); $fromaddress = trim($setup->set_smtp_from_address); } $filelist = array(); if ($hashData['nu_pdf_code'] != '') { nuV('code', $pPDForPHP); nuV('call_type', 'printpdf'); nuV('filename', $hashData['nu_email_file_name']); $hashData['parent_record_id'] = $hashData['nu_pdf_code']; $tmp_nu_file = nuPDForPHPParameters($hashData); $finfo = finfo_open(FILEINFO_MIME_TYPE); //-- check to see if the file being sent is a PDF file if (finfo_file($finfo, $tmp_nu_file) != 'application/pdf') { nuDisplayError(file_get_contents($tmp_nu_file, true)); finfo_close($finfo); return; } } else { if ($hashData['nu_php_code'] != '') { //-- Run PHP Code $s = "SELECT zzzsys_php_id, slp_php FROM zzzsys_php WHERE slp_code = '{$pPDForPHP}'"; $t = nuRunQuery($s); $r = db_fetch_object($t); $r->slp_php = nuGetSafePHP('slp_php', $r->zzzsys_php_id, $r->slp_php); $php = nuReplaceHashes($r->slp_php, $hashData); eval($php); return; } } if ($hashData['nu_pdf_code'] != '') { //-- File to attach, send with file $filelist[$hashData['nu_email_file_name']] = $tmp_nu_file; } /* if(!nuEmailValidateAddress($pEmailTo)) { //-- check to see if to field email is valid nuDisplayError("To Email validation failed"); return; } */ return nuSendEmail($pEmailTo, $fromaddress, $fromname, $pMessage, $pSubject, $filelist); }
} else { if (trim($_REQUEST['calltype']) == 'printpdf') { $request_url .= "nurunpdf.php?i=" . $_REQUEST['debug']; } else { $response['DATA']['email_result'] = false; $response['DATA']['email_message'] = "Invalid Request Type: " . $_REQUEST['calltype']; echo json_encode($response); die; } } if (nuValidateEmailAddress($_REQUEST['to'])) { $to = $_REQUEST['to']; $replyto = $_REQUEST['replyto']; $subject = $_REQUEST['subject']; $content = $_REQUEST['message']; $html = false; $wordWrap = 120; $filelist = array(); $filename = $_REQUEST['attachment']; $report = nuEmailGetReportFile('', $request_url); $filelist[$filename] = $report; $result = nuSendEmail($to, $replyto, $content, $html, $subject, $wordWrap, $filelist); @unlink($report); $response['DATA']['email_result'] = $result[0]; $response['DATA']['email_message'] = $result[1]; echo json_encode($response); } else { $response['DATA']['email_result'] = false; $response['DATA']['email_message'] = "Invalid Email Address"; echo json_encode($response); }