http://www.mediawiki.org/wiki/Special:Code/MediaWiki/97582

Revision: 97582
Author:   nimishg
Date:     2011-09-20 00:05:56 +0000 (Tue, 20 Sep 2011)
Log Message:
-----------
Adding EditorsByGeography and MobilePageViews metrics

Modified Paths:
--------------
    trunk/wikistats/MetricsReporting/MetricsReporting.php

Added Paths:
-----------
    trunk/wikistats/MetricsReporting/metrics/EditorsByGeographyMetric.php
    trunk/wikistats/MetricsReporting/metrics/MobilePageViewsMetric.php

Modified: trunk/wikistats/MetricsReporting/MetricsReporting.php
===================================================================
--- trunk/wikistats/MetricsReporting/MetricsReporting.php       2011-09-19 
23:59:53 UTC (rev 97581)
+++ trunk/wikistats/MetricsReporting/MetricsReporting.php       2011-09-20 
00:05:56 UTC (rev 97582)
@@ -1,107 +1,73 @@
 <?php
 
-$wgeAnalyticsFieldNames = array(
-       'select_regions' => "REGION",
-       'select_countries' => "COUNTRY",
-       'select_web_projects' => "WEBPROJ",
-       'select_wikis' => "WIKI",
-       'select_editors' => "EDITOR",
-       'select_edits' => "EDITS",
-       'select_platform' => "MOBILE",
-);
+if ( !defined( 'MEDIAWIKI' ) ) {
+       die();
+}
 
-$wgeAnalyticsFieldReturns = array(
-       'select_regions' => "region",
-       'select_countries' => "country",
-       'select_web_projects' => "web project",
-       'select_wikis' => "wiki",
-       'select_editors' => "editors",
-       'select_edits' => "edits",
-       'select_platform' => "mobile",
+define( 'METRICS_REPORTING_VERSION', 0.1 );
+
+$wgExtensionCredits['other'][] = array(
+       'path' => __FILE__,
+       'name' => 'MetricsReporting',
+       'url' => 'http://www.mediawiki.org/wiki/Extension:MetricsReporting',
+       'author' => 'Sam Reed',
+       'version' => METRICS_REPORTING_VERSION,
+       'description' => 'Api for Wikimedia Metrics Reporting output',
 );
 
+$wgMetricAPIModules = array();
 
-$wgeAnalyticsValidParams = array(
+$wgMetricsDBserver         = '';
+$wgMetricsDBname           = '';
+$wgMetricsDBuser           = '';
+$wgMetricsDBpassword       = '';
+$wgMetricsDBtype           = 'mysql';
+$wgMetricsDBprefix         = '';
 
-"select_regions" => array(
-       "AS" => "Asia Pacific",
-       "C" => "China",
-       "EU" => "Europe",
-       "I"  => "India",
-       "LA" => "Latin-America",
-       "MA" => "Middle-East/Africa",
-       "NA" => "North-America",
-       "US" => "United States",
-       "W" => "World",
-),
-// "select_countries" => array(),
-// "select_web_properties"=> array(),
-"select_projects" => array(
-       "wb" => "Wikibooks",
-       "wk" => "Wiktionary",
-       "wn" => "Wikinews",
-       "wp" => "Wikipedia",
-       "wq" => "Wikiquote",
-       "ws" => "Wikisource",
-       "wv" => "Wikiversity",
-       "co" => "Commons",
-       "wx" => "Other projects",
-),
-// "select_wikis"=> array(),
-"select_editors" => array(
-       "A" => "Anonymous",
-       "R" => "Registered User",
-       "B" => "Bot",
-),
-"select_edits" => array(
-       "M" => "Manual",
-       "B" => "Bot",
-),
-"select_platform" => array(
-       "M" => "Moblie",
-       "N" => "Non-Mobile",
-),
+$dir = dirname( __FILE__ ) . '/';
 
-);
+$wgAutoloadClasses['ApiAnalytics'] = $dir . 'ApiAnalytics.php';
+$wgAPIModules['analytics'] = 'ApiAnalytics';
 
-$dir = dirname( __FILE__ );
-$wgAutoloadClasses['ApiAnalytics'] = $dir . '/api/ApiAnalytics.php';
-$wgAutoloadClasses['ApiAnalyticsMetric'] = $dir . 
'/api/ApiAnalyticsMetric.php';
-$wgAutoloadClasses['MetricsReportingQuery'] = $dir . 
'/MetricsReportingQuery.php';
+$wgAutoloadClasses['ApiAnalyticsBase'] = $dir . 'ApiAnalyticsBase.php';
 
-$wgeAnalyticsMetricsList = array();
-$metricsdir = $dir . "/metrics";
-$dh = opendir( $metricsdir );
-while ( ( $file = readdir( $dh ) ) !== false ) {
-       if ( filetype( $metricsdir . "/" . $file ) == "file" ) {
-               $file_path_parts = pathinfo( $metricsdir . "/" . $file );
-               if ( $file_path_parts['extension'] == 'php' ) {
-                       
$wgAutoloadClasses["ApiAnalyticsMetric{$file_path_parts['filename']}"] = 
$metricsdir . "/" . $file;
-                       $wgeAnalyticsMetricsList[] = 
$file_path_parts['filename'];
-               }
-       }
-}
+$metricsDir = $dir . 'metrics/';
 
+$wgAutoloadClasses['GenericMetricBase'] = $metricsDir . 
'GenericMetricBase.php';
 
-$wgAPIModules['analytics'] = 'ApiAnalytics';
+$wgAutoloadClasses['ComScoreReachPercentageMetric'] = $metricsDir . 
'ComScoreReachPercentageMetric.php';
+$wgMetricAPIModules['comscorereachpercentage'] = 
'ComScoreReachPercentageMetric';
 
+$wgAutoloadClasses['ComScoreUniqueVisitorMetric'] = $metricsDir . 
'ComScoreUniqueVisitorMetric.php';
+$wgMetricAPIModules['comscoreuniquevisitors'] = 'ComScoreUniqueVisitorMetric';
 
+$wgAutoloadClasses['DumpActiveEditors100Metric'] = $metricsDir . 
'DumpActiveEditors100Metric.php';
+$wgMetricAPIModules['dumpactiveeditors100'] = 'DumpActiveEditors100Metric';
 
-function wfAnalyticsMetricConnection() {
-       global $wgeAnalyticsMetricDBserver, $wgeAnalyticsMetricDBname;
-       global $wgeAnalyticsMetricDBuser, $wgeAnalyticsMetricDBpassword;
+$wgAutoloadClasses['DumpActiveEditors5Metric'] = $metricsDir . 
'DumpActiveEditors5Metric.php';
+$wgMetricAPIModules['dumpactiveeditors5'] = 'DumpActiveEditors5Metric';
 
-       static $db;
+$wgAutoloadClasses['DumpArticleCountMetric'] = $metricsDir . 
'DumpArticleCountMetric.php';
+$wgMetricAPIModules['dumparticlecount'] = 'DumpArticleCountMetric';
 
-       if ( !$db ) {
-               $db = new DatabaseMysql(
-               $wgeAnalyticsMetricDBserver,
-               $wgeAnalyticsMetricDBuser,
-               $wgeAnalyticsMetricDBpassword,
-               $wgeAnalyticsMetricDBname );
-               $db->query( "SET names utf8" );
-       }
+$wgAutoloadClasses['DumpBinaryCountMetric'] = $metricsDir . 
'DumpBinaryCountMetric.php';
+$wgMetricAPIModules['dumpbinarycount'] = 'DumpBinaryCountMetric';
 
-       return $db;
-}
+$wgAutoloadClasses['DumpEditsMetric'] = $metricsDir . 'DumpEditsMetric.php';
+$wgMetricAPIModules['dumpedits'] = 'DumpEditsMetric';
 
+$wgAutoloadClasses['DumpNewRegisteredEditorsMetric'] = $metricsDir . 
'DumpNewRegisteredEditorsMetric.php';
+$wgMetricAPIModules['dumpnewregisterededitors'] = 
'DumpNewRegisteredEditorsMetric';
+
+$wgAutoloadClasses['EstimateOfflineMetric'] = $metricsDir . 
'EstimateOfflineMetric.php';
+$wgMetricAPIModules['estimateoffline'] = 'EstimateOfflineMetric';
+
+$wgAutoloadClasses['SquidPageViewsMetric'] = $metricsDir . 
'SquidPageViewsMetric.php';
+$wgMetricAPIModules['squidpageviews'] = 'SquidPageViewsMetric';
+
+$wgAutoloadClasses['EditorsByGeographyMetric'] = $metricsDir . 
'EditorsByGeographyMetric.php';
+$wgMetricAPIModules['editorsbygeography'] = 'EditorsByGeographyMetric';
+
+$wgAutoloadClasses['MobilePageViewsMetric'] = $metricsDir . 
'MobilePageViewsMetric.php';
+$wgMetricAPIModules['mobilepageviews'] = 'MobilePageViewsMetric';
+

Added: trunk/wikistats/MetricsReporting/metrics/EditorsByGeographyMetric.php
===================================================================
--- trunk/wikistats/MetricsReporting/metrics/EditorsByGeographyMetric.php       
                        (rev 0)
+++ trunk/wikistats/MetricsReporting/metrics/EditorsByGeographyMetric.php       
2011-09-20 00:05:56 UTC (rev 97582)
@@ -0,0 +1,17 @@
+<?php
+
+/**
+ *
+ */
+class EditorsByGeographyMetric extends GenericMetricBase {
+
+       protected $tableName = 'editorsbygeography';
+
+       public function getDescription() {
+               return "Number of active unique registered editors by country";
+       }
+
+       protected function getExamples() {
+               return "";
+       }
+}


Property changes on: 
trunk/wikistats/MetricsReporting/metrics/EditorsByGeographyMetric.php
___________________________________________________________________
Added: svn:eol-style
   + native

Added: trunk/wikistats/MetricsReporting/metrics/MobilePageViewsMetric.php
===================================================================
--- trunk/wikistats/MetricsReporting/metrics/MobilePageViewsMetric.php          
                (rev 0)
+++ trunk/wikistats/MetricsReporting/metrics/MobilePageViewsMetric.php  
2011-09-20 00:05:56 UTC (rev 97582)
@@ -0,0 +1,17 @@
+<?php
+
+/**
+ *
+ */
+class MobilePageViewsMetric extends GenericMetricBase {
+
+       protected $tableName = 'mobilepageviews';
+
+       public function getDescription() {
+               return "Number of mobile page views";
+       }
+
+       protected function getExamples() {
+               return "";
+       }
+}


Property changes on: 
trunk/wikistats/MetricsReporting/metrics/MobilePageViewsMetric.php
___________________________________________________________________
Added: svn:eol-style
   + native


_______________________________________________
MediaWiki-CVS mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-cvs

Reply via email to