900956b6398da93d1f3c11a7ee29ddcd91a4b0ba
[lhc/web/wiklou.git] / includes / SiteStatsUpdate.php
1 <?php
2 # $Id$
3 # See deferred.doc
4
5 class SiteStatsUpdate {
6
7 var $mViews, $mEdits, $mGood;
8
9 function SiteStatsUpdate( $views, $edits, $good )
10 {
11 $this->mViews = $views;
12 $this->mEdits = $edits;
13 $this->mGood = $good;
14 }
15
16 function doUpdate()
17 {
18 global $wgIsMySQL;
19 $a = array();
20
21 if ( $this->mViews < 0 ) { $m = "-1"; }
22 else if ( $this->mViews > 0 ) { $m = "+1"; }
23 else $m = "";
24 array_push( $a, "ss_total_views=(ss_total_views$m)" );
25
26 if ( $this->mEdits < 0 ) { $m = "-1"; }
27 else if ( $this->mEdits > 0 ) { $m = "+1"; }
28 else $m = "";
29 array_push( $a, "ss_total_edits=(ss_total_edits$m)" );
30
31 if ( $this->mGood < 0 ) { $m = "-1"; }
32 else if ( $this->mGood > 0 ) { $m = "+1"; }
33 else $m = "";
34 array_push( $a, "ss_good_articles=(ss_good_articles$m)" );
35 $lowpri=$wgIsMySQL?"LOW_PRIORITY":"";
36 $sql = "UPDATE $lowpri site_stats SET " . implode ( ",", $a ) .
37 " WHERE ss_row_id=1";
38 wfQuery( $sql, DB_WRITE, "SiteStatsUpdate::doUpdate" );
39 }
40 }
41
42 ?>