parse_url: Fetch multiple pictures so that the user can decide what to take.
This commit is contained in:
parent
48f67ead9b
commit
09034ce0ee
1 changed files with 43 additions and 12 deletions
|
@ -1,4 +1,6 @@
|
||||||
<?php
|
<?php
|
||||||
|
require_once('include/Photo.php');
|
||||||
|
|
||||||
if(!function_exists('deletenode')) {
|
if(!function_exists('deletenode')) {
|
||||||
function deletenode(&$doc, $node)
|
function deletenode(&$doc, $node)
|
||||||
{
|
{
|
||||||
|
@ -107,7 +109,6 @@ function parseurl_getsiteinfo($url) {
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($siteinfo["image"] == "") {
|
if ($siteinfo["image"] == "") {
|
||||||
require_once('include/Photo.php');
|
|
||||||
$list = $xpath->query("//img[@src]");
|
$list = $xpath->query("//img[@src]");
|
||||||
foreach ($list as $node) {
|
foreach ($list as $node) {
|
||||||
$attr = array();
|
$attr = array();
|
||||||
|
@ -121,10 +122,33 @@ function parseurl_getsiteinfo($url) {
|
||||||
$i = fetch_url($attr["src"]);
|
$i = fetch_url($attr["src"]);
|
||||||
$ph = new Photo($i, $type);
|
$ph = new Photo($i, $type);
|
||||||
|
|
||||||
if(($ph->getWidth() > 200) and ($ph->getHeight() > 200))
|
if($ph->is_valid() and ($ph->getWidth() > 200) and ($ph->getHeight() > 200)) {
|
||||||
|
if ($siteinfo["image"] == "")
|
||||||
$siteinfo["image"] = $attr["src"];
|
$siteinfo["image"] = $attr["src"];
|
||||||
|
|
||||||
|
if($ph->getWidth() > 300 || $ph->getHeight() > 300) {
|
||||||
|
$ph->scaleImage(300);
|
||||||
|
$siteinfo["images"][] = array("src"=>$attr["src"],
|
||||||
|
"width"=>$ph->getWidth(),
|
||||||
|
"height"=>$ph->getHeight());
|
||||||
|
} else
|
||||||
|
$siteinfo["images"][] = array("src"=>$attr["src"],
|
||||||
|
"width"=>$ph->getWidth(),
|
||||||
|
"height"=>$ph->getHeight());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
|
// guess mimetype from headers or filename
|
||||||
|
$type = guess_image_type($siteinfo["image"],true);
|
||||||
|
|
||||||
|
$i = fetch_url($siteinfo["image"]);
|
||||||
|
$ph = new Photo($i, $type);
|
||||||
|
|
||||||
|
if($ph->is_valid())
|
||||||
|
$siteinfo["images"][] = array("src"=>$siteinfo["image"],
|
||||||
|
"width"=>$ph->getWidth(),
|
||||||
|
"height"=>$ph->getHeight());
|
||||||
|
}
|
||||||
|
|
||||||
if ($siteinfo["text"] == "") {
|
if ($siteinfo["text"] == "") {
|
||||||
$text = "";
|
$text = "";
|
||||||
|
@ -172,8 +196,8 @@ function parse_url_content(&$a) {
|
||||||
if(local_user() && intval(get_pconfig(local_user(),'system','plaintext')))
|
if(local_user() && intval(get_pconfig(local_user(),'system','plaintext')))
|
||||||
$textmode = true;
|
$textmode = true;
|
||||||
|
|
||||||
if($textmode)
|
//if($textmode)
|
||||||
$br = (($textmode) ? "\n" : '<br /?');
|
$br = (($textmode) ? "\n" : '<br />');
|
||||||
|
|
||||||
if(x($_GET,'binurl'))
|
if(x($_GET,'binurl'))
|
||||||
$url = trim(hex2bin($_GET['binurl']));
|
$url = trim(hex2bin($_GET['binurl']));
|
||||||
|
@ -234,12 +258,19 @@ function parse_url_content(&$a) {
|
||||||
echo sprintf($template,$url,$url,'') . $str_tags;
|
echo sprintf($template,$url,$url,'') . $str_tags;
|
||||||
killme();
|
killme();
|
||||||
} else {
|
} else {
|
||||||
$image = $siteinfo["image"];
|
|
||||||
$text = $siteinfo["text"];
|
$text = $siteinfo["text"];
|
||||||
$title = $siteinfo["title"];
|
$title = $siteinfo["title"];
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($image != "") {
|
$image = "";
|
||||||
|
|
||||||
|
foreach ($siteinfo["images"] as $imagedata)
|
||||||
|
if($textmode)
|
||||||
|
$image .= '[img='.$imagedata["width"].'x'.$imagedata["height"].']'.$imagedata["src"].'[/img]';
|
||||||
|
else
|
||||||
|
$image .= '<img height="'.$imagedata["height"].'" width="'.$imagedata["width"].'" src="'.$imagedata["src"].'" alt="photo" />';
|
||||||
|
|
||||||
|
/* if ($image != "") {
|
||||||
$i = fetch_url($image);
|
$i = fetch_url($image);
|
||||||
if($i) {
|
if($i) {
|
||||||
require_once('include/Photo.php');
|
require_once('include/Photo.php');
|
||||||
|
@ -264,17 +295,17 @@ function parse_url_content(&$a) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}*/
|
||||||
|
|
||||||
if(strlen($text)) {
|
if(strlen($text)) {
|
||||||
if($textmode)
|
if($textmode)
|
||||||
$text = $br.$br.'[quote]'.trim($text).'[/quote]'.$br ;
|
$text = $br.'[quote]'.trim($text).'[/quote]'.$br ;
|
||||||
else
|
else
|
||||||
$text = '<br /><br /><blockquote>'.trim($text).'</blockquote><br />';
|
$text = '<br /><blockquote>'.trim($text).'</blockquote><br />';
|
||||||
}
|
}
|
||||||
|
|
||||||
if($image) {
|
if($image) {
|
||||||
$text = $image.$br.$text;
|
$text = $br.$br.$image.$br.$text;
|
||||||
}
|
}
|
||||||
$title = str_replace(array("\r","\n"),array('',''),$title);
|
$title = str_replace(array("\r","\n"),array('',''),$title);
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue