function cx_email_error($a_error) { $errors = "The following errors occured:\r\n "; if (is_array($a_error)) { foreach ($a_error as $error) { $errors .= $error . "\r\n"; } } elseif (is_object($a_error)) { $errors .= serialize($a_error); } elseif (is_string($a_error)) { $errors .= $a_error; } else { return false; } // Only send error to email once per day!! $file = CX_BASE_DIR . 'last_error.txt'; $lines = file_exists($file) ? file_get_contents($file) : ''; $date = date('m/d/Y'); if (substr_count($lines, $date) > 0) { return false; } // Save date to last_error, to prevent further error reports. $worked = file_put_contents($file, $date, LOCK_EX); if ($worked === false) { return false; // Avoid repeated messages as it did NOT update correctly! } $headers = 'MIME-Version: 1.0' . "\r\n"; $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n"; // Additional headers if (defined('CX_SYSTEM_ADMIN_NAME')) { $to = CX_SYSTEM_ADMIN_NAME; } else { $to = CX_SYSTEM_ADMIN_EMAIL; } if (defined('CX_SITE_NAME')) { $site = CX_SITE_NAME; } else { $site = 'system'; } $email = CX_SYSTEM_ADMIN_EMAIL; $subject = 'System error in ' . $site; $from = 'noreply@' . str_replace(" ", "_", $site); $headers .= 'To: ' . $to . ' <' . CX_SYSTEM_ADMIN_EMAIL . '>' . "\r\n"; $headers .= 'From: ' . $site . ' <' . $from . '>' . "\r\n"; if (cx_is_local_and_live() === true) { echo "Error...see log file for more info."; error_log($errors, 3, CX_LOGS_DIR . "cx.log"); return false; } if (cx_is_local_and_not_live() === true) { echo "Emails would have been sent to: {$email} <br>"; echo "Subject: {$subject} <br>"; echo "MSG: {$errors} <br>"; return false; } mail($email, $subject, $errors, $headers); // cx_twilio($errors); }
function cx_is_localhost() { if (cx_is_local_and_live() === true) { return true; } if (cx_is_local_and_not_live() === true) { return true; } return false; }