From 3c4e5014350a76c75e7d55edd8be988c0a0cefec Mon Sep 17 00:00:00 2001 From: Friendika Date: Wed, 13 Apr 2011 01:53:40 -0700 Subject: convert feed attach to bbcode --- include/items.php | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) (limited to 'include/items.php') diff --git a/include/items.php b/include/items.php index 86579512e..82752e168 100644 --- a/include/items.php +++ b/include/items.php @@ -477,10 +477,12 @@ function get_atom_elements($feed,$item) { if($attach) { $att_arr = array(); foreach($attach as $att) { - $len = intval($att->get_length()); - $link = str_replace(',','%2D', notags(trim($att->get_link()))); - $title = str_replace(',','%2D',notags(trim($att->get_title()))); - $type = notags(trim($att->get_type())); + $len = intval($att->get_length()); + $link = str_replace(array(',','"'),array('%2D','%22'),notags(trim(unxmlify($att->get_link())))); + $title = str_replace(array(',','"'),array('%2D','%22'),notags(trim(unxmlify($att->get_title())))); + $type = str_replace(array(',','"'),array('%2D','%22'),notags(trim(unxmlify($att->get_type())))); + if(strpos($type,';')) + $type = substr($type,0,strpos($type,';')); if((! $link) || (strpos($link,'http') !== 0)) continue; @@ -489,9 +491,7 @@ function get_atom_elements($feed,$item) { if(! $type) $type = 'application/octet-stream'; - // this isn't legal html - there is no size in an 'a' tag, remember to strip it before display - - $att_arr[] = '' . $title . ''; + $att_arr[] = '[attach]href="' . $link . '" size="' . $len . '" type="' . $type . '" title="' . $title . '"[/attach]'; } $res['attach'] = implode(',', $att_arr); } @@ -1588,13 +1588,13 @@ function item_getfeedattach($item) { if(count($arr)) { foreach($arr as $r) { $matches = false; - $cnt = preg_match('|\(.+?)|',$r,$matches); + $cnt = preg_match('|\[attach\]href=\"(.+?)\" size=\"(.+?)\" type=\"(.+?)\" title=\"(.+?)\"\[\/attach\]|',$r,$matches); if($cnt) { $ret .= '