vBulletin v6.0.4

vB_Api_Notification extends vB_Api
in package

vB_Api_Notification

Tags
access

public

Table of Contents

Methods

__serialize()  : array<string|int, mixed>
__sleep()  : array<string|int, mixed>
__unserialize()  : void
__wakeup()  : void
callNamed()  : The
Call the given api function by name with a named arguments list.
checkApiState()  : mixed
This method checks whether the API method is enabled.
clearCache()  : mixed
Clears all previously loaded API objects.
deleteNotification()  : mixed
Deletes specified notificationds, but only if it's owned by the current user.
dismissAllNotifications()  : array<string|int, mixed>
Updates all notifications owned by user and marks them as read (sets the lastreadtime to current time).
dismissNotification()  : array<string|int, mixed>
Updates the specified notificationids to mark them as read, and returns a single "next" notification based on the filter parameters.
fetchNotificationsForCurrentUser()  : array<string|int, mixed>
Return current user's notifications from DB.
getApiClassName()  : mixed
instance()  : vB_Api
Returns an instance of the API object which translates exceptions to an array Use this method for API clients.
instanceInternal()  : vB_Api
Returns an instance of the API object which doesn't handle exceptions This should only be used in other API objects, not for clients of the API
map_vb4_input_to_vb5()  : string
Returns vb5 api method name.
map_vb5_errors_to_vb4()  : mixed
Alters the error array in any way necessary to interface correctly with vb4.
map_vb5_output_to_vb4()  : mixed
Alters the output array in any way necessary to interface correctly with vb4.
undoUnsubscribe()  : mixed
unsubscribeFromNotification()  : array<string|int, mixed>
Unsubscribe from notifications sent by $sentbynodeid. Note, due to the timing & bulking of email notifications, it is currently nontrivial to map which email is for which specific notificationid, so we have to use sentbynodeid.

Methods

__serialize()

public __serialize() : array<string|int, mixed>
Return values
array<string|int, mixed>

__sleep()

public __sleep() : array<string|int, mixed>
Return values
array<string|int, mixed>

__unserialize()

public __unserialize(array<string|int, mixed> $serialized) : void
Parameters
$serialized : array<string|int, mixed>

callNamed()

Call the given api function by name with a named arguments list.

public callNamed() : The

Used primarily to translate REST requests into API calls.

Return values
The

return of the method or an error if the method doesn't exist, or is static, a constructor or destructor, or otherwise shouldn't be callable as and API method. It is also an error if the value of a paramater is not provided and that parameter doesn't have a default value.

checkApiState()

This method checks whether the API method is enabled.

public checkApiState(mixed $method) : mixed

For extensions check make sure $controller property is already set.

Parameters
$method : mixed

clearCache()

Clears all previously loaded API objects.

public static clearCache() : mixed

Intended for use in tests where the loading pattern can cause issues with objects that cache thier own data.

deleteNotification()

Deletes specified notificationds, but only if it's owned by the current user.

public deleteNotification(int|array<string|int, int> $notificationids[, int $userid = false ]) : mixed

Use the library's deleteNotification() function to ignore ownership.

Parameters
$notificationids : int|array<string|int, int>

Array of notificationids to delete.

$userid : int = false

Optional. User who owns the specified notificationids. Currently not supported.

Tags
throws
vB_Exception_Api

If current user does not have permission to delete the specified user's notifications.

dismissAllNotifications()

Updates all notifications owned by user and marks them as read (sets the lastreadtime to current time).

public dismissAllNotifications([int $userid = false ]) : array<string|int, mixed>
Parameters
$userid : int = false

Optional user who owns the $readIds. Currently unused.

Tags
throws
vB_Exception_Api

If current user does not have permission to read the specified user's notifications.

Return values
array<string|int, mixed>

Results data including the following type & keys:

  • Int 'affected_rows' Number of rows affected by update query

dismissNotification()

Updates the specified notificationids to mark them as read, and returns a single "next" notification based on the filter parameters.

public dismissNotification(int|array<string|int, int> $readIds[, int|array<string|int, int> $idsOnPage = array() ][, array<string|int, mixed> $filterParams = array() ][, bool $skipFetch = false ][, int $userid = false ]) : array<string|int, mixed>
Parameters
$readIds : int|array<string|int, int>

Integer(s) notificationid(s) being dismissed.

$idsOnPage : int|array<string|int, int> = array()

Notifications on the current page.

$filterParams : array<string|int, mixed> = array()

@see vB_Library_Notification::fetchNotificationsForCurrentUser(), $data param. If empty or if $skipFetch is true, the function will skip fetching the "next" notification.

$skipFetch : bool = false

Default false. If true or if $filterParams is empty, the function will skip fetching the "next" notification.

$userid : int = false

Optional user who owns the $readIds. Currently unused.

Tags
throws
vB_Exception_Api

If current user does not have permission to read the specified user's notifications.

Return values
array<string|int, mixed>

Results data including the following type & keys:

  • String 'insertNotification' Rendered template HTML string for a notification row that should be inserted into the DOM
  • Int 'affected_rows' Number of rows affected by update query
  • String 'info' ''|'fetch_skipped'|'page_empty' If not empty string, indicates the reason API returned early.
  • Int 'lastsenttime' Lastsenttime of the notification, to be used by the frontend code for sorting in the future.

fetchNotificationsForCurrentUser()

Return current user's notifications from DB.

public fetchNotificationsForCurrentUser([array<string|int, mixed> $data = array() ]) : array<string|int, mixed>
Parameters
$data : array<string|int, mixed> = array()

@see vB_Library_Notification::fetchNotificationsForCurrentUser()

Tags
throws
vB_Exception_Api

If user is not logged in

Return values
array<string|int, mixed>

@see vB_Library_Notification::fetchNotificationsForCurrentUser()

getApiClassName()

public static getApiClassName(mixed $controller) : mixed
Parameters
$controller : mixed

instance()

Returns an instance of the API object which translates exceptions to an array Use this method for API clients.

public static instance(string $controller[, bool $refresh_cache = false ]) : vB_Api
Parameters
$controller : string

-- name of the API controller to load

$refresh_cache : bool = false

-- true if we want to force the cache to update with a new api object primarily intended for testing

Return values
vB_Api

instanceInternal()

Returns an instance of the API object which doesn't handle exceptions This should only be used in other API objects, not for clients of the API

public static instanceInternal(string $controller[, bool $refresh_cache = false ]) : vB_Api
Parameters
$controller : string

-- name of the API controller to load

$refresh_cache : bool = false

-- true if we want to force the cache to update with a new api object primarily intended for testing

Return values
vB_Api

map_vb4_input_to_vb5()

Returns vb5 api method name.

public static map_vb4_input_to_vb5(string $method, array<string|int, mixed> &$request) : string

May alter request array.

Parameters
$method : string

-- vb4 method name

$request : array<string|int, mixed>

-- $_REQUEST array for this api request

Return values
string

map_vb5_errors_to_vb4()

Alters the error array in any way necessary to interface correctly with vb4.

public static map_vb5_errors_to_vb4(string $method, array<string|int, mixed> &$data) : mixed
Parameters
$method : string

-- vb4 method name

$data : array<string|int, mixed>

-- error array from vb5

map_vb5_output_to_vb4()

Alters the output array in any way necessary to interface correctly with vb4.

public static map_vb5_output_to_vb4(string $method, array<string|int, mixed> &$data) : mixed
Parameters
$method : string

-- vb4 method name

$data : array<string|int, mixed>

-- output array from vb5

undoUnsubscribe()

public undoUnsubscribe(int $undoid) : mixed
Parameters
$undoid : int

unsubscribeFromNotification()

Unsubscribe from notifications sent by $sentbynodeid. Note, due to the timing & bulking of email notifications, it is currently nontrivial to map which email is for which specific notificationid, so we have to use sentbynodeid.

public unsubscribeFromNotification(int $sentbynodeid) : array<string|int, mixed>
Parameters
$sentbynodeid : int
Return values
array<string|int, mixed>

['success' => bool, ...]


        
On this page

Search results