function abort($errcode, $query = "") { global $mysql_link_vcl, $mysql_link_acct, $ERRORS, $user, $mode; global $ENABLE_ITECSAUTH, $requestInfo; if ($mode == 'xmlrpccall') { xmlRPCabort($errcode, $query); } if (ONLINEDEBUG && $user["adminlevel"] == "developer") { if ($errcode >= 100 && $errcode < 400) { print "<font color=red>" . mysql_error($mysql_link_vcl) . "</font><br>\n"; if ($ENABLE_ITECSAUTH) { print "<font color=red>" . mysql_error($mysql_link_acct) . "</font><br>\n"; } print "{$query}<br>\n"; } print "ERROR({$errcode}): " . $ERRORS["{$errcode}"] . "<BR>\n"; print "<pre>\n"; print getBacktraceString(FALSE); print "</pre>\n"; } else { $message = ""; if ($errcode >= 100 && $errcode < 400) { $message .= mysql_error($mysql_link_vcl) . "\n"; $message .= mysql_error($mysql_link_acct) . "\n"; $message .= $query . "\n"; } $message .= "ERROR({$errcode}): " . $ERRORS["{$errcode}"] . "\n"; $message .= "Logged in user was " . $user["unityid"] . "\n"; $message .= "Mode was {$mode}\n\n"; if ($errcode == 20) { $urlArray = explode('?', $_SERVER["HTTP_REFERER"]); $message .= "HTTP_REFERER URL - " . $urlArray[0] . "\n"; $message .= "correct URL - " . BASEURL . SCRIPT . "\n"; } if ($errcode == 40) { $message .= "One of the following computers didn't get a mgmt node:\n"; foreach ($requestInfo["images"] as $key => $imageid) { $message .= "imageid: {$imageid}\n"; $message .= "compid: {$requestInfo['computers'][$key]}\n"; } } $message .= getBacktraceString(FALSE); $mailParams = "-f" . ENVELOPESENDER; mail(ERROREMAIL, "Error with VCL pages ({$errcode})", $message, '', $mailParams); print "An error has occurred. If this problem persists, please email "; print "<a href=\"mailto:" . HELPEMAIL . "?Subject=Problem%20With%20VCL\">"; print HELPEMAIL . "</a> for further assistance. Please include the "; print "steps you took that led up to this problem in your email message."; } dbDisconnect(); printHTMLFooter(); // release semaphore lock semUnlock(); exit; }
function abort($errcode, $query = "") { global $mysql_link_vcl, $mysql_link_acct, $ERRORS, $user, $mode; global $ENABLE_ITECSAUTH, $requestInfo, $aborting; if (!isset($aborting)) { $aborting = 1; } elseif ($aborting == 1) { return; } if ($mode == 'xmlrpccall') { xmlRPCabort($errcode, $query); } if (ONLINEDEBUG && checkUserHasPerm('View Debug Information')) { if ($errcode >= 100 && $errcode < 400) { print "<font color=red>" . mysql_error($mysql_link_vcl) . "</font><br>\n"; error_log(mysql_error($mysql_link_vcl)); if ($ENABLE_ITECSAUTH) { print "<font color=red>" . mysql_error($mysql_link_acct) . "</font><br>\n"; error_log(mysql_error($mysql_link_acct)); } print "{$query}<br>\n"; error_log($query); } print "ERROR({$errcode}): " . $ERRORS["{$errcode}"] . "<BR>\n"; error_log("ERROR({$errcode}): " . $ERRORS["{$errcode}"]); $backtrace = getBacktraceString(FALSE); print "<pre>\n"; print $backtrace; print "</pre>\n"; error_log($backtrace); } else { $message = ""; if ($errcode >= 100 && $errcode < 400) { $message .= mysql_error($mysql_link_vcl) . "\n"; if ($ENABLE_ITECSAUTH) { $message .= mysql_error($mysql_link_acct) . "\n"; } $message .= $query . "\n"; } $message .= "ERROR({$errcode}): " . $ERRORS["{$errcode}"] . "\n"; if (is_array($user) && array_key_exists('unityid', $user)) { $message .= "Logged in user was " . $user["unityid"] . "\n"; } $message .= "Mode was {$mode}\n\n"; if ($errcode == 20) { $urlArray = explode('?', $_SERVER["HTTP_REFERER"]); $message .= "HTTP_REFERER URL - " . $urlArray[0] . "\n"; $message .= "correct URL - " . BASEURL . SCRIPT . "\n"; } if ($errcode == 40) { $message .= "One of the following computers didn't get a mgmt node:\n"; foreach ($requestInfo["images"] as $key => $imageid) { $message .= "imageid: {$imageid}\n"; $message .= "compid: {$requestInfo['computers'][$key]}\n"; } } $message .= getBacktraceString(FALSE); if ($errcode == 8) { $message = preg_replace("/Argument#: 3 => .*\n/", "Argument#: 3 => *********\n", $message); } $mailParams = "-f" . ENVELOPESENDER; error_log($message); mail(ERROREMAIL, "Error with VCL pages ({$errcode})", $message, '', $mailParams); $subj = rawurlencode(i("Problem With VCL")); $href = "<a href=\"mailto:" . HELPEMAIL . "?Subject={$subj}\">" . HELPEMAIL . "</a>"; printf(i("An error has occurred. If this problem persists, please email %s for further assistance. Please include the steps you took that led up to this problem in your email message."), $href); } // call clearPrivCache in case that helps clear up what caused the error clearPrivCache(); // release semaphore lock cleanSemaphore(); dbDisconnect(); printHTMLFooter(); exit; }