mirror of
https://github.com/friendica/friendica
synced 2025-04-29 23:04:24 +02:00
Merge pull request #9334 from annando/endless-scroll
Endless scrolling for searches and contact comments
This commit is contained in:
commit
97f07b7518
10 changed files with 77 additions and 23 deletions
|
@ -1286,16 +1286,16 @@ class Contact
|
|||
if ($thread_mode) {
|
||||
$condition = ["(`$contact_field` = ? OR (`causer-id` = ? AND `post-type` = ?)) AND `gravity` = ? AND " . $sql,
|
||||
$cid, $cid, Item::PT_ANNOUNCEMENT, GRAVITY_PARENT, local_user()];
|
||||
|
||||
$last_received = isset($_GET['last_received']) ? DateTimeFormat::utc($_GET['last_received']) : '';
|
||||
if (!empty($last_received)) {
|
||||
$condition = DBA::mergeConditions($condition, ["`received` < ?", $last_received]);
|
||||
}
|
||||
} else {
|
||||
$condition = ["`$contact_field` = ? AND `gravity` IN (?, ?) AND " . $sql,
|
||||
$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 (DI::mode()->isMobile()) {
|
||||
$itemsPerPage = DI::pConfig()->get(local_user(), 'system', 'itemspage_mobile_network',
|
||||
DI::config()->get('system', 'itemspage_network_mobile'));
|
||||
|
@ -1309,14 +1309,14 @@ class Contact
|
|||
$params = ['order' => ['received' => true], 'group_by' => ['uri-id'],
|
||||
'limit' => [$pager->getStart(), $pager->getItemsPerPage()]];
|
||||
|
||||
if ($thread_mode) {
|
||||
if (DI::pConfig()->get(local_user(), 'system', 'infinite_scroll')) {
|
||||
$tpl = Renderer::getMarkupTemplate('infinite_scroll_head.tpl');
|
||||
$o = Renderer::replaceMacros($tpl, ['$reload_uri' => DI::args()->getQueryString()]);
|
||||
} else {
|
||||
$o = '';
|
||||
}
|
||||
|
||||
if (DI::pConfig()->get(local_user(), 'system', 'infinite_scroll')) {
|
||||
$tpl = Renderer::getMarkupTemplate('infinite_scroll_head.tpl');
|
||||
$o = Renderer::replaceMacros($tpl, ['$reload_uri' => DI::args()->getQueryString()]);
|
||||
} else {
|
||||
$o = '';
|
||||
}
|
||||
|
||||
if ($thread_mode) {
|
||||
$r = Item::selectForUser(local_user(), ['uri', 'gravity', 'parent-uri'], $condition, $params);
|
||||
$items = [];
|
||||
while ($item = DBA::fetch($r)) {
|
||||
|
@ -1336,11 +1336,11 @@ class Contact
|
|||
|
||||
$items = Item::inArray($r);
|
||||
|
||||
$o = conversation($a, $items, 'contact-posts', false);
|
||||
$o .= conversation($a, $items, 'contact-posts', false);
|
||||
}
|
||||
|
||||
if (!$update) {
|
||||
if ($thread_mode && DI::pConfig()->get(local_user(), 'system', 'infinite_scroll')) {
|
||||
if (DI::pConfig()->get(local_user(), 'system', 'infinite_scroll')) {
|
||||
$o .= HTML::scrollLoader();
|
||||
} else {
|
||||
$o .= $pager->renderMinimal(count($items));
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue