* Using a white background instead of a gray one
[lhc/web/wiklou.git] / includes / SpecialStatistics.php
1 <?php
2 /**
3 *
4 * @package MediaWiki
5 * @subpackage SpecialPage
6 */
7
8 /**
9 * constructor
10 */
11 function wfSpecialStatistics() {
12 global $wgUser, $wgOut, $wgLang;
13 $fname = 'wfSpecialStatistics';
14
15 $dbr =& wfGetDB( DB_SLAVE );
16 extract( $dbr->tableNames( 'page', 'site_stats', 'user', 'user_rights' ) );
17
18 $sql = "SELECT COUNT(page_namespace) AS total FROM $page";
19 $res = $dbr->query( $sql, $fname );
20 $row = $dbr->fetchObject( $res );
21 $total = $row->total;
22
23 $sql = "SELECT ss_total_views, ss_total_edits, ss_good_articles " .
24 "FROM $site_stats WHERE ss_row_id=1";
25 $res = $dbr->query( $sql, $fname );
26 $row = $dbr->fetchObject( $res );
27 $views = $row->ss_total_views;
28 $edits = $row->ss_total_edits;
29 $good = $row->ss_good_articles;
30
31 $text = '==' . wfMsg( 'sitestats' ) . "==\n" ;
32 $text .= wfMsg( 'sitestatstext',
33 $wgLang->formatNum( $total ),
34 $wgLang->formatNum( $good ),
35 $wgLang->formatNum( $views ),
36 $wgLang->formatNum( $edits ),
37 $wgLang->formatNum( sprintf( '%.2f', $total ? $edits / $total : 0 ) ),
38 $wgLang->formatNum( sprintf( '%.2f', $edits ? $views / $edits : 0 ) ) );
39
40 $text .= "\n==" . wfMsg( 'userstats' ) . "==\n";
41
42 $sql = "SELECT COUNT(user_id) AS total FROM $user";
43 $res = $dbr->query( $sql, $fname );
44 $row = $dbr->fetchObject( $res );
45 $total = $row->total;
46
47 $sql = "SELECT COUNT(ur_user) AS total FROM $user_rights WHERE ur_rights LIKE '%sysop%'";
48 $res = $dbr->query( $sql, $fname );
49 $row = $dbr->fetchObject( $res );
50 $admins = $row->total;
51
52 $sk = $wgUser->getSkin();
53 $ap = '[[' . wfMsg( 'administrators' ) . ']]';
54
55 $text .= wfMsg( 'userstatstext',
56 $wgLang->formatNum( $total ),
57 $wgLang->formatNum( $admins ), $ap );
58 $wgOut->addWikiText( $text );
59 }
60 ?>