diff options
author | patdenice <patdenice@piwigo.org> | 2008-11-23 17:25:24 +0000 |
---|---|---|
committer | patdenice <patdenice@piwigo.org> | 2008-11-23 17:25:24 +0000 |
commit | 60f2d18f1fbceff44fcd43eab9528441ea126377 (patch) | |
tree | d28a6238a28ffc047002e7348eec51cb6459e7b6 /admin/include/functions.php | |
parent | a1e6ae0f159e9cae29683078e358e10d7675badd (diff) |
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
Diffstat (limited to 'admin/include/functions.php')
-rw-r--r-- | admin/include/functions.php | 18 |
1 files changed, 17 insertions, 1 deletions
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)) { |