44 return $this->actualStore->countWatchedItems( $user );
48 return $this->actualStore->countWatchers( $target );
52 return $this->actualStore->countVisitingWatchers( $target, $threshold );
56 return $this->actualStore->countVisitingWatchersMultiple( $targets,
$options );
60 array $targetsWithVisitThresholds,
61 $minimumWatchers =
null
63 return $this->actualStore->countVisitingWatchersMultiple(
64 $targetsWithVisitThresholds,
70 return $this->actualStore->getWatchedItem( $user, $target );
74 return $this->actualStore->loadWatchedItem( $user, $target );
78 return $this->actualStore->getWatchedItemsForUser( $user,
$options );
82 return $this->actualStore->isWatched( $user, $target );
86 return $this->actualStore->getNotificationTimestampsBatch( $user, $targets );
90 return $this->actualStore->countUnreadNotifications( $user, $unreadLimit );
94 throw new DBReadOnlyError(
null,
'The watchlist is currently readonly.' );
98 throw new DBReadOnlyError(
null,
'The watchlist is currently readonly.' );
102 throw new DBReadOnlyError(
null,
'The watchlist is currently readonly.' );
106 throw new DBReadOnlyError(
null,
'The watchlist is currently readonly.' );
110 throw new DBReadOnlyError(
null,
'The watchlist is currently readonly.' );
118 throw new DBReadOnlyError(
null,
'The watchlist is currently readonly.' );
122 throw new DBReadOnlyError(
null,
'The watchlist is currently readonly.' );
126 throw new DBReadOnlyError(
null,
'The watchlist is currently readonly.' );
135 throw new DBReadOnlyError(
null,
'The watchlist is currently readonly.' );
139 throw new DBReadOnlyError(
null,
'The watchlist is currently readonly.' );
143 throw new DBReadOnlyError(
null,
'The watchlist is currently readonly.' );
countVisitingWatchersMultiple(array $targetsWithVisitThresholds, $minimumWatchers=null)
Number of watchers of each page who have visited recent edits to that page.
resetAllNotificationTimestampsForUser(User $user)
Reset all watchlist notificaton timestamps for a user using the job queue.
removeWatch(User $user, LinkTarget $target)
Removes the an entry for the User watching the LinkTarget Must be called separately for Subject & Tal...
resetNotificationTimestamp(User $user, Title $title, $force='', $oldid=0)
Reset the notification timestamp of this entry.
countVisitingWatchers(LinkTarget $target, $threshold)
Number of page watchers who also visited a "recent" edit.
addWatchBatchForUser(User $user, array $targets)
countWatchedItems(User $user)
Count the number of individual items that are watched by the user.
updateNotificationTimestamp(User $editor, LinkTarget $target, $timestamp)
clearUserWatchedItems(User $user)
Queues a job that will clear the users watchlist using the Job Queue.
setNotificationTimestampsForUser(User $user, $timestamp, array $targets=[])
getWatchedItem(User $user, LinkTarget $target)
Get an item (may be cached)
WatchedItemStoreInterface $actualStore
getNotificationTimestampsBatch(User $user, array $targets)
__construct(WatchedItemStoreInterface $actualStore)
Initialy set WatchedItemStore that will be used in cases where writing is not needed.
countUnreadNotifications(User $user, $unreadLimit=null)
countWatchers(LinkTarget $target)
countWatchersMultiple(array $targets, array $options=[])
clearUserWatchedItemsUsingJobQueue(User $user)
Queues a job that will clear the users watchlist using the Job Queue.
getWatchedItemsForUser(User $user, array $options=[])
loadWatchedItem(User $user, LinkTarget $target)
Loads an item from the db.
duplicateAllAssociatedEntries(LinkTarget $oldTarget, LinkTarget $newTarget)
Check if the given title already is watched by the user, and if so add a watch for the new title.
addWatch(User $user, LinkTarget $target)
Must be called separately for Subject & Talk namespaces.
duplicateEntry(LinkTarget $oldTarget, LinkTarget $newTarget)
Check if the given title already is watched by the user, and if so add a watch for the new title.
isWatched(User $user, LinkTarget $target)
Must be called separately for Subject & Talk namespaces.
Represents a title within MediaWiki.
The User object encapsulates all of the user-specific settings (user_id, name, rights,...
null means default in associative array with keys and values unescaped Should be merged with default with a value of false meaning to suppress the attribute in associative array with keys and values unescaped & $options
passed in as a query string parameter to the various URLs constructed here(i.e. $prevlink) $ldel you ll need to handle error etc yourself modifying $error and returning true will cause the contents of $error to be echoed at the top of the edit form as wikitext Return true without altering $error to allow the edit to proceed & $editor