From c6d6c01fb619b37fa47f19966421a6636155180c Mon Sep 17 00:00:00 2001 From: friendica Date: Mon, 16 Sep 2013 22:40:53 -0700 Subject: use prepare_body in api calls to properly render content, add 'mode' to conversation templates so that themes can use the module context to suppress or show comments as desired --- include/ItemObject.php | 4 +++- include/api.php | 14 +++++++------- include/conversation.php | 1 + 3 files changed, 11 insertions(+), 8 deletions(-) (limited to 'include') diff --git a/include/ItemObject.php b/include/ItemObject.php index 22b191e79..0256160e9 100644 --- a/include/ItemObject.php +++ b/include/ItemObject.php @@ -88,6 +88,8 @@ class Item extends BaseObject { : false); $shareable = ((($conv->get_profile_owner() == local_user()) && ($item['item_private'] != 1)) ? true : false); + $mode = $conv->get_mode(); + if(local_user() && $observer['xchan_hash'] === $item['author_xchan']) $edpost = array($a->get_baseurl($ssl_state)."/editpost/".$item['id'], t("Edit")); else @@ -183,7 +185,7 @@ class Item extends BaseObject { $tmp_item = array( 'template' => $this->get_template(), - + 'mode' => $mode, 'type' => implode("",array_slice(explode("/",$item['verb']),-1)), 'tags' => array(), 'body' => $body, diff --git a/include/api.php b/include/api.php index d76d82626..0ca8393c1 100644 --- a/include/api.php +++ b/include/api.php @@ -732,7 +732,7 @@ require_once('include/photos.php'); } } $status_info = array( - 'text' => html2plain(bbcode($lastwall['body']), 0), + 'text' => html2plain(prepare_text($lastwall['body'],$lastwall['mimetype']), 0), 'truncated' => false, 'created_at' => api_date($lastwall['created']), 'in_reply_to_status_id' => $in_reply_to_status_id, @@ -804,7 +804,7 @@ require_once('include/photos.php'); } } $user_info['status'] = array( - 'text' => html2plain(bbcode($lastwall['body']), 0), + 'text' => html2plain(prepare_text($lastwall['body'],$lastwall['mimetype']), 0), 'truncated' => false, 'created_at' => api_date($lastwall['created']), 'in_reply_to_status_id' => $in_reply_to_status_id, @@ -1374,14 +1374,14 @@ require_once('include/photos.php'); if (x($_GET, 'getText')) { $ret['title'] = $item['title'] ; if ($_GET["getText"] == "html") { - $ret['text'] = bbcode($item['body']); + $ret['text'] = prepare_text($item['body'],$item['mimetype']); } elseif ($_GET["getText"] == "plain") { - $ret['text'] = html2plain(bbcode($item['body']), 0); + $ret['text'] = html2plain(prepare_text($item['body'],$item['mimetype']), 0); } } else { - $ret['text'] = $item['title']."\n".html2plain(bbcode($item['body']), 0); + $ret['text'] = $item['title']."\n".html2plain(prepare_text($item['body'],$item['mimetype']), 0); } if (isset($_GET["getUserObjects"]) && $_GET["getUserObjects"] == "false") { unset($ret['sender']); @@ -1427,7 +1427,7 @@ require_once('include/photos.php'); } // Workaround for ostatus messages where the title is identically to the body - $statusbody = trim(html2plain(bbcode($item['body']), 0)); + $statusbody = trim(html2plain(prepare_text($item['body'],$item['mimetype']), 0)); $statustitle = trim($item['title']); if (($statustitle != '') and (strpos($statusbody, $statustitle) !== false)) @@ -1448,7 +1448,7 @@ require_once('include/photos.php'); 'geo' => '', 'favorited' => (($item['item_flags'] & ITEM_STARRED) ? true : false), 'user' => $status_user , - 'statusnet_html' => trim(bbcode($item['body'])), + 'statusnet_html' => trim(prepare_text($item['body']),$item['mimetype']), 'statusnet_conversation_id' => $item['parent'], ); diff --git a/include/conversation.php b/include/conversation.php index e7c7831c0..c3f29295e 100644 --- a/include/conversation.php +++ b/include/conversation.php @@ -651,6 +651,7 @@ function conversation(&$a, $items, $mode, $update, $page_mode = 'traditional') { $tmp_item = array( 'template' => $tpl, 'toplevel' => 'toplevel_item', + 'mode' => $mode, 'id' => (($preview) ? 'P0' : $item['item_id']), 'linktitle' => sprintf( t('View %s\'s profile @ %s'), $profile_name, $profile_url), 'profile_url' => $profile_link, -- cgit v1.2.3