diff --git a/app/email_logs/email_test.php b/app/email_logs/email_test.php index 79cdc32722..2c5d1f254f 100644 --- a/app/email_logs/email_test.php +++ b/app/email_logs/email_test.php @@ -92,7 +92,6 @@ $email_from_name = $_SESSION['email']['smtp_from_name']['text']; //send email - //ob_start(); //$sent = !send_email($email_recipient, 'Test Message', $email_body, $email_error, null, null, 3, 3, $email_attachments) ? false : true; //$email_response = ob_get_clean(); @@ -107,8 +106,12 @@ $email->debug_level = 3; $email->method = 'direct'; $sent = $email->send(); + $email_response = $email->response; //$email_error = $email->email_error; +//show the response + echo $email_response; + //show additional information echo "

\n"; diff --git a/app/email_queue/app_config.php b/app/email_queue/app_config.php index f7daa45995..e03811271d 100644 --- a/app/email_queue/app_config.php +++ b/app/email_queue/app_config.php @@ -5,7 +5,7 @@ $apps[$x]['uuid'] = '5befdf60-a242-445f-91b3-2e9ee3e0ddf7'; $apps[$x]['category'] = 'system'; $apps[$x]['subcategory'] = 'email'; - $apps[$x]['version'] = '2.10'; + $apps[$x]['version'] = '2.11'; $apps[$x]['license'] = 'Member'; $apps[$x]['url'] = 'http://www.fusionpbx.com'; $apps[$x]['description']['en-us'] = ''; @@ -163,8 +163,8 @@ $apps[$x]['db'][$y]['fields'][$z]['type'] = 'text'; $apps[$x]['db'][$y]['fields'][$z]['search_by'] = 'true'; $z++; - $apps[$x]['db'][$y]['fields'][$z]['name']['text'] = 'email_debug'; - $apps[$x]['db'][$y]['fields'][$z]['name']['deprecated'] = 'email_substatus'; + $apps[$x]['db'][$y]['fields'][$z]['name']['text'] = 'email_response'; + $apps[$x]['db'][$y]['fields'][$z]['name']['deprecated'] = 'email_debug'; $apps[$x]['db'][$y]['fields'][$z]['type'] = 'text'; //$apps[$x]['db'][$y]['fields'][$z]['search_by'] = 'true'; $z++; diff --git a/app/email_queue/app_languages.php b/app/email_queue/app_languages.php index 244ae29512..2c6c1104a9 100644 --- a/app/email_queue/app_languages.php +++ b/app/email_queue/app_languages.php @@ -461,6 +461,26 @@ $text['description-email_action_after']['sv-se'] = ''; $text['description-email_action_after']['uk-ua'] = ''; + $text['label-email_response']['en-us'] = 'Response'; + $text['label-email_response']['ar-eg'] = ''; + $text['label-email_response']['de-at'] = ''; + $text['label-email_response']['de-ch'] = ''; + $text['label-email_response']['de-de'] = ''; + $text['label-email_response']['es-cl'] = ''; + $text['label-email_response']['es-mx'] = ''; + $text['label-email_response']['fr-ca'] = ''; + $text['label-email_response']['fr-fr'] = ''; + $text['label-email_response']['he-il'] = ''; + $text['label-email_response']['it-it'] = ''; + $text['label-email_response']['nl-nl'] = ''; + $text['label-email_response']['pl-pl'] = ''; + $text['label-email_response']['pt-br'] = ''; + $text['label-email_response']['pt-pt'] = ''; + $text['label-email_response']['ro-ro'] = ''; + $text['label-email_response']['ru-ru'] = ''; + $text['label-email_response']['sv-se'] = ''; + $text['label-email_response']['uk-ua'] = ''; + $text['label-email_retry_count']['en-us'] = 'Retry'; $text['label-email_retry_count']['ar-eg'] = ''; $text['label-email_retry_count']['de-at'] = ''; diff --git a/app/email_queue/email_queue_edit.php b/app/email_queue/email_queue_edit.php index e069582d59..c2af76f72d 100644 --- a/app/email_queue/email_queue_edit.php +++ b/app/email_queue/email_queue_edit.php @@ -165,7 +165,7 @@ $email_status = $row["email_status"]; $email_retry_count = $row["email_retry_count"]; //$email_action_before = $row["email_action_before"]; - $email_debug = $row["email_debug"]; + $email_response = $row["email_response"]; $email_action_after = $row["email_action_after"]; } unset($sql, $parameters, $row); @@ -313,18 +313,16 @@ echo "\n"; echo "\n"; - if (isset($_REQUEST['debug'])) { - echo "\n"; - echo "\n"; - echo " ".$text['label-email_debug']."\n"; - echo "\n"; - echo "\n"; - echo " \n"; - echo "
\n"; - echo $text['description-email_debug']."\n"; - echo "\n"; - echo "\n"; - } + echo "\n"; + echo "\n"; + echo " ".$text['label-email_response']."\n"; + echo "\n"; + echo "\n"; + echo " \n"; + echo "
\n"; + echo $text['description-email_response']."\n"; + echo "\n"; + echo "\n"; echo ""; echo "

"; diff --git a/app/email_queue/resources/jobs/email_send.php b/app/email_queue/resources/jobs/email_send.php index 195648ae32..94e4d93dcd 100644 --- a/app/email_queue/resources/jobs/email_send.php +++ b/app/email_queue/resources/jobs/email_send.php @@ -235,7 +235,6 @@ //echo "email_body before: ".$email_body."\n"; $email_body = str_replace('${message_text}', $transcribe_message, $email_body); - //$email_debug = $field['message']; //echo "email_body after: ".$email_body."\n"; //unset($field); } @@ -286,11 +285,8 @@ unset($parameters); } -//send email - //ob_start(); - //$sent = !send_email($email_to, $email_subject, $email_body, $email_error, null, null, null, null, $email_attachments) ? false : true; - //$response = ob_get_clean(); - //echo $response; +//save output to a buffer +// ob_start(); //send the email $email = new email; @@ -301,12 +297,17 @@ $email->subject = $email_subject; $email->body = $email_body; $email->attachments = $email_attachments; + $email->debug_level = 3; $email->method = 'direct'; - $email_response = $email->send(); - $email_error = $email->email_error; + $email_status = $email->send(); + $email_error = $email->error; + $email_response = $email->response; + +//get the output buffer +// //$email_response = ob_get_clean(); //send the email - if ($email_response) { + if ($email_status) { //set the email status to sent $sql = "update v_email_queue "; @@ -315,9 +316,11 @@ if (isset($transcribe_message)) { $sql .= "email_transcription = :email_transcription, "; } + $sql .= "email_response = :email_response, "; $sql .= "update_date = now() "; $sql .= "where email_queue_uuid = :email_queue_uuid; "; $parameters['email_queue_uuid'] = $email_queue_uuid; + $parameters['email_response'] = $email_response; if (isset($transcribe_message)) { $parameters['email_transcription'] = $transcribe_message; } @@ -437,12 +440,12 @@ else { $sql .= "set email_status = 'trying', "; } - $sql .= "email_debug = :email_debug, "; + $sql .= "email_response = :email_response, "; $sql .= "email_retry_count = :email_retry_count, "; $sql .= "update_date = now() "; $sql .= "where email_queue_uuid = :email_queue_uuid; "; $parameters['email_queue_uuid'] = $email_queue_uuid; - $parameters['email_debug'] = $mailer_error; + $parameters['email_response'] = $email_response; $parameters['email_retry_count'] = $email_retry_count; $database = new database; $database->execute($sql, $parameters); diff --git a/resources/classes/email.php b/resources/classes/email.php index 6f6dcebb59..96b658824d 100644 --- a/resources/classes/email.php +++ b/resources/classes/email.php @@ -561,8 +561,17 @@ if (!class_exists('email')) { } } + //save output to a buffer + ob_start(); + //send the email - if (!$mail->Send()) { + $mail_status = $mail->Send(); + + //get the output buffer + $this->response = ob_get_clean(); + + //send the email + if (!$mail_status) { if (isset($mail->ErrorInfo) && strlen($mail->ErrorInfo) > 0) { $this->error = $mail->ErrorInfo; }