Пример #1
0
 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;
 }
Пример #2
0
 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;
     }
 }
Пример #3
0
 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;
     }
 }
Пример #4
0
 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;
     }
 }