Ejemplo n.º 1
0
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);
}
Ejemplo n.º 2
0
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;
}