From 40dd5ae61c8c62cfcda13bd8f8a3b67ff3c980e0 Mon Sep 17 00:00:00 2001 From: thomas Date: Wed, 14 Nov 2012 23:14:04 +0100 Subject: [PATCH] change and transfert getUrlContent --- lib/ocsclient.php | 22 +--------------------- lib/util.php | 39 +++++++++++++++++++++++++++++++++++++++ 2 files changed, 40 insertions(+), 21 deletions(-) diff --git a/lib/ocsclient.php b/lib/ocsclient.php index 795ce30190c..e730b159afd 100644 --- a/lib/ocsclient.php +++ b/lib/ocsclient.php @@ -55,31 +55,11 @@ class OC_OCSClient{ * This function calls an OCS server and returns the response. It also sets a sane timeout */ private static function getOCSresponse($url) { - $data = self::fileGetContentCurl($url); + $data = \OC_Util::getUrlContent($url); return($data); } /** - * @Brief Get file content via curl. - * @return string of the response - * This function get the content of a page via curl. - */ - - private static function fileGetContentCurl($url){ - $curl = curl_init(); - - curl_setopt($curl, CURLOPT_HEADER, 0); - curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); - curl_setopt($curl, CURLOPT_CONNECTTIMEOUT, 10); - curl_setopt($curl, CURLOPT_URL, $url); - - $data = curl_exec($curl); - curl_close($data); - - return $data; - } - - /** * @brief Get all the categories from the OCS server * @returns array with category ids * @note returns NULL if config value appstoreenabled is set to false diff --git a/lib/util.php b/lib/util.php index 40b44bf9d6e..497b7879227 100755 --- a/lib/util.php +++ b/lib/util.php @@ -642,4 +642,43 @@ class OC_Util { return false; } + + /** + * @Brief Get file content via curl. + * @param string $url Url to get content + * @return string of the response + * This function get the content of a page via curl, if curl is enabled. + * If not, file_get_element is used. + */ + + public static function getUrlContent($url){ + + if (function_exists('curl_init')) { + + $curl = curl_init(); + + curl_setopt($curl, CURLOPT_HEADER, 0); + curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); + curl_setopt($curl, CURLOPT_CONNECTTIMEOUT, 10); + curl_setopt($curl, CURLOPT_URL, $url); + + $data = curl_exec($curl); + curl_close($data); + + } else { + + $ctx = stream_context_create( + array( + 'http' => array( + 'timeout' => 10 + ) + ) + ); + $data=@file_get_contents($url, 0, $ctx); + + } + + return($data); + } + }