diff --git a/include/text.php b/include/text.php index a3f2a651c..bcb1f9438 100755 --- a/include/text.php +++ b/include/text.php @@ -1015,6 +1015,56 @@ function unobscure(&$item) { } +function theme_attachments(&$item) { + + $arr = json_decode_plus($item['attach']); + if(is_array($arr) && count($arr)) { + $attaches = array(); + foreach($arr as $r) { + $icon = ''; + $icontype = substr($r['type'],0,strpos($r['type'],'/')); + + switch($icontype) { + case 'video': + $icon = 'icon-facetime-video'; + break; + case 'audio': + $icon = 'icon-volume-up'; + break; + case 'image': + $icon = 'icon-camera'; + break; + case 'text': + $icon = 'icon-align-justify'; + break; + default: + $icon = 'icon-question'; + break; + } + + $title = htmlentities($r['title'], ENT_COMPAT,'UTF-8'); + if(! $title) + $title = t('unknown.???'); + $title .= ' ' . $r['length'] . ' ' . t('bytes'); + + $url = z_root() . '/magic?f=&hash=' . $item['author_xchan'] . '&dest=' . $r['href'] . '/' . $r['revision']; + $s .= '' . $icon . ''; + $attaches[] = array('title' => $title, 'url' => $url, 'icon' => $icon ); + + } + + + } + + $s = replace_macros(get_markup_template('item_attach.tpl'), array( + '$attaches' => $attaches + )); + + return $s; + +} + + function prepare_body(&$item,$attach = false) { @@ -1037,36 +1087,8 @@ function prepare_body(&$item,$attach = false) { } - $arr = json_decode_plus($item['attach']); - if(count($arr)) { - $s .= '
'; - foreach($arr as $r) { - $matches = false; - $icon = ''; - $icontype = substr($r['type'],0,strpos($r['type'],'/')); + $s .= theme_attachments($item); - switch($icontype) { - case 'video': - case 'audio': - case 'image': - case 'text': - $icon = '
'; - break; - default: - $icon = '
'; - break; - } - - $title = htmlentities($r['title'], ENT_COMPAT,'UTF-8'); - if(! $title) - $title = t('unknown.???'); - $title .= ' ' . $r['length'] . ' ' . t('bytes'); - - $url = $a->get_baseurl() . '/magic?f=&hash=' . $item['author_xchan'] . '&dest=' . $r['href'] . '/' . $r['revision']; - $s .= '' . $icon . ''; - } - $s .= '
'; - } // At some point in time, posttags were removed from the threaded conversation templates, but remained in the search_item template. // Code to put them back was added into include/conversation.php and/or include/ItemObject.php but under new class names diff --git a/view/theme/redbasic/css/style.css b/view/theme/redbasic/css/style.css index fc84cbf57..0c5c916ae 100644 --- a/view/theme/redbasic/css/style.css +++ b/view/theme/redbasic/css/style.css @@ -3459,3 +3459,18 @@ a .drop-icons { color: #FF0000; } +.attachlink { + float: left; + border: 1px solid black; + padding: 5px; + margin-right: 8px; +} + +.attach-icons { + font-size: 1.4em; +} + +.attach-clip { + margin-right: 3px; + font-size: 1.8em; +} \ No newline at end of file diff --git a/view/tpl/item_attach.tpl b/view/tpl/item_attach.tpl new file mode 100644 index 000000000..25c127a15 --- /dev/null +++ b/view/tpl/item_attach.tpl @@ -0,0 +1,6 @@ +
+{{foreach $attaches as $a}} + +{{/foreach}} +
+