Merge pull request #9374 from annando/issue-9358-b

Issue-9358 (now for real) commenting and updating on contact now work
This commit is contained in:
Hypolite Petovan 2020-10-06 16:39:15 -04:00 committed by GitHub
commit fe040dfe4c
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 28 additions and 22 deletions

View file

@ -452,8 +452,8 @@ function conversation(App $a, array $items, $mode, $update, $preview = false, $o
$profile_owner = 0;
if (!$update) {
$live_update_div = '<div id="live-contacts"></div>' . "\r\n"
. "<script> var profile_uid = -1; var netargs = '" . substr(DI::args()->getCommand(), 9)
$live_update_div = '<div id="live-contact"></div>' . "\r\n"
. "<script> var profile_uid = -1; var netargs = '" . substr(DI::args()->getCommand(), 8)
."/?f='; </script>\r\n";
}
} elseif ($mode === 'search') {

View file

@ -28,11 +28,10 @@ use Friendica\Module\Contact;
function update_contact_content(App $a)
{
if (!empty($_GET['force']) || !DI::pConfig()->get(local_user(), 'system', 'no_auto_update')) {
$text = Contact::content([], true);
if (!empty($a->argv[1]) && (!empty($_GET['force']) || !DI::pConfig()->get(local_user(), 'system', 'no_auto_update'))) {
$text = Contact::getConversationsHMTL($a, $a->argv[1], true, ($_GET['item'] ?? 0));
} else {
$text = '';
}
System::htmlUpdateExit($text);
}

View file

@ -1247,25 +1247,27 @@ class Contact
*
* @param string $contact_url Contact URL
* @param bool $thread_mode
* @param int $update
* @param int $update Update mode
* @param int $parent Item parent ID for the update mode
* @return string posts in HTML
* @throws \Exception
*/
public static function getPostsFromUrl($contact_url, $thread_mode = false, $update = 0)
public static function getPostsFromUrl($contact_url, $thread_mode = false, $update = 0, $parent = 0)
{
return self::getPostsFromId(self::getIdForURL($contact_url), $thread_mode, $update);
return self::getPostsFromId(self::getIdForURL($contact_url), $thread_mode, $update, $parent);
}
/**
* Returns posts from a given contact id
*
* @param integer $cid
* @param bool $thread_mode
* @param integer $update
* @param int $cid Contact ID
* @param bool $thread_mode
* @param int $update Update mode
* @param int $parent Item parent ID for the update mode
* @return string posts in HTML
* @throws \Exception
*/
public static function getPostsFromId($cid, $thread_mode = false, $update = 0)
public static function getPostsFromId($cid, $thread_mode = false, $update = 0, $parent = 0)
{
$a = DI::app();
@ -1290,9 +1292,13 @@ class Contact
$cid, GRAVITY_PARENT, GRAVITY_COMMENT, local_user()];
}
$last_received = isset($_GET['last_received']) ? DateTimeFormat::utc($_GET['last_received']) : '';
if (!empty($last_received)) {
$condition = DBA::mergeConditions($condition, ["`received` < ?", $last_received]);
if (!empty($parent)) {
$condition = DBA::mergeConditions($condition, ['parent' => $parent]);
} else {
$last_received = isset($_GET['last_received']) ? DateTimeFormat::utc($_GET['last_received']) : '';
if (!empty($last_received)) {
$condition = DBA::mergeConditions($condition, ["`received` < ?", $last_received]);
}
}
if (DI::mode()->isMobile()) {
@ -1335,7 +1341,7 @@ class Contact
$items = Item::inArray($r);
$o .= conversation($a, $items, 'contact-posts', false);
$o .= conversation($a, $items, 'contact-posts', $update);
}
if (!$update) {

View file

@ -921,7 +921,7 @@ class Contact extends BaseModule
return $tab_str;
}
private static function getConversationsHMTL($a, $contact_id, $update)
public static function getConversationsHMTL($a, $contact_id, $update, $parent = 0)
{
$o = '';
@ -952,14 +952,15 @@ class Contact extends BaseModule
if (DBA::isResult($contact)) {
DI::page()['aside'] = '';
$profiledata = Model\Contact::getByURLForUser($contact['url'], local_user());
Model\Profile::load($a, '', $profiledata, true);
if (!$update) {
$profiledata = Model\Contact::getByURLForUser($contact['url'], local_user());
Model\Profile::load($a, '', $profiledata, true);
}
if ($contact['uid'] == 0) {
$o .= Model\Contact::getPostsFromId($contact['id'], true, $update);
$o .= Model\Contact::getPostsFromId($contact['id'], true, $update, $parent);
} else {
$o .= Model\Contact::getPostsFromUrl($contact['url'], true, $update);
$o .= Model\Contact::getPostsFromUrl($contact['url'], true, $update, $parent);
}
}