MediaWiki REL1_37
WatchedItem Class Reference

Representation of a pair of user and title for watchlist entries. More...

Collaboration diagram for WatchedItem:

Public Member Functions

 __construct (UserIdentity $user, $target, $notificationTimestamp, ?string $expiry=null)
 
 getExpiry (?int $style=TS_MW)
 When the watched item will expire.
 
 getExpiryInDays ()
 Get days remaining until a watched item expires.
 
 getExpiryInDaysText (MessageLocalizer $msgLocalizer, $isDropdownOption=false)
 Get days remaining until a watched item expires as a text.
 
 getLinkTarget ()
 
 getNotificationTimestamp ()
 Get the notification timestamp of this entry.
 
 getTarget ()
 
 getUserIdentity ()
 
 isExpired ()
 Has the watched item expired?
 

Static Public Member Functions

static calculateExpiryInDays (?string $expiry)
 Get the number of days remaining until the given expiry time.
 
static newFromRecentChange (RecentChange $recentChange, UserIdentity $user)
 

Private Attributes

ConvertibleTimestamp null $expiry
 value that determines when a watched item will expire.
 
null string $notificationTimestamp
 the value of the wl_notificationtimestamp field
 
LinkTarget PageIdentity $target
 deprecated LinkTarget since 1.36
 
UserIdentity $user
 
const SECONDS_IN_A_DAY = 86400
 Used to calculate how many days are remaining until a watched item will expire.
 

Detailed Description

Representation of a pair of user and title for watchlist entries.

Author
Tim Starling
Addshore

Definition at line 36 of file WatchedItem.php.

Constructor & Destructor Documentation

◆ __construct()

WatchedItem::__construct ( UserIdentity  $user,
  $target,
  $notificationTimestamp,
?string  $expiry = null 
)
Parameters
UserIdentity$user
LinkTarget | PageIdentity$targetdeprecated passing LinkTarget since 1.36
null | string$notificationTimestampthe value of the wl_notificationtimestamp field
null | string$expiryOptional expiry timestamp in any format acceptable to wfTimestamp()

Definition at line 73 of file WatchedItem.php.

References $expiry.

Member Function Documentation

◆ calculateExpiryInDays()

static WatchedItem::calculateExpiryInDays ( ?string  $expiry)
static

Get the number of days remaining until the given expiry time.

Since
1.35
Parameters
string | null$expiryThe expiry to calculate from, in any format supported by MWTimestamp::convert().
Returns
int|null The remaining number of days or null if $expiry is null.

Definition at line 192 of file WatchedItem.php.

◆ getExpiry()

WatchedItem::getExpiry ( ?int  $style = TS_MW)

When the watched item will expire.

Since
1.35
Parameters
int | null$styleGiven timestamp format to style the ConvertibleTimestamp
Returns
string|null null or in a format acceptable to ConvertibleTimestamp (TS_* constants). Default is TS_MW format.

Definition at line 150 of file WatchedItem.php.

Referenced by ApiQueryWatchlist\extractOutputData(), WatchAction\getExpiryOptions(), isExpired(), SpecialWatchlist\outputChangesList(), and Linker\tooltipAndAccesskeyAttribs().

◆ getExpiryInDays()

WatchedItem::getExpiryInDays ( )

Get days remaining until a watched item expires.

Since
1.35
Returns
int|null days remaining or null if no expiration is present

Definition at line 178 of file WatchedItem.php.

◆ getExpiryInDaysText()

WatchedItem::getExpiryInDaysText ( MessageLocalizer  $msgLocalizer,
  $isDropdownOption = false 
)

Get days remaining until a watched item expires as a text.

Since
1.35
Parameters
MessageLocalizer$msgLocalizer
bool$isDropdownOptionWhether the text is being displayed as a dropdown option. The text is different as a dropdown option from when it is used in other places as a watchlist indicator.
Returns
string days remaining text and '' if no expiration is present

Definition at line 218 of file WatchedItem.php.

Referenced by WatchAction\getExpiryOptions().

◆ getLinkTarget()

WatchedItem::getLinkTarget ( )
Returns
LinkTarget
Deprecated:
since 1.36, use getTarget() instead

Definition at line 118 of file WatchedItem.php.

References getTarget().

◆ getNotificationTimestamp()

WatchedItem::getNotificationTimestamp ( )

Get the notification timestamp of this entry.

Returns
bool|null|string

Definition at line 138 of file WatchedItem.php.

Referenced by ApiQueryWatchlist\extractOutputData().

◆ getTarget()

WatchedItem::getTarget ( )
Returns
LinkTarget|PageIdentity deprecated returning LinkTarget since 1.36
Since
1.36

Definition at line 129 of file WatchedItem.php.

Referenced by WatchedItemStore\cache(), ApiQueryWatchlist\extractOutputData(), getLinkTarget(), and ApiQueryWatchlist\run().

◆ getUserIdentity()

WatchedItem::getUserIdentity ( )
Returns
UserIdentity

Definition at line 110 of file WatchedItem.php.

Referenced by WatchedItemStore\cache().

◆ isExpired()

WatchedItem::isExpired ( )

Has the watched item expired?

Since
1.35
Returns
bool

Definition at line 163 of file WatchedItem.php.

References $expiry, and getExpiry().

◆ newFromRecentChange()

static WatchedItem::newFromRecentChange ( RecentChange  $recentChange,
UserIdentity  $user 
)
static
Since
1.35
Parameters
RecentChange$recentChange
UserIdentity$user
Returns
WatchedItem

Definition at line 98 of file WatchedItem.php.

References RecentChange\getTitle().

Member Data Documentation

◆ $expiry

ConvertibleTimestamp null WatchedItem::$expiry
private

value that determines when a watched item will expire.

'null' means that there is no expiration.

Definition at line 56 of file WatchedItem.php.

Referenced by __construct(), and isExpired().

◆ $notificationTimestamp

null string WatchedItem::$notificationTimestamp
private

the value of the wl_notificationtimestamp field

Definition at line 50 of file WatchedItem.php.

◆ $target

LinkTarget PageIdentity WatchedItem::$target
private

deprecated LinkTarget since 1.36

Definition at line 40 of file WatchedItem.php.

◆ $user

UserIdentity WatchedItem::$user
private

Definition at line 45 of file WatchedItem.php.

◆ SECONDS_IN_A_DAY

const WatchedItem::SECONDS_IN_A_DAY = 86400
private

Used to calculate how many days are remaining until a watched item will expire.

Uses a different algorithm from Language::getDurationIntervals for calculating days remaining in an interval of time

Since
1.35

Definition at line 65 of file WatchedItem.php.


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