ILIAS  trunk Revision v11.0_alpha-3011-gc6b235a2e85
ILIAS\Notifications\Repository\PushRepository Class Reference
+ Collaboration diagram for ILIAS\Notifications\Repository\PushRepository:

Public Member Functions

 __construct (private ilDBInterface $database, private ilObjUser $user)
 
 addSubscription (PushSubscription $subscription)
 
 deleteSubscription (string $auth)
 
 getUserSubscriptions (?int $user_id=null)
 

Detailed Description

Definition at line 28 of file PushRepository.php.

Constructor & Destructor Documentation

◆ __construct()

ILIAS\Notifications\Repository\PushRepository::__construct ( private ilDBInterface  $database,
private ilObjUser  $user 
)

Definition at line 30 of file PushRepository.php.

31 {
32 }

Member Function Documentation

◆ addSubscription()

ILIAS\Notifications\Repository\PushRepository::addSubscription ( PushSubscription  $subscription)

◆ deleteSubscription()

ILIAS\Notifications\Repository\PushRepository::deleteSubscription ( string  $auth)

Definition at line 47 of file PushRepository.php.

47 : void
48 {
49 $this->database->manipulateF('DELETE FROM push_subscriptions WHERE auth = %s', [ilDBConstants::T_TEXT], [$auth]);
50 }

References ILIAS\Repository\database(), and ilDBConstants\T_TEXT.

+ Here is the call graph for this function:

◆ getUserSubscriptions()

ILIAS\Notifications\Repository\PushRepository::getUserSubscriptions ( ?int  $user_id = null)
Returns
PushSubscription[]

Definition at line 55 of file PushRepository.php.

55 : array
56 {
57 $stmt = $this->database->queryF(
58 'SELECT * FROM push_subscriptions WHERE user_id = %s',
60 [$user_id ?? $this->user->getId()]
61 );
62
63 $result = [];
64 while ($row = $stmt->fetchAssoc()) {
65 $result[] = new PushSubscription(
66 $row['endpoint'],
67 $row['auth'],
68 $row['p256dh']
69 );
70 }
71
72 return $result;
73 }

References $user_id, ILIAS\Repository\database(), ilDBConstants\T_INTEGER, and ILIAS\Repository\user().

+ Here is the call graph for this function:

The documentation for this class was generated from the following file: