mirror of
https://github.com/friendica/friendica
synced 2024-11-10 01:42:53 +00:00
New function to fetch image information. (Will be used in the addons at a later time)
This commit is contained in:
parent
ac78989fc9
commit
52474847cb
2 changed files with 23 additions and 6 deletions
|
@ -755,3 +755,23 @@ function import_profile_photo($photo,$uid,$cid) {
|
|||
return(array($photo,$thumb,$micro));
|
||||
|
||||
}
|
||||
|
||||
function get_photo_info($url) {
|
||||
$data = array();
|
||||
|
||||
$data = Cache::get($url);
|
||||
|
||||
if (is_null($data)) {
|
||||
$img_str = fetch_url($url, true, $redirects, 4);
|
||||
|
||||
$tempfile = tempnam(get_config("system","temppath"), "cache");
|
||||
file_put_contents($tempfile, $img_str);
|
||||
$data = getimagesize($tempfile);
|
||||
unlink($tempfile);
|
||||
|
||||
Cache::set($url, serialize($data));
|
||||
} else
|
||||
$data = unserialize($data);
|
||||
|
||||
return $data;
|
||||
}
|
||||
|
|
|
@ -46,6 +46,7 @@ function get_attached_data($body) {
|
|||
// if nothing is found, it maybe having an image.
|
||||
if (!isset($post["type"])) {
|
||||
require_once("mod/parse_url.php");
|
||||
require_once("include/Photo.php");
|
||||
|
||||
$URLSearchString = "^\[\]";
|
||||
if (preg_match_all("(\[url=([$URLSearchString]*)\]\s*\[img\]([$URLSearchString]*)\[\/img\]\s*\[\/url\])ism", $body, $pictures, PREG_SET_ORDER)) {
|
||||
|
@ -64,12 +65,8 @@ function get_attached_data($body) {
|
|||
$post["text"] = str_replace($pictures[0][0], "", $body);
|
||||
} else {
|
||||
$img_str = fetch_url($pictures[0][1]);
|
||||
|
||||
$tempfile = tempnam(get_config("system","temppath"), "cache");
|
||||
file_put_contents($tempfile, $img_str);
|
||||
$mime = image_type_to_mime_type(exif_imagetype($tempfile));
|
||||
unlink($tempfile);
|
||||
if (substr($mime, 0, 6) == "image/") {
|
||||
$imgdata = get_photo_info($img_str);
|
||||
if (substr($imgdata["mime"], 0, 6) == "image/") {
|
||||
$post["type"] = "photo";
|
||||
$post["image"] = $pictures[0][1];
|
||||
$post["preview"] = $pictures[0][2];
|
||||
|
|
Loading…
Reference in a new issue