MediaWiki  REL1_23
WatchedItem Class Reference

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

List of all members.

Public Member Functions

 addWatch ()
 Given a title and user (assumes the object is setup), add the watch to the database.
 getNotificationTimestamp ()
 Get the notification timestamp of this entry.
 isWatched ()
 Is mTitle being watched by mUser?
 removeWatch ()
 Same as addWatch, only the opposite.
 resetNotificationTimestamp ($force= '', $oldid=0)
 Reset the notification timestamp of this entry.

Static Public Member Functions

static duplicateEntries ($ot, $nt)
 Check if the given title already is watched by the user, and if so add watches on a new title.
static fromUserTitle ($user, $title, $checkRights=WatchedItem::CHECK_USER_RIGHTS)
 Create a WatchedItem object with the given user and title.

Public Attributes

 $mCheckRights
 $mTitle
 $mUser
 $timestamp
 $watched
const CHECK_USER_RIGHTS = 1
 Constant to specify that user rights 'editmywatchlist' and 'viewmywatchlist' should be checked.
const IGNORE_USER_RIGHTS = 0
 Constant to specify that user rights 'editmywatchlist' and 'viewmywatchlist' should not be checked.

Protected Member Functions

 getTitle ()
 Title being watched.
 getTitleDBkey ()
 Helper to retrieve the title DBkey.
 getTitleNs ()
 Helper to retrieve the title namespace.
 getUserId ()
 Helper to retrieve the user id.

Private Member Functions

 dbCond ()
 Return an array of conditions to select or update the appropriate database row.
 isAllowed ($what)
 Check permissions.
 load ()
 Load the object from the database.

Static Private Member Functions

static doDuplicateEntries ($ot, $nt)
 Handle duplicate entries.

Private Attributes

 $loaded = false

Detailed Description

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

Definition at line 29 of file WatchedItem.php.


Member Function Documentation

Given a title and user (assumes the object is setup), add the watch to the database.

Returns:
bool

Definition at line 260 of file WatchedItem.php.

References array(), MWNamespace\getSubject(), MWNamespace\getTalk(), getTitleDBkey(), getTitleNs(), getUserId(), isAllowed(), wfGetDB(), wfProfileIn(), wfProfileOut(), and wfReadOnly().

WatchedItem::dbCond ( ) [private]

Return an array of conditions to select or update the appropriate database row.

Returns:
array

Definition at line 103 of file WatchedItem.php.

References array(), getTitleDBkey(), getTitleNs(), and getUserId().

Referenced by load(), and resetNotificationTimestamp().

static WatchedItem::doDuplicateEntries ( ot,
nt 
) [static, private]

Handle duplicate entries.

Backend for duplicateEntries().

Parameters:
$otTitle
$ntTitle
Returns:
bool

Definition at line 364 of file WatchedItem.php.

References $res, $s, array(), as, empty, and wfGetDB().

Referenced by duplicateEntries().

static WatchedItem::duplicateEntries ( ot,
nt 
) [static]

Check if the given title already is watched by the user, and if so add watches on a new title.

To be used for page renames and such.

Parameters:
$otTitle: page title to duplicate entries from, if present
$ntTitle: page title to add watches on

Definition at line 351 of file WatchedItem.php.

References doDuplicateEntries().

Referenced by Title\moveTo().

static WatchedItem::fromUserTitle ( user,
title,
checkRights = WatchedItem::CHECK_USER_RIGHTS 
) [static]

Create a WatchedItem object with the given user and title.

Since:
1.22 $checkRights parameter added
Parameters:
$userUser: the user to use for (un)watching
$titleTitle: the title we're going to (un)watch
$checkRightsint: Whether to check the 'viewmywatchlist' and 'editmywatchlist' rights. Pass either WatchedItem::IGNORE_USER_RIGHTS or WatchedItem::CHECK_USER_RIGHTS.
Returns:
WatchedItem object

Definition at line 56 of file WatchedItem.php.

References $title, and $user.

Get the notification timestamp of this entry.

Returns:
false|null|string: false if the page is not watched, the value of the wl_notificationtimestamp field otherwise

Definition at line 174 of file WatchedItem.php.

References isAllowed(), and load().

WatchedItem::getTitle ( ) [protected]

Title being watched.

Returns:
Title

Definition at line 69 of file WatchedItem.php.

Referenced by getTitleDBkey(), getTitleNs(), load(), and resetNotificationTimestamp().

WatchedItem::getTitleDBkey ( ) [protected]

Helper to retrieve the title DBkey.

Returns:
string

Definition at line 85 of file WatchedItem.php.

References getTitle().

Referenced by addWatch(), dbCond(), and removeWatch().

WatchedItem::getTitleNs ( ) [protected]

Helper to retrieve the title namespace.

Returns:
int

Definition at line 77 of file WatchedItem.php.

References getTitle().

Referenced by addWatch(), dbCond(), and removeWatch().

WatchedItem::getUserId ( ) [protected]

Helper to retrieve the user id.

Returns:
int

Definition at line 93 of file WatchedItem.php.

Referenced by addWatch(), dbCond(), and removeWatch().

WatchedItem::isAllowed ( what) [private]

Check permissions.

Parameters:
$whatstring: 'viewmywatchlist' or 'editmywatchlist'

Definition at line 151 of file WatchedItem.php.

Referenced by addWatch(), getNotificationTimestamp(), isWatched(), removeWatch(), and resetNotificationTimestamp().

Is mTitle being watched by mUser?

Returns:
bool

Definition at line 159 of file WatchedItem.php.

References isAllowed(), and load().

WatchedItem::load ( ) [private]

Load the object from the database.

Definition at line 114 of file WatchedItem.php.

References $dbr, dbCond(), getTitle(), and wfGetDB().

Referenced by getNotificationTimestamp(), isWatched(), and resetNotificationTimestamp().

WatchedItem::resetNotificationTimestamp ( force = '',
oldid = 0 
)

Reset the notification timestamp of this entry.

Parameters:
$forceWhether to force the write query to be executed even if the page is not watched or the notification timestamp is already NULL.
int$oldidThe revision id being viewed. If not given or 0, latest revision is assumed.

Definition at line 194 of file WatchedItem.php.

References $dbr, $title, array(), dbCond(), getTitle(), isAllowed(), load(), wfGetDB(), and wfReadOnly().


Member Data Documentation

WatchedItem::$loaded = false [private]

Definition at line 45 of file WatchedItem.php.

WatchedItem::$mCheckRights

Definition at line 44 of file WatchedItem.php.

WatchedItem::$mTitle

Definition at line 44 of file WatchedItem.php.

WatchedItem::$mUser

Definition at line 44 of file WatchedItem.php.

WatchedItem::$timestamp

Definition at line 45 of file WatchedItem.php.

WatchedItem::$watched

Definition at line 45 of file WatchedItem.php.

Constant to specify that user rights 'editmywatchlist' and 'viewmywatchlist' should be checked.

Since:
1.22

Definition at line 42 of file WatchedItem.php.

Constant to specify that user rights 'editmywatchlist' and 'viewmywatchlist' should not be checked.

Since:
1.22

Definition at line 35 of file WatchedItem.php.

Referenced by WatchAction\doWatch(), WatchAction\doWatchOrUnwatch(), ApiBase\getWatchlistValue(), and UploadBase\performUpload().


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