aboutsummaryrefslogtreecommitdiffstats
path: root/include/feedutils.php
diff options
context:
space:
mode:
authorMax Kostikov <max@kostikov.co>2019-11-07 09:14:51 +0100
committerMario <mario@mariovavti.com>2019-11-07 09:14:51 +0100
commitb6314c109dbfa134576beff9ed29254826e10223 (patch)
treebda76da6bd591588e895f252f7c91603f9ef3b38 /include/feedutils.php
parent2a05bd9ed691437faabbfe130dbaab3dad878367 (diff)
downloadvolse-hubzilla-b6314c109dbfa134576beff9ed29254826e10223.tar.gz
volse-hubzilla-b6314c109dbfa134576beff9ed29254826e10223.tar.bz2
volse-hubzilla-b6314c109dbfa134576beff9ed29254826e10223.zip
Sanitize title on Atom/RSS feed import
Diffstat (limited to 'include/feedutils.php')
-rw-r--r--include/feedutils.php12
1 files changed, 12 insertions, 0 deletions
diff --git a/include/feedutils.php b/include/feedutils.php
index 5e52828c3..9f4d732bb 100644
--- a/include/feedutils.php
+++ b/include/feedutils.php
@@ -449,6 +449,18 @@ function get_atom_elements($feed, $item) {
if (title_is_body($res['title'], $res['body']))
$res['title'] = "";
+ else {
+ $res['title'] = bbcode($res['title'], [ 'tryoembed' => false ]);
+ $res['title'] = html2plain($res['title'], 0, true);
+ $res['title'] = html_entity_decode($res['title'], ENT_QUOTES, 'UTF-8');
+ $res['title'] = preg_replace("/https?\:\/\/[a-zA-Z0-9\:\/\-\?\&\;\.\=\_\~\#\%\$\!\+\,\@]+/", "", $res['title']);
+ while (strpos($res['title'], "\n") !== false)
+ $res['title'] = str_replace("\n", " ", $res['title']);
+ while (strpos($res['title'], " ") !== false)
+ $res['title'] = str_replace(" ", " ", $res['title']);
+ $res['title'] = trim($res['title']);
+ }
+
if($res['plink'])
$base_url = implode('/', array_slice(explode('/',$res['plink']),0,3));