diff options
author | Mario <mario@mariovavti.com> | 2021-03-09 11:05:43 +0000 |
---|---|---|
committer | Mario <mario@mariovavti.com> | 2021-03-09 11:05:43 +0000 |
commit | ee40cb337a956ab9ccf0b19fdbb68f8d8b2df522 (patch) | |
tree | ade89cc1add4ae4c84e84c56bae73761e88ba57a | |
parent | 53c3d0d53d27c20bdd58c99674de0881e2b0e5e6 (diff) | |
parent | bdae290ec4477d9894aca65c59bbebe32fbe7e4e (diff) | |
download | volse-hubzilla-ee40cb337a956ab9ccf0b19fdbb68f8d8b2df522.tar.gz volse-hubzilla-ee40cb337a956ab9ccf0b19fdbb68f8d8b2df522.tar.bz2 volse-hubzilla-ee40cb337a956ab9ccf0b19fdbb68f8d8b2df522.zip |
Merge branch 'php8-netstream' into 'dev'
Fix network stream scrolling with PHP 8
See merge request hubzilla/core!1922
-rw-r--r-- | include/text.php | 42 |
1 files changed, 25 insertions, 17 deletions
diff --git a/include/text.php b/include/text.php index ca3453b64..1cfee4c87 100644 --- a/include/text.php +++ b/include/text.php @@ -1542,39 +1542,46 @@ function unobscure_mail(&$item) { function theme_attachments(&$item) { + $s = ''; $arr = json_decode($item['attach'],true); - if(is_array($arr) && count($arr)) { - $attaches = array(); + + $attaches = []; foreach($arr as $r) { - $icon = getIconFromType($r['type']); + if(isset($r['type'])) + $icon = getIconFromType($r['type']); - if($r['title']) + if(isset($r['title'])) $label = urldecode(htmlspecialchars($r['title'], ENT_COMPAT, 'UTF-8')); - if(! $label && $r['href']) + if(! $label && isset($r['href'])) $label = basename($r['href']); //some feeds provide an attachment where title an empty space if(! $label || $label == ' ') $label = t('Unknown Attachment'); - $title = t('Size') . ' ' . (($r['length']) ? userReadableSize($r['length']) : t('unknown')); + $title = t('Size') . ' ' . (isset($r['length']) ? userReadableSize($r['length']) : t('unknown')); require_once('include/channel.php'); - if(is_foreigner($item['author_xchan'])) - $url = $r['href']; - else - $url = z_root() . '/magic?f=&owa=1&hash=' . $item['author_xchan'] . '&bdest=' . bin2hex($r['href'] . '/' . $r['revision']); + + if (isset($r['href'])) { + if(is_foreigner($item['author_xchan'])) + $url = $r['href']; + else + $url = z_root() . '/magic?f=&owa=1&hash=' . $item['author_xchan'] . '&bdest=' . bin2hex($r['href'] . '/' . $r['revision']); + } //$s .= '<a href="' . $url . '" title="' . $title . '" class="attachlink" >' . $icon . '</a>'; - $attaches[] = array('label' => $label, 'url' => $url, 'icon' => $icon, 'title' => $title); + if (isset($label) && isset($url) && isset($icon) && isset($title)) + $attaches[] = array('label' => $label, 'url' => $url, 'icon' => $icon, 'title' => $title); } - $s = replace_macros(get_markup_template('item_attach.tpl'), array( - '$attaches' => $attaches - )); + if (count($attaches) > 0) + $s = replace_macros(get_markup_template('item_attach.tpl'), [ + '$attaches' => $attaches + ]); } return $s; @@ -1612,8 +1619,8 @@ function format_categories(&$item,$writeable) { */ function format_hashtags(&$item) { - $s = ''; + $s = ''; $terms = get_terms_oftype($item['term'], array(TERM_HASHTAG,TERM_COMMUNITYTAG)); if($terms) { foreach($terms as $t) { @@ -1635,13 +1642,14 @@ function format_hashtags(&$item) { } - function format_mentions(&$item) { - $s = ''; + $s = ''; $terms = get_terms_oftype($item['term'],TERM_MENTION); if($terms) { foreach($terms as $t) { + if(! isset($t['term'])) + continue; $term = htmlspecialchars($t['term'],ENT_COMPAT,'UTF-8',false) ; if(! trim($term)) continue; |