aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMax Kostikov <max@kostikov.co>2019-08-09 16:59:14 +0200
committerMax Kostikov <max@kostikov.co>2019-08-09 16:59:14 +0200
commitaf690b64d6b0615c0f5f71ece2e2c75326d58092 (patch)
tree09b9db0b6e5565b5de58591e7247bb2f257502ef
parent4382e53acbd9e5fa071428a6f365a637561f6820 (diff)
downloadvolse-hubzilla-af690b64d6b0615c0f5f71ece2e2c75326d58092.tar.gz
volse-hubzilla-af690b64d6b0615c0f5f71ece2e2c75326d58092.tar.bz2
volse-hubzilla-af690b64d6b0615c0f5f71ece2e2c75326d58092.zip
More intelligent quotation shortening while link embedding
-rw-r--r--Zotlabs/Module/Linkinfo.php7
1 files changed, 4 insertions, 3 deletions
diff --git a/Zotlabs/Module/Linkinfo.php b/Zotlabs/Module/Linkinfo.php
index b9f90deec..1551d1f26 100644
--- a/Zotlabs/Module/Linkinfo.php
+++ b/Zotlabs/Module/Linkinfo.php
@@ -275,7 +275,7 @@ class Linkinfo extends \Zotlabs\Web\Controller {
// Check codepage in HTTP headers or HTML if not exist
$cp = (preg_match('/Content-Type: text\/html; charset=(.+)\r\n/i', $header, $o) ? $o[1] : '');
if(empty($cp))
- $cp = (preg_match('/meta.+content=["|\']text\/html; charset=([^"|\']+)/i', $body, $o) ? $o[1] : 'AUTO');
+ $cp = (preg_match('/meta.+content=["\']text\/html; charset=([^"\']+)/i', $body, $o) ? $o[1] : 'AUTO');
$body = mb_convert_encoding($body, 'UTF-8', $cp);
$body = mb_convert_encoding($body, 'HTML-ENTITIES', "UTF-8");
@@ -444,8 +444,9 @@ class Linkinfo extends \Zotlabs\Web\Controller {
while (strpos($text, " "))
$text = trim(str_replace(" ", " ", $text));
-
- $siteinfo["text"] = html_entity_decode(substr($text,0,350), ENT_QUOTES, "UTF-8").'...';
+
+ $text = substr(html_entity_decode($text, ENT_QUOTES, "UTF-8"), 0, 350);
+ $siteinfo["text"] = rtrim(substr($text, 0, strrpos($text, " ")), "?.,:;!-") . '...';
}
}