Optionally pass a prepared "top level" item into conversation(). This will eventually be used by the photos module where the "top level item" of the conversation is a photo with editing and album navigation controls and doesn't look anything like a post.
This commit is contained in:
parent
3fa6737726
commit
336768715c
@ -22,10 +22,17 @@ class Conversation extends BaseObject {
|
|||||||
private $commentable = false;
|
private $commentable = false;
|
||||||
private $profile_owner = 0;
|
private $profile_owner = 0;
|
||||||
private $preview = false;
|
private $preview = false;
|
||||||
|
private $prepared_item = '';
|
||||||
|
|
||||||
public function __construct($mode, $preview) {
|
|
||||||
|
// $prepared_item is for use by alternate conversation structures such as photos
|
||||||
|
// wherein we've already prepared a top level item which doesn't look anything like
|
||||||
|
// a normal "post" item
|
||||||
|
|
||||||
|
public function __construct($mode, $preview, $prepared_item = '') {
|
||||||
$this->set_mode($mode);
|
$this->set_mode($mode);
|
||||||
$this->preview = $preview;
|
$this->preview = $preview;
|
||||||
|
$this->prepared_item = $prepared_item;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -180,7 +187,12 @@ class Conversation extends BaseObject {
|
|||||||
|
|
||||||
foreach($this->threads as $item) {
|
foreach($this->threads as $item) {
|
||||||
|
|
||||||
$item_data = $item->get_template_data($alike, $dlike);
|
if(($item->get_data_value('id') == $item->get_data_value('parent')) && $this->prepared_item) {
|
||||||
|
$item_data = $this->prepared_item;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
$item_data = $item->get_template_data($alike, $dlike);
|
||||||
|
}
|
||||||
if(!$item_data) {
|
if(!$item_data) {
|
||||||
logger('[ERROR] Conversation::get_template_data : Failed to get item template data ('. $item->get_id() .').', LOGGER_DEBUG);
|
logger('[ERROR] Conversation::get_template_data : Failed to get item template data ('. $item->get_id() .').', LOGGER_DEBUG);
|
||||||
return false;
|
return false;
|
||||||
|
@ -397,7 +397,7 @@ function visible_activity($item) {
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
function conversation(&$a, $items, $mode, $update, $page_mode = 'traditional') {
|
function conversation(&$a, $items, $mode, $update, $page_mode = 'traditional', $prepared_item = '') {
|
||||||
|
|
||||||
$tstart = dba_timer();
|
$tstart = dba_timer();
|
||||||
$t0 = $t1 = $t2 = $t3 = $t4 = $t5 = $t6 = null;
|
$t0 = $t1 = $t2 = $t3 = $t4 = $t5 = $t6 = null;
|
||||||
@ -723,7 +723,7 @@ function conversation(&$a, $items, $mode, $update, $page_mode = 'traditional') {
|
|||||||
require_once('include/ConversationObject.php');
|
require_once('include/ConversationObject.php');
|
||||||
require_once('include/ItemObject.php');
|
require_once('include/ItemObject.php');
|
||||||
|
|
||||||
$conv = new Conversation($mode, $preview);
|
$conv = new Conversation($mode, $preview, $prepared_item);
|
||||||
|
|
||||||
// In the display mode we don't have a profile owner.
|
// In the display mode we don't have a profile owner.
|
||||||
|
|
||||||
@ -764,7 +764,7 @@ function conversation(&$a, $items, $mode, $update, $page_mode = 'traditional') {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// Can we put this after the visibility check?
|
|
||||||
like_puller($a,$item,$alike,'like');
|
like_puller($a,$item,$alike,'like');
|
||||||
|
|
||||||
if(feature_enabled($profile_owner,'dislike'))
|
if(feature_enabled($profile_owner,'dislike'))
|
||||||
|
Reference in New Issue
Block a user