MediaWiki REL1_34
WatchedItemStoreInterface.php
Go to the documentation of this file.
1<?php
25
31
35 const SORT_ASC = 'ASC';
36
40 const SORT_DESC = 'DESC';
41
52 public function countWatchedItems( UserIdentity $user );
53
61 public function countWatchers( LinkTarget $target );
62
75 public function countVisitingWatchers( LinkTarget $target, $threshold );
76
88 public function countWatchersMultiple( array $targets, array $options = [] );
89
111 array $targetsWithVisitThresholds,
112 $minimumWatchers = null
113 );
114
125 public function getWatchedItem( UserIdentity $user, LinkTarget $target );
126
137 public function loadWatchedItem( UserIdentity $user, LinkTarget $target );
138
150 public function getWatchedItemsForUser( UserIdentity $user, array $options = [] );
151
162 public function isWatched( UserIdentity $user, LinkTarget $target );
163
175 public function getNotificationTimestampsBatch( UserIdentity $user, array $targets );
176
185 public function addWatch( UserIdentity $user, LinkTarget $target );
186
195 public function addWatchBatchForUser( UserIdentity $user, array $targets );
196
210 public function removeWatch( UserIdentity $user, LinkTarget $target );
211
222 UserIdentity $user,
223 $timestamp,
224 array $targets = []
225 );
226
235
247 UserIdentity $editor, LinkTarget $target, $timestamp );
248
265 UserIdentity $user, LinkTarget $title, $force = '', $oldid = 0 );
266
276 public function countUnreadNotifications( UserIdentity $user, $unreadLimit = null );
277
289 public function duplicateAllAssociatedEntries( LinkTarget $oldTarget, LinkTarget $newTarget );
290
303 public function duplicateEntry( LinkTarget $oldTarget, LinkTarget $newTarget );
304
312 public function clearUserWatchedItems( UserIdentity $user );
313
322
331 public function removeWatchBatchForUser( UserIdentity $user, array $targets );
332
347 $timestamp, UserIdentity $user, LinkTarget $target );
348}
Interface for objects representing user identity.
updateNotificationTimestamp(UserIdentity $editor, LinkTarget $target, $timestamp)
countWatchersMultiple(array $targets, array $options=[])
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.
getLatestNotificationTimestamp( $timestamp, UserIdentity $user, LinkTarget $target)
Convert $timestamp to TS_MW or return null if the page was visited since then by $user.
addWatchBatchForUser(UserIdentity $user, array $targets)
removeWatchBatchForUser(UserIdentity $user, array $targets)
addWatch(UserIdentity $user, LinkTarget $target)
Must be called separately for Subject & Talk namespaces.
countVisitingWatchersMultiple(array $targetsWithVisitThresholds, $minimumWatchers=null)
Number of watchers of each page who have visited recent edits to that page.
countWatchers(LinkTarget $target)
getWatchedItemsForUser(UserIdentity $user, array $options=[])
countVisitingWatchers(LinkTarget $target, $threshold)
Number of page watchers who also visited a "recent" edit.
isWatched(UserIdentity $user, LinkTarget $target)
Must be called separately for Subject & Talk namespaces.
getWatchedItem(UserIdentity $user, LinkTarget $target)
Get an item (may be cached)
countUnreadNotifications(UserIdentity $user, $unreadLimit=null)
clearUserWatchedItemsUsingJobQueue(UserIdentity $user)
Queues a job that will clear the users watchlist using the Job Queue.
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.
loadWatchedItem(UserIdentity $user, LinkTarget $target)
Loads an item from the db.
countWatchedItems(UserIdentity $user)
Count the number of individual items that are watched by the user.
resetNotificationTimestamp(UserIdentity $user, LinkTarget $title, $force='', $oldid=0)
Reset the notification timestamp of this entry.
clearUserWatchedItems(UserIdentity $user)
Queues a job that will clear the users watchlist using the Job Queue.
resetAllNotificationTimestampsForUser(UserIdentity $user)
Reset all watchlist notificaton timestamps for a user using the job queue.
removeWatch(UserIdentity $user, LinkTarget $target)
Removes an entry for the UserIdentity watching the LinkTarget Must be called separately for Subject &...
setNotificationTimestampsForUser(UserIdentity $user, $timestamp, array $targets=[])
getNotificationTimestampsBatch(UserIdentity $user, array $targets)