X-Git-Url: https://git.heureux-cyclage.org/?a=blobdiff_plain;f=maintenance%2Frebuildrecentchanges.php;h=f4b0505e8bbaabd7055d5807b287db40940d58d1;hb=e055d8abcd587b2f9316490892ffb0046d3db94d;hp=2a9bb4fc61194173e5224f729eb20e91b519eb0f;hpb=5df5a5b4a8ce61cda82af3c636a9b1f3016e6464;p=lhc%2Fweb%2Fwiklou.git diff --git a/maintenance/rebuildrecentchanges.php b/maintenance/rebuildrecentchanges.php index 2a9bb4fc61..f4b0505e8b 100644 --- a/maintenance/rebuildrecentchanges.php +++ b/maintenance/rebuildrecentchanges.php @@ -69,25 +69,31 @@ class RebuildRecentchanges extends Maintenance { $cutoff = time() - $wgRCMaxAge; $dbw->insertSelect( 'recentchanges', array( 'page', 'revision' ), array( - 'rc_timestamp' => 'rev_timestamp', - 'rc_user' => 'rev_user', - 'rc_user_text' => 'rev_user_text', - 'rc_namespace' => 'page_namespace', - 'rc_title' => 'page_title', - 'rc_comment' => 'rev_comment', - 'rc_minor' => 'rev_minor_edit', - 'rc_bot' => 0, - 'rc_new' => 'page_is_new', - 'rc_cur_id' => 'page_id', + 'rc_timestamp' => 'rev_timestamp', + 'rc_user' => 'rev_user', + 'rc_user_text' => 'rev_user_text', + 'rc_namespace' => 'page_namespace', + 'rc_title' => 'page_title', + 'rc_comment' => 'rev_comment', + 'rc_minor' => 'rev_minor_edit', + 'rc_bot' => 0, + 'rc_new' => 'page_is_new', + 'rc_cur_id' => 'page_id', 'rc_this_oldid' => 'rev_id', 'rc_last_oldid' => 0, // is this ok? - 'rc_type' => $dbw->conditional( 'page_is_new != 0', RC_NEW, RC_EDIT ), - 'rc_source' => $dbw->conditional( 'page_is_new != 0', $dbw->addQuotes( RecentChange::SRC_NEW ), $dbw->addQuotes( RecentChange::SRC_EDIT ) ), - 'rc_deleted' => 'rev_deleted' - ), array( + 'rc_type' => $dbw->conditional( 'page_is_new != 0', RC_NEW, RC_EDIT ), + 'rc_source' => $dbw->conditional( + 'page_is_new != 0', + $dbw->addQuotes( RecentChange::SRC_NEW ), + $dbw->addQuotes( RecentChange::SRC_EDIT ) + ), + 'rc_deleted' => 'rev_deleted' + ), + array( 'rev_timestamp > ' . $dbw->addQuotes( $dbw->timestamp( $cutoff ) ), 'rev_page=page_id' - ), __METHOD__, + ), + __METHOD__, array(), // INSERT options array( 'ORDER BY' => 'rev_timestamp DESC', 'LIMIT' => 5000 ) // SELECT options ); @@ -173,42 +179,42 @@ class RebuildRecentchanges extends Maintenance { // Some logs don't go in RC. This should check for that $basicRCLogs = array_diff( $wgLogTypes, array_keys( $wgLogRestrictions ) ); - // Escape...blah blah - $selectLogs = array(); - foreach ( $basicRCLogs as $logtype ) { - $safetype = $dbw->strencode( $logtype ); - $selectLogs[] = "'$safetype'"; - } - $cutoff = time() - $wgRCMaxAge; list( $logging, $page ) = $dbw->tableNamesN( 'logging', 'page' ); - $dbw->insertSelect( 'recentchanges', array( 'user', "$logging LEFT JOIN $page ON (log_namespace=page_namespace AND log_title=page_title)" ), + $dbw->insertSelect( + 'recentchanges', array( - 'rc_timestamp' => 'log_timestamp', - 'rc_user' => 'log_user', - 'rc_user_text' => 'user_name', - 'rc_namespace' => 'log_namespace', - 'rc_title' => 'log_title', - 'rc_comment' => 'log_comment', - 'rc_minor' => 0, - 'rc_bot' => 0, - 'rc_patrolled' => 1, - 'rc_new' => 0, + 'user', + "$logging LEFT JOIN $page ON (log_namespace=page_namespace AND log_title=page_title)" + ), + array( + 'rc_timestamp' => 'log_timestamp', + 'rc_user' => 'log_user', + 'rc_user_text' => 'user_name', + 'rc_namespace' => 'log_namespace', + 'rc_title' => 'log_title', + 'rc_comment' => 'log_comment', + 'rc_minor' => 0, + 'rc_bot' => 0, + 'rc_patrolled' => 1, + 'rc_new' => 0, 'rc_this_oldid' => 0, 'rc_last_oldid' => 0, - 'rc_type' => RC_LOG, - 'rc_source' => $dbw->addQuotes( RecentChange::SRC_LOG ), - 'rc_cur_id' => $dbw->cascadingDeletes() ? 'page_id' : 'COALESCE(page_id, 0)', - 'rc_log_type' => 'log_type', + 'rc_type' => RC_LOG, + 'rc_source' => $dbw->addQuotes( RecentChange::SRC_LOG ), + 'rc_cur_id' => $dbw->cascadingDeletes() ? 'page_id' : 'COALESCE(page_id, 0)', + 'rc_log_type' => 'log_type', 'rc_log_action' => 'log_action', - 'rc_logid' => 'log_id', - 'rc_params' => 'log_params', - 'rc_deleted' => 'log_deleted' - ), array( + 'rc_logid' => 'log_id', + 'rc_params' => 'log_params', + 'rc_deleted' => 'log_deleted' + ), + array( 'log_timestamp > ' . $dbw->addQuotes( $dbw->timestamp( $cutoff ) ), 'log_user=user_id', - 'log_type IN(' . implode( ',', $selectLogs ) . ')' - ), __METHOD__, + 'log_type' => $basicRCLogs, + ), + __METHOD__, array(), // INSERT options array( 'ORDER BY' => 'log_timestamp DESC', 'LIMIT' => 5000 ) // SELECT options ); @@ -223,7 +229,8 @@ class RebuildRecentchanges extends Maintenance { $dbw = wfGetDB( DB_MASTER ); - list( $recentchanges, $usergroups, $user ) = $dbw->tableNamesN( 'recentchanges', 'user_groups', 'user' ); + list( $recentchanges, $usergroups, $user ) = + $dbw->tableNamesN( 'recentchanges', 'user_groups', 'user' ); $botgroups = User::getGroupsWithPermission( 'bot' ); $autopatrolgroups = $wgUseRCPatrol ? User::getGroupsWithPermission( 'autopatrol' ) : array(); @@ -289,7 +296,6 @@ class RebuildRecentchanges extends Maintenance { $messageMemc->delete( wfMemcKey( 'rcfeed', $feed, 'timestamp' ) ); # Good enough for now. } } - } $maintClass = "RebuildRecentchanges";