private static function __doCurl($url, $data, $additionalHeaders) { $curlHandle = curl_init($url); if ($curlHandle === FALSE) { $exception = new ApiException("Failed to connect to url {$url}", Config::$LOG_LEVEL_ERROR_KEY); $exception->setAdditionalInfo("source", "ApiCurl::__doCurl"); $exception->setAdditionalInfo("url", $url); throw $exception; } if (!empty($data)) { curl_setopt($curlHandle, CURLOPT_POSTFIELDS, $data); curl_setopt($curlHandle, CURLOPT_POST, 1); } curl_setopt($curlHandle, CURLOPT_RETURNTRANSFER, 1); curl_setopt($curlHandle, CURLOPT_FOLLOWLOCATION, 1); curl_setopt($curlHandle, CURLOPT_MAXREDIRS, Config::$CURL_MAX_REDIRECTS); curl_setopt($curlHandle, CURLOPT_CONNECTTIMEOUT, Config::$CURL_CONNECTION_TIMEOUT); if (!empty($additionalHeaders)) { foreach ($additionalHeaders as $key => $value) { curl_setopt($curlHandle, $key, $value); } } $result = curl_exec($curlHandle); curl_close($curlHandle); if ($result === FALSE) { $exception = new ApiException("Failed to exec curl to {$url}", Config::$LOG_LEVEL_ERROR_KEY); $exception->setAdditionalInfo("source", "ApiCurl::__doCurl"); $exception->setAdditionalInfo("url", $url); $exception->setAdditionalInfo("data", $data); $exception->setAdditionalInfo("additionalHeaders", $additionalHeaders); throw $exception; } return $result; }
public static function delete($key) { unset($_COOKIE[$key]); if (!setcookie($key, NULL, time() - 1, "/")) { $exception = new ApiException("Failed to set cookie {$key}", Config::$LOG_LEVEL_WARNING_KEY); $exception->setAdditionalInfo("source", "ApiCookies::delete"); $exception->setAdditionalInfo("key", $key); throw $exception; } }
private static function __sendMail($sender, $receivers, $subject, $body, $replyTo, $ccs, $bccs, $contentType) { $replyTo = self::__parseField(empty($replyTo) ? $sender : $replyTo); $sender = self::__parseField($sender); $receivers = self::__parseField($receivers); $ccs = self::__parseField($ccs); $bccs = self::__parseField($bccs); $headers = self::__composeHeaders($sender["forHeaders"], $receivers["forHeaders"], $subject, $replyTo["forHeaders"], $ccs["forHeaders"], $bccs["forHeaders"], $contentType); if (!mail($receivers["forEmail"], $subject, $body, $headers)) { $exception = new ApiException("Failed to send email", Config::$LOG_LEVEL_WARNING_KEY); $exception->setAdditionalInfo("source", "ApiMail::__sendMail"); $exception->setAdditionalInfo("sender", $sender); $exception->setAdditionalInfo("receivers", $receivers); $exception->setAdditionalInfo("subject", $subject); $exception->setAdditionalInfo("body", $body); $exception->setAdditionalInfo("replyTo", $replyTo); $exception->setAdditionalInfo("ccs", $ccs); $exception->setAdditionalInfo("bccs", $bccs); $exception->setAdditionalInfo("contentType", $contentType); throw $exception; } }
public static function deleteDirectory($directory) { $content = self::getDirectoryContent($directory, TRUE, FALSE); foreach ($content as $element) { if (is_dir($element)) { self::deleteDirectory($directory . $element); } else { self::deleteFile($directory . $element); } } if (!rmdir($directory)) { $exception = new ApiException("Failed to delete directory {$directory}", Config::$LOG_LEVEL_ERROR_KEY); $exception->setAdditionalInfo("source", "ApiStorage::deleteDirectory"); $exception->setAdditionalInfo("directory", $directory); throw $exception; } }