Extends
Constructor
new mw.echo.ui.NotificationItemWidget(controller, model, [config])abstract
#
Hierarchy
Children
A base widget for displaying notification items.
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
controller |
mw.echo.Controller | Echo controller |
|
model |
mw.echo.dm.NotificationItem | Notification item model |
|
config |
Object |
optional |
Configuration options |
Methods
destroy()
#
Disconnect events when widget is destroyed.
getId() → {number}
#
Get the notification Id
Returns:
Notification id
- Type
- number
getModel() → {mw.echo.dm.NotificationItem}
#
Get the model associated with this widget.
Returns:
Item model
getPrimaryUrl() → {string}
#
Get the notification link
Returns:
Notification link
- Type
- string
getTimestamp() → {number}
#
Get the item id
Returns:
Notification id
- Type
- number
isFake() → {boolean}
#
Declares whether this widget is a cloned fake.
Returns:
false
- Type
- boolean
isForeign() → {boolean}
#
Check whether this item is foreign.
Returns:
Item is foreign
- Type
- boolean
isRead() → {boolean}
#
Check whether this item is read.
Returns:
Item is read
- Type
- boolean
isSeen() → {boolean}
#
Check whether this item is seen.
Returns:
Item is seen
- Type
- boolean
markRead([isRead])abstract
#
Mark this notification as read
Parameters:
Name | Type | Attributes | Default | Description |
---|---|---|---|---|
isRead |
boolean |
optional |
true | Notification is marked as read |
onMarkAsReadButtonClick()
#
Respond to mark as read button click
onPopupButtonWidgetChoose(item)
#
Manage a click on a dynamic secondary link. We can't know what the link intends us to do in the API, so we trust the 'apiParams' to tell the controller. When the link is clicked, we will pass the information on to the controller, which will manage whatever promise and action is needed.
NOTE: The messages are parsed as HTML. If user-input is expected please make sure to properly escape it.
Parameters:
Name | Type | Description |
---|---|---|
item |
OO.ui.ButtonOptionWidget | The selected item |
onPrimaryLinkClick() → {boolean}
#
Respond to primary link click. Override this in the descendents.
Returns:
true
- Type
- boolean
resetInitiallyUnseen()
#
Remove the 'initiallyUnseen' class, which was only used for the unseen animation when the user has first seen it.
Remove the 'initiallyUnseen' class, which was only used for the unseen animation when the user has first seen it.
toggleMarkAsReadButtons([showMarkAsRead])
#
Toggle the function of the 'mark as read' buttons from 'mark as read' to 'mark as unread' and vice versa.
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
showMarkAsRead |
boolean |
optional |
Show the 'mark as read' buttons
|
Toggle the function of the 'mark as read' buttons from 'mark as read' to 'mark as unread' and vice versa.
toggleRead([read])
#
Toggle the read state of the widget
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
read |
boolean |
optional |
The current read state. If not given, the state will become the opposite of its current state. |
toggleSeen([seen])
#
Toggle the seen state of the widget
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
seen |
boolean |
optional |
The current seen state. If not given, the state will become the opposite of its current state. |