diff options
author | nobody <nobody@zotlabs.com> | 2021-02-22 17:23:08 -0800 |
---|---|---|
committer | nobody <nobody@zotlabs.com> | 2021-02-22 17:23:08 -0800 |
commit | fc88c306ab282ab7061d69e5bdc60896fbdb8839 (patch) | |
tree | c879e33c09b06f75c24af7e421354df629705f14 | |
parent | 5664f5e0a2042287e81564d85816fdce6f1614a2 (diff) | |
download | volse-hubzilla-fc88c306ab282ab7061d69e5bdc60896fbdb8839.tar.gz volse-hubzilla-fc88c306ab282ab7061d69e5bdc60896fbdb8839.tar.bz2 volse-hubzilla-fc88c306ab282ab7061d69e5bdc60896fbdb8839.zip |
some minor issues uncovered during hubzilla->zap export testing
-rw-r--r-- | Zotlabs/Lib/Activity.php | 6 | ||||
-rw-r--r-- | include/items.php | 23 |
2 files changed, 26 insertions, 3 deletions
diff --git a/Zotlabs/Lib/Activity.php b/Zotlabs/Lib/Activity.php index d286f35c2..6129e7f55 100644 --- a/Zotlabs/Lib/Activity.php +++ b/Zotlabs/Lib/Activity.php @@ -3313,17 +3313,17 @@ class Activity { $ret = false; foreach ($attach as $a) { - if (strpos($a['type'], 'image') !== false) { + if (array_key_exists('type',$a) && stripos($a['type'], 'image') !== false) { if (self::media_not_in_body($a['href'], $body)) { $ret .= "\n\n" . '[img]' . $a['href'] . '[/img]'; } } - if (array_key_exists('type', $a) && strpos($a['type'], 'video') === 0) { + if (array_key_exists('type', $a) && stripos($a['type'], 'video') !== false) { if (self::media_not_in_body($a['href'], $body)) { $ret .= "\n\n" . '[video]' . $a['href'] . '[/video]'; } } - if (array_key_exists('type', $a) && strpos($a['type'], 'audio') === 0) { + if (array_key_exists('type', $a) && stripos($a['type'], 'audio') !== false) { if (self::media_not_in_body($a['href'], $body)) { $ret .= "\n\n" . '[audio]' . $a['href'] . '[/audio]'; } diff --git a/include/items.php b/include/items.php index 1eecfcb0b..eda79c00d 100644 --- a/include/items.php +++ b/include/items.php @@ -1416,6 +1416,25 @@ function decode_tags($t) { return ''; } + +function purify_imported_object($obj) { + $ret = null; + if (is_array($obj)) { + foreach ( $obj as $k => $v ) { + $ret[$k] = purify_html($v); + } + } + elseif (is_string($obj)) { + $ret = purify_html($obj); + } + + return $ret; +} + + + + + /** * @brief Santise a potentially complex array. * @@ -1427,6 +1446,10 @@ function activity_sanitise($arr) { if(is_array($arr)) { $ret = array(); foreach($arr as $k => $x) { + if (in_array($k, [ 'content', 'summary', 'contentMap', 'summaryMap' ])) { + $ret[$k] = purify_imported_object($arr[$k]); + continue; + } if(is_array($x)) $ret[$k] = activity_sanitise($x); else |