https://www.mediawiki.org/wiki/Special:Code/MediaWiki/113667
Revision: 113667
Author: bsitu
Date: 2012-03-12 21:14:57 +0000 (Mon, 12 Mar 2012)
Log Message:
-----------
followup to -r113451 - add documentation, pagetriage tags and fix data
compilation queries
Modified Paths:
--------------
trunk/extensions/PageTriage/includes/ArticleMetadata.php
trunk/extensions/PageTriage/sql/PageTriageTags.sql
Modified: trunk/extensions/PageTriage/includes/ArticleMetadata.php
===================================================================
--- trunk/extensions/PageTriage/includes/ArticleMetadata.php 2012-03-12
20:59:32 UTC (rev 113666)
+++ trunk/extensions/PageTriage/includes/ArticleMetadata.php 2012-03-12
21:14:57 UTC (rev 113667)
@@ -70,6 +70,8 @@
/**
* Set the metadata to cache
+ * @param $pageId int - page id
+ * @param $singleData mixed - data to be saved
*/
protected function setMetadataToCache( $pageId, $singleData ) {
global $wgMemc;
@@ -257,16 +259,18 @@
/**
* Compile article basic data like title, number of bytes
+ * @param $metaData array
*/
protected function compileArticleBasicData( &$metaData ) {
global $wgLang;
$dbr = wfGetDB( DB_SLAVE );
+ // Article page length, creation date, number of edit, title,
article triage status
$res = $dbr->select(
- array( 'page', 'revision' ),
- array( 'page_id', 'page_namespace',
'page_title', 'page_len', 'COUNT(rev_id) AS rev_count', 'MIN(rev_timestamp) AS
creation_date' ),
- array( 'page_id' => $this->mPageId, 'page_id =
rev_page'),
+ array( 'page', 'revision', 'pagetriage_page' ),
+ array( 'page_id', 'page_namespace',
'page_title', 'page_len', 'COUNT(rev_id) AS rev_count', 'MIN(rev_timestamp) AS
creation_date', 'ptrp_triaged' ),
+ array( 'page_id' => $this->mPageId, 'page_id =
rev_page', 'page_id = ptrp_page_id'),
__METHOD__,
array ( 'GROUP BY' => 'page_id' )
);
@@ -276,6 +280,7 @@
$metaData[$row->page_id]['creation_date'] =
$row->creation_date;
$metaData[$row->page_id]['rev_count'] = $row->rev_count;
$metaData[$row->page_id]['title'] =
$title->getPrefixedText();
+ $metaData[$row->page_id]['patrol_status'] =
$row->ptrp_triaged;
}
// Remove any non-existing page_id from $this->mPageId
foreach ( $this->mPageId as $key => $pageId ) {
@@ -287,6 +292,7 @@
return false;
}
+ // Article link count
$res = $dbr->select(
array( 'page', 'pagelinks' ),
array( 'page_id', 'COUNT(pl_from) AS linkcount'
),
@@ -298,11 +304,12 @@
$metaData[$row->page_id]['linkcount'] = $row->linkcount;
}
foreach ( $this->mPageId as $pageId ) {
- if ( !isset( $metaData[$row->page_id]['linkcount'] ) ) {
- $metaData[$row->page_id]['linkcount'] = '0';
+ if ( !isset( $metaData[$pageId]['linkcount'] ) ) {
+ $metaData[$pageId]['linkcount'] = '0';
}
}
+ // Article category count
$res = $dbr->select(
array( 'page', 'categorylinks' ),
array( 'page_id', 'COUNT(cl_to) AS
category_count' ),
@@ -319,18 +326,15 @@
}
}
+ // Article snippet
$res = $dbr->select(
- array( 'text', 'revision', 'page',
'pagetriage_page' ),
- array( 'page_id', 'old_text', 'ptrp_triaged' ),
- array( 'page_id' => $this->mPageId, 'page_id =
rev_page', 'rev_text_id = old_id' ),
- __METHOD__,
- array(),
- array( 'pagetriage_page' => array( 'LEFT JOIN',
'page_id = ptrp_page_id' ) )
+ array( 'text', 'revision', 'page' ),
+ array( 'page_id', 'old_text' ),
+ array( 'page_id' => $this->mPageId,
'page_latest = rev_id', 'rev_text_id = old_id' ),
+ __METHOD__
);
-
foreach ( $res as $row ) {
$metaData[$row->page_id]['snippet'] =
$wgLang->truncate( $row->old_text, 150 );
- $metaData[$row->page_id]['patrol_status'] =
$row->ptrp_triaged ? $row->ptrp_triaged : '0';
}
return true;
@@ -371,6 +375,7 @@
$metaData[$row->page_id]['user_editcount'] =
$user->getEditCount();
$metaData[$row->page_id]['user_creation_date'] =
wfTimestamp( TS_MW, $user->getRegistration() );
$metaData[$row->page_id]['user_autoconfirmed'] =
$user->isAllowed( 'autoconfirmed' );
+ $metaData[$row->page_id]['user_bot'] =
$user->isAllowed( 'bot' );
$metaData[$row->page_id]['user_block_status'] =
$user->isBlocked() ? '1' : '0';
}
}
Modified: trunk/extensions/PageTriage/sql/PageTriageTags.sql
===================================================================
--- trunk/extensions/PageTriage/sql/PageTriageTags.sql 2012-03-12 20:59:32 UTC
(rev 113666)
+++ trunk/extensions/PageTriage/sql/PageTriageTags.sql 2012-03-12 21:14:57 UTC
(rev 113667)
@@ -25,4 +25,5 @@
('user_editcount', 'User total edit'),
('user_creation_date', 'User registration date'),
('user_autoconfirmed', 'Check if user is autoconfirmed' ),
+('user_bot', 'Check if user is in bot group'),
('user_block_status', 'User block status');
_______________________________________________
MediaWiki-CVS mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-cvs