Simplify Depository\Notify->selectAllForUser parameters

- Shifts database structure knowledge from the controller to the depository where it should be
This commit is contained in:
Hypolite Petovan 2021-09-19 12:57:16 -04:00
parent 8a1a2f658c
commit 4f42522ebc
2 changed files with 10 additions and 3 deletions

View file

@ -5590,7 +5590,7 @@ function api_friendica_notification($type)
throw new BadRequestException('Invalid argument count');
}
$Notifies = DI::notify()->selectAllForUser(local_user(), ['order' => ['seen' => 'ASC', 'date' => 'DESC'], 'limit' => 50]);
$Notifies = DI::notify()->selectAllForUser(local_user(), 50);
$notifications = new ApiNotifications();
foreach ($Notifies as $Notify) {

View file

@ -73,9 +73,16 @@ class Notify extends BaseDepository
return $this->select($condition, $params);
}
public function selectAllForUser(int $uid, array $params = []): Collection\Notifies
/**
* Returns notifications for the user, unread first, ordered in descending chronological order.
*
* @param int $uid
* @param int $limit
* @return Collection\Notifies
*/
public function selectAllForUser(int $uid, int $limit): Collection\Notifies
{
return $this->selectForUser($uid, [], $params);
return $this->selectForUser($uid, [], ['order' => ['seen' => 'ASC', 'date' => 'DESC'], 'limit' => $limit]);
}
public function setAllSeenForUser(int $uid, array $condition = []): bool