2004-02-18 02:15:00 +00:00
|
|
|
<?php
|
2004-06-09 16:15:25 +00:00
|
|
|
# $Id$
|
2004-09-02 23:28:24 +00:00
|
|
|
/**
|
|
|
|
|
* See deferred.doc
|
|
|
|
|
*/
|
2003-04-14 23:10:40 +00:00
|
|
|
|
2004-09-02 23:28:24 +00:00
|
|
|
/**
|
|
|
|
|
*
|
|
|
|
|
*/
|
2003-04-14 23:10:40 +00:00
|
|
|
class SiteStatsUpdate {
|
|
|
|
|
|
|
|
|
|
var $mViews, $mEdits, $mGood;
|
|
|
|
|
|
2004-09-02 23:28:24 +00:00
|
|
|
function SiteStatsUpdate( $views, $edits, $good ) {
|
2003-04-14 23:10:40 +00:00
|
|
|
$this->mViews = $views;
|
|
|
|
|
$this->mEdits = $edits;
|
|
|
|
|
$this->mGood = $good;
|
|
|
|
|
}
|
|
|
|
|
|
2004-09-02 23:28:24 +00:00
|
|
|
function doUpdate() {
|
2003-04-14 23:10:40 +00:00
|
|
|
$a = array();
|
|
|
|
|
|
2004-08-22 17:24:50 +00:00
|
|
|
if ( $this->mViews < 0 ) { $m = '-1'; }
|
|
|
|
|
else if ( $this->mViews > 0 ) { $m = '+1'; }
|
|
|
|
|
else $m = '';
|
2003-04-14 23:10:40 +00:00
|
|
|
array_push( $a, "ss_total_views=(ss_total_views$m)" );
|
|
|
|
|
|
2004-08-22 17:24:50 +00:00
|
|
|
if ( $this->mEdits < 0 ) { $m = '-1'; }
|
|
|
|
|
else if ( $this->mEdits > 0 ) { $m = '+1'; }
|
|
|
|
|
else $m = '';
|
2003-04-14 23:10:40 +00:00
|
|
|
array_push( $a, "ss_total_edits=(ss_total_edits$m)" );
|
|
|
|
|
|
2004-08-22 17:24:50 +00:00
|
|
|
if ( $this->mGood < 0 ) { $m = '-1'; }
|
|
|
|
|
else if ( $this->mGood > 0 ) { $m = '+1'; }
|
|
|
|
|
else $m = '';
|
2003-04-14 23:10:40 +00:00
|
|
|
array_push( $a, "ss_good_articles=(ss_good_articles$m)" );
|
2004-07-10 03:09:26 +00:00
|
|
|
|
2004-07-18 08:48:43 +00:00
|
|
|
$db =& wfGetDB( DB_MASTER );
|
|
|
|
|
$site_stats = $db->tableName( 'site_stats' );
|
2004-07-10 03:09:26 +00:00
|
|
|
$lowpri = $db->lowPriorityOption();
|
2004-07-18 08:48:43 +00:00
|
|
|
|
2004-08-22 17:24:50 +00:00
|
|
|
$sql = "UPDATE $lowpri $site_stats SET " . implode ( ',', $a ) .
|
|
|
|
|
' WHERE ss_row_id=1';
|
|
|
|
|
$db->query( $sql, 'SiteStatsUpdate::doUpdate' );
|
2003-04-14 23:10:40 +00:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
?>
|