is_string($data["text"]) AND (sizeof($data["images"]) > 0))
$data["type"] = "link";
- if ((($data["type"] != "link") AND ($data["type"] != "video") AND ($data["type"] != "photo")) OR ($data["title"] == $url))
+ if ((($data["type"] != "link") AND ($data["type"] != "video") AND ($data["type"] != "photo")) OR ($data["title"] == $data["url"])) {
return("");
+ }
if ($no_photos AND ($data["type"] == "photo"))
return("");
$text = "[attachment type='".$data["type"]."'";
+ if ($data["text"] == "") {
+ $data["text"] = $data["title"];
+ }
+
+ if ($data["text"] == "") {
+ $data["text"] = $data["url"];
+ }
+
if ($data["url"] != "")
$text .= " url='".$data["url"]."'";
if ($data["title"] != "")
$siteinfo = array();
+ // Check if the URL does contain a scheme
+ $scheme = parse_url($url, PHP_URL_SCHEME);
+
+ if ($scheme == "") {
+ $url = "http://".trim($url, "/");
+ }
+
if ($count > 10) {
logger("parseurl_getsiteinfo: Endless loop detected for ".$url, LOGGER_DEBUG);
return($siteinfo);
$siteinfo["url"] = $url;
$siteinfo["type"] = "link";
+ $check_cert = get_config('system','verifyssl');
+
$stamp1 = microtime(true);
$ch = curl_init();
curl_setopt($ch, CURLOPT_NOBODY, 1);
curl_setopt($ch, CURLOPT_TIMEOUT, 3);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
- //curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_USERAGENT, $a->get_useragent());
+ curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, (($check_cert) ? true : false));
+ curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, (($check_cert) ? 2 : false));
$header = curl_exec($ch);
$curl_info = @curl_getinfo($ch);
$oembed_data = oembed_fetch_url($url);
- if ($oembed_data->type != "error")
+ if (!in_array($oembed_data->type, array("error", "rich"))) {
$siteinfo["type"] = $oembed_data->type;
+ }
if (($oembed_data->type == "link") AND ($siteinfo["type"] != "photo")) {
if (isset($oembed_data->title))
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_USERAGENT, $a->get_useragent());
+ curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, (($check_cert) ? true : false));
+ curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, (($check_cert) ? 2 : false));
$header = curl_exec($ch);
$curl_info = @curl_getinfo($ch);