From 60f2d18f1fbceff44fcd43eab9528441ea126377 Mon Sep 17 00:00:00 2001 From: patdenice Date: Sun, 23 Nov 2008 17:25:24 +0000 Subject: merge -c2902 from trunk to branch 2.0. - Add home and identification buttons after installation. - Use fetchRemote function for remote site actions. - Corrections in fetchRemote fnction. - Move PLUGIN_PICTURE_BEFORE in picture.tpl. git-svn-id: http://piwigo.org/svn/branches/2.0@2903 68402e56-0260-453c-a942-63ccdbb3a9ee --- admin/include/functions.php | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) (limited to 'admin/include/functions.php') diff --git a/admin/include/functions.php b/admin/include/functions.php index a8193d3af..fc11101fc 100644 --- a/admin/include/functions.php +++ b/admin/include/functions.php @@ -1948,6 +1948,21 @@ function cat_admin_access($category_id) */ function fetchRemote($src, &$dest, $user_agent='Piwigo', $step=0) { + // Try to retrieve data from local file? + if (!url_is_remote($src)) + { + $content = @file_get_contents($src); + if ($content !== false) + { + is_resource($dest) ? @fwrite($dest, $content) : $dest = $content; + return true; + } + else + { + return false; + } + } + // After 3 redirections, return false if ($step > 3) return false; @@ -1964,8 +1979,9 @@ function fetchRemote($src, &$dest, $user_agent='Piwigo', $step=0) @curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); $content = @curl_exec($ch); $header_length = @curl_getinfo($ch, CURLINFO_HEADER_SIZE); + $status = @curl_getinfo($ch, CURLINFO_HTTP_CODE); @curl_close($ch); - if ($content !== false) + if ($content !== false and $status >= 200 and $status < 400) { if (preg_match('/Location:\s+?(.+)/', substr($content, 0, $header_length), $m)) { -- cgit v1.2.3