MediaWiki
REL1_19
|
00001 <?php 00002 00010 class PatrolLog { 00011 00020 public static function record( $rc, $auto = false ) { 00021 if ( !$rc instanceof RecentChange ) { 00022 $rc = RecentChange::newFromId( $rc ); 00023 if ( !is_object( $rc ) ) { 00024 return false; 00025 } 00026 } 00027 00028 $title = Title::makeTitleSafe( $rc->getAttribute( 'rc_namespace' ), $rc->getAttribute( 'rc_title' ) ); 00029 if( $title ) { 00030 $entry = new ManualLogEntry( 'patrol', 'patrol' ); 00031 $entry->setTarget( $title ); 00032 $entry->setParameters( self::buildParams( $rc, $auto ) ); 00033 $entry->setPerformer( User::newFromName( $rc->getAttribute( 'rc_user_text' ), false ) ); 00034 $logid = $entry->insert(); 00035 if ( !$auto ) { 00036 $entry->publish( $logid, 'udp' ); 00037 } 00038 return true; 00039 } 00040 return false; 00041 } 00042 00050 private static function buildParams( $change, $auto ) { 00051 return array( 00052 '4::curid' => $change->getAttribute( 'rc_this_oldid' ), 00053 '5::previd' => $change->getAttribute( 'rc_last_oldid' ), 00054 '6::auto' => (int)$auto 00055 ); 00056 } 00057 00058 }