X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;ds=inline;f=src%2FParseUrl.php;h=1674d5691459efde1a0df655dffc91d85f61b5ea;hb=4ada71081f5c99bd0807b879226256d91f2fda61;hp=943725ffe0819df55c4e2055f3bc87c5aa8e6abb;hpb=fa3fa42d966e00534aa6cbf33d60ef438a8e3b97;p=friendica.git diff --git a/src/ParseUrl.php b/src/ParseUrl.php index 943725ffe0..1674d56914 100644 --- a/src/ParseUrl.php +++ b/src/ParseUrl.php @@ -9,6 +9,12 @@ namespace Friendica; use Friendica\Core\Config; +use xml; +use dba; + +use DomXPath; +use DOMDocument; + require_once("include/network.php"); require_once("include/Photo.php"); require_once("include/oembed.php"); @@ -61,11 +67,9 @@ class ParseUrl { $data = self::getSiteinfo($url, $no_guessing, $do_oembed); - q("INSERT INTO `parsed_url` (`url`, `guessing`, `oembed`, `content`, `created`) VALUES ('%s', %d, %d, '%s', '%s') - ON DUPLICATE KEY UPDATE `content` = '%s', `created` = '%s'", - dbesc(normalise_link($url)), intval(!$no_guessing), intval($do_oembed), - dbesc(serialize($data)), dbesc(datetime_convert()), - dbesc(serialize($data)), dbesc(datetime_convert())); + dba::insert('parsed_url', array('url' => normalise_link($url), 'guessing' => !$no_guessing, + 'oembed' => $do_oembed, 'content' => serialize($data), + 'created' => datetime_convert()), true); return $data; } @@ -150,6 +154,12 @@ class ParseUrl { @curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2); } + $range = intval(Config::get('system', 'curl_range_bytes', 0)); + + if ($range > 0) { + curl_setopt($ch, CURLOPT_RANGE, '0-' . $range); + } + $header = curl_exec($ch); $curl_info = @curl_getinfo($ch); curl_close($ch); @@ -223,22 +233,22 @@ class ParseUrl { $body = mb_convert_encoding($body, 'HTML-ENTITIES', "UTF-8"); - $doc = new \DOMDocument(); + $doc = new DOMDocument(); @$doc->loadHTML($body); - \xml::deleteNode($doc, "style"); - \xml::deleteNode($doc, "script"); - \xml::deleteNode($doc, "option"); - \xml::deleteNode($doc, "h1"); - \xml::deleteNode($doc, "h2"); - \xml::deleteNode($doc, "h3"); - \xml::deleteNode($doc, "h4"); - \xml::deleteNode($doc, "h5"); - \xml::deleteNode($doc, "h6"); - \xml::deleteNode($doc, "ol"); - \xml::deleteNode($doc, "ul"); - - $xpath = new \DomXPath($doc); + xml::deleteNode($doc, "style"); + xml::deleteNode($doc, "script"); + xml::deleteNode($doc, "option"); + xml::deleteNode($doc, "h1"); + xml::deleteNode($doc, "h2"); + xml::deleteNode($doc, "h3"); + xml::deleteNode($doc, "h4"); + xml::deleteNode($doc, "h5"); + xml::deleteNode($doc, "h6"); + xml::deleteNode($doc, "ol"); + xml::deleteNode($doc, "ul"); + + $xpath = new DomXPath($doc); $list = $xpath->query("//meta[@content]"); foreach ($list as $node) {