MediaWiki  master
RecentChange Class Reference

Utility class for creating new RC entries. More...

Inheritance diagram for RecentChange:
Collaboration diagram for RecentChange:

List of all members.

Public Member Functions

 diffLinkTrail ($forceCur)
 Gets the end part of the diff URL associated with this object Blank if no diff link should be displayed.
 doMarkPatrolled (User $user, $auto=false)
 Mark this RecentChange as patrolled.
 getAttribute ($name)
 Get an attribute value.
 getAttributes ()
 getCharacterDifference ($old=0, $new=0)
 Returns the change size (HTML).
 getIRCLine ()
 getPerformer ()
 Get the User object of the person who performed this change.
getTitle ()
 loadFromCurRow ($row)
 Makes a pseudo-RC entry from a cur row.
 loadFromRow ($row)
 Initialises the members of this object from a mysql row object.
 notifyRC2UDP ()
 reallyMarkPatrolled ()
 Mark this RecentChange patrolled, without error checking.
 save ($noudp=false)
 Writes the data in this object to the database.
 setAttribs ($attribs)
 setExtra ($extra)

Static Public Member Functions

static cleanupForIRC ($text)
 Remove newlines, carriage returns and decode html entites.
static markPatrolled ($change, $auto=false)
 Mark a given change as patrolled.
static newFromConds ($conds, $fname=__METHOD__)
 Find the first recent change matching some specific conditions.
static newFromCurRow ($row)
static newFromId ($rcid)
 Obtain the recent change with a given rc_id value.
static newFromRow ($row)
static newLogEntry ($timestamp, &$title, &$user, $actionComment, $ip, $type, $action, $target, $logComment, $params, $newId=0, $actionCommentIRC= '')
static notifyEdit ($timestamp, &$title, $minor, &$user, $comment, $oldId, $lastTimestamp, $bot, $ip= '', $oldSize=0, $newSize=0, $newId=0, $patrol=0)
 Makes an entry in the database corresponding to an edit.
static notifyLog ($timestamp, &$title, &$user, $actionComment, $ip, $type, $action, $target, $logComment, $params, $newId=0, $actionCommentIRC= '')
static notifyNew ($timestamp, &$title, $minor, &$user, $comment, $bot, $ip= '', $size=0, $newId=0, $patrol=0)
 Makes an entry in the database corresponding to page creation Note: the title object must be loaded with the new id using resetArticleID()
static selectFields ()
 Return the list of recentchanges fields that should be selected to create a new recentchanges object.
static sendToUDP ($line, $address= '', $prefix= '', $port= '')
 Send some text to UDP.

Public Attributes

 $mAttribs = array()
 $mExtra = array()
Title $mMovedToTitle = false
Title $mTitle = false
 $notificationtimestamp
 $numberofWatchingusers = 0

Static Private Member Functions

static checkIPAddress ($ip)

Private Attributes

User $mPerformer = false

Detailed Description

Utility class for creating new RC entries.

mAttribs: rc_id id of the row in the recentchanges table rc_timestamp time the entry was made rc_cur_time timestamp on the cur row rc_namespace namespace # rc_title non-prefixed db key rc_type is new entry, used to determine whether updating is necessary rc_minor is minor rc_cur_id page_id of associated page entry rc_user user id who made the entry rc_user_text user name who made the entry rc_comment edit summary rc_this_oldid rev_id associated with this entry (or zero) rc_last_oldid rev_id associated with the entry before this one (or zero) rc_bot is bot, hidden rc_ip IP address of the user in dotted quad notation rc_new obsolete, use rc_type==RC_NEW rc_patrolled boolean whether or not someone has marked this edit as patrolled rc_old_len integer byte length of the text before the edit rc_new_len the same after the edit rc_deleted partial deletion rc_logid the log_id value for this log entry (or zero) rc_log_type the log type (or null) rc_log_action the log action (or null) rc_params log params

mExtra: prefixedDBkey prefixed db key, used by external app via msg queue lastTimestamp timestamp of previous entry, used in WHERE clause during update lang the interwiki prefix, automatically set in save() oldSize text size before the change newSize text size after the change

temporary: not stored in the database notificationtimestamp numberofWatchingusers

Todo:
document functions and variables

Definition at line 65 of file RecentChange.php.


Member Function Documentation

static RecentChange::checkIPAddress ( ip) [static, private]

Definition at line 796 of file RecentChange.php.

static RecentChange::cleanupForIRC ( text) [static]

Remove newlines, carriage returns and decode html entites.

Parameters:
$textString
Returns:
String

Definition at line 322 of file RecentChange.php.

Referenced by RecentChangeTest\assertIRCComment().

RecentChange::diffLinkTrail ( forceCur)

Gets the end part of the diff URL associated with this object Blank if no diff link should be displayed.

Parameters:
$forceCur
Returns:
string

Definition at line 678 of file RecentChange.php.

RecentChange::doMarkPatrolled ( User user,
auto = false 
)

Mark this RecentChange as patrolled.

NOTE: Can also return 'rcpatroldisabled', 'hookaborted' and 'markedaspatrollederror-noautopatrol' as errors

Parameters:
$userUser object doing the action
$autoBoolean: for automatic patrol
Returns:
array of permissions errors, see Title::getUserPermissionsErrors()

Definition at line 354 of file RecentChange.php.

Get an attribute value.

Parameters:
$nameString Attribute name
Returns:
mixed

Definition at line 661 of file RecentChange.php.

Returns:
array

Definition at line 668 of file RecentChange.php.

RecentChange::getCharacterDifference ( old = 0,
new = 0 
)

Returns the change size (HTML).

The lengths can be given optionally.

Parameters:
$oldint
$newint
Returns:
string

Definition at line 783 of file RecentChange.php.

Returns:
string

Definition at line 696 of file RecentChange.php.

Get the User object of the person who performed this change.

Returns:
User

Definition at line 201 of file RecentChange.php.

Returns:
Title

Definition at line 187 of file RecentChange.php.

Makes a pseudo-RC entry from a cur row.

Parameters:
$row

Definition at line 626 of file RecentChange.php.

Initialises the members of this object from a mysql row object.

Parameters:
$row

Definition at line 615 of file RecentChange.php.

static RecentChange::markPatrolled ( change,
auto = false 
) [static]

Mark a given change as patrolled.

Parameters:
$changeMixed: RecentChange or corresponding rc_id
$autoBoolean: for automatic patrol
Returns:
Array See doMarkPatrolled(), or null if $change is not an existing rc_id

Definition at line 333 of file RecentChange.php.

static RecentChange::newFromConds ( conds,
fname = __METHOD__ 
) [static]

Find the first recent change matching some specific conditions.

Parameters:
$condsArray of conditions
$fnameMixed: override the method name in profiling/logs
Returns:
RecentChange

Definition at line 123 of file RecentChange.php.

static RecentChange::newFromCurRow ( row) [static]
Parameters:
$row
Returns:
RecentChange

Definition at line 98 of file RecentChange.php.

static RecentChange::newFromId ( rcid) [static]

Obtain the recent change with a given rc_id value.

Parameters:
$rcidInt rc_id value to retrieve
Returns:
RecentChange

Definition at line 112 of file RecentChange.php.

Referenced by MarkpatrolledAction\onView(), and PatrolLog\record().

static RecentChange::newFromRow ( row) [static]
static RecentChange::newLogEntry ( timestamp,
&$  title,
&$  user,
actionComment,
ip,
type,
action,
target,
logComment,
params,
newId = 0,
actionCommentIRC = '' 
) [static]
Parameters:
$timestamp
$titleTitle
$userUser
$actionComment
$ipstring
$type
$action
$targetTitle
$logComment
$params
$newIdint
$actionCommentIRCstring
Returns:
RecentChange

Definition at line 568 of file RecentChange.php.

Referenced by ManualLogEntry\publish().

static RecentChange::notifyEdit ( timestamp,
&$  title,
minor,
&$  user,
comment,
oldId,
lastTimestamp,
bot,
ip = '',
oldSize = 0,
newSize = 0,
newId = 0,
patrol = 0 
) [static]

Makes an entry in the database corresponding to an edit.

Parameters:
$timestamp
$titleTitle
$minor
$userUser
$comment
$oldId
$lastTimestamp
$bot
$ipstring
$oldSizeint
$newSizeint
$newIdint
$patrolint
Returns:
RecentChange

Definition at line 425 of file RecentChange.php.

static RecentChange::notifyLog ( timestamp,
&$  title,
&$  user,
actionComment,
ip,
type,
action,
target,
logComment,
params,
newId = 0,
actionCommentIRC = '' 
) [static]
Parameters:
$timestamp
$title
$user
$actionComment
$ipstring
$type
$action
$target
$logComment
$params
$newIdint
$actionCommentIRCstring
Returns:
bool

Definition at line 539 of file RecentChange.php.

static RecentChange::notifyNew ( timestamp,
&$  title,
minor,
&$  user,
comment,
bot,
ip = '',
size = 0,
newId = 0,
patrol = 0 
) [static]

Makes an entry in the database corresponding to page creation Note: the title object must be loaded with the new id using resetArticleID()

Todo:
Document parameters and return
Parameters:
$timestamp
$titleTitle
$minor
$userUser
$comment
$bot
$ipstring
$sizeint
$newIdint
$patrolint
Returns:
RecentChange

Definition at line 483 of file RecentChange.php.

Definition at line 278 of file RecentChange.php.

Mark this RecentChange patrolled, without error checking.

Returns:
Integer: number of affected rows

Definition at line 392 of file RecentChange.php.

RecentChange::save ( noudp = false)

Writes the data in this object to the database.

Parameters:
$noudpbool

Definition at line 216 of file RecentChange.php.

static RecentChange::selectFields ( ) [static]

Return the list of recentchanges fields that should be selected to create a new recentchanges object.

Returns:
array

Definition at line 138 of file RecentChange.php.

Referenced by SpecialRecentchangeslinked\doMainQuery(), SpecialRecentChanges\doMainQuery(), and SpecialWatchlist\execute().

static RecentChange::sendToUDP ( line,
address = '',
prefix = '',
port = '' 
) [static]

Send some text to UDP.

See also:
RecentChange::cleanupForIRC
Parameters:
$lineString: text to send
$addressString: defaults to $wgRC2UDPAddress.
$prefixString: defaults to $wgRC2UDPPrefix.
$portInt: defaults to $wgRC2UDPPort. (Since 1.17)
Returns:
Boolean: success

Definition at line 295 of file RecentChange.php.

RecentChange::setAttribs ( attribs)
Parameters:
$attribsarray

Definition at line 172 of file RecentChange.php.

RecentChange::setExtra ( extra)
Parameters:
$extraarray

Definition at line 179 of file RecentChange.php.


Member Data Documentation

RecentChange::$mAttribs = array()

Definition at line 66 of file RecentChange.php.

RecentChange::$mExtra = array()

Definition at line 66 of file RecentChange.php.

Title RecentChange::$mMovedToTitle = false

Definition at line 78 of file RecentChange.php.

User RecentChange::$mPerformer = false [private]

Definition at line 74 of file RecentChange.php.

Title RecentChange::$mTitle = false

Definition at line 70 of file RecentChange.php.

RecentChange::$notificationtimestamp

Definition at line 80 of file RecentChange.php.

RecentChange::$numberofWatchingusers = 0

Definition at line 79 of file RecentChange.php.


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