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

Revision: 73184
Author:   tparscal
Date:     2010-09-16 23:52:28 +0000 (Thu, 16 Sep 2010)

Log Message:
-----------
Removed unnessecary dependency on UsabilityInitiative.php. Refactored a bit, 
mostly just naming things nicer and adding comments.

Modified Paths:
--------------
    
trunk/extensions/UsabilityInitiative/UserDailyContribs/UserDailyContribs.hooks.php
    trunk/extensions/UsabilityInitiative/UserDailyContribs/UserDailyContribs.php
    trunk/extensions/UsabilityInitiative/UserDailyContribs/UserDailyContribs.sql

Modified: 
trunk/extensions/UsabilityInitiative/UserDailyContribs/UserDailyContribs.hooks.php
===================================================================
--- 
trunk/extensions/UsabilityInitiative/UserDailyContribs/UserDailyContribs.hooks.php
  2010-09-16 23:50:09 UTC (rev 73183)
+++ 
trunk/extensions/UsabilityInitiative/UserDailyContribs/UserDailyContribs.hooks.php
  2010-09-16 23:52:28 UTC (rev 73184)
@@ -1,7 +1,6 @@
 <?php
-
 /**
- * Hooks for Usability Initiative UserDailyContribs extension
+ * Hooks for UserDailyContribs extension
  *
  * @file
  * @ingroup Extensions
@@ -9,19 +8,21 @@
 
 class UserDailyContribsHooks {
        
-       public static function schema() {
+       /* Static Methods */
+       
+       /**
+        * LoadExtensionSchemaUpdates hook
+        */
+       public static function loadExtensionSchemaUpdates() {
                global $wgExtNewTables;
-
-               $wgExtNewTables[] = array(
-                       'user_daily_contribs',
-                       dirname( __FILE__ ) . '/UserDailyContribs.sql'
-               );
-
+               
+               $wgExtNewTables[] = array( 'user_daily_contribs', dirname( 
__FILE__ ) . '/UserDailyContribs.sql' );
                return true;
        }
        
        /**
-        * Hook for making sure parser tests pass
+        * ParserTestTables hook
+        * 
         * @param $tables
         * @return unknown_type
         */
@@ -31,23 +32,30 @@
        }
        
        /**
+        * ArticleSaveComplete hook
+        * 
         * Stores a new contribution
+        * 
         * @return true
         */
-       public static function storeNewContrib(){
+       public static function articleSaveComplete(){
                global $wgUser;
+               
                $today = gmdate( 'Ymd', time() );
                $dbw = wfGetDB( DB_MASTER );
-               
-               $dbw->update( 'user_daily_contribs', array( 
'contribs=contribs+1' ), 
-                                  array( 'day' => $today, 'user_id' => 
$wgUser->getId() ),
-                                          __METHOD__ );
-               
-               if($dbw->affectedRows() == 0){
-                       $dbw->insert("user_daily_contribs", array("user_id" => 
$wgUser->getId(), "day" => $today, "contribs" => 1), __METHOD__);        
+               $dbw->update(
+                       'user_daily_contribs',
+                       array( 'contribs=contribs+1' ), 
+               array( 'day' => $today, 'user_id' => $wgUser->getId() ),
+                       __METHOD__
+               );
+               if ( $dbw->affectedRows() == 0 ){
+                       $dbw->insert(
+                               'user_daily_contribs',
+                               array( 'user_id' => $wgUser->getId(), 'day' => 
$today, 'contribs' => 1 ),
+                               __METHOD__
+                       );      
                }
-       
                return true;
        }
-       
 }
\ No newline at end of file

Modified: 
trunk/extensions/UsabilityInitiative/UserDailyContribs/UserDailyContribs.php
===================================================================
--- 
trunk/extensions/UsabilityInitiative/UserDailyContribs/UserDailyContribs.php    
    2010-09-16 23:50:09 UTC (rev 73183)
+++ 
trunk/extensions/UsabilityInitiative/UserDailyContribs/UserDailyContribs.php    
    2010-09-16 23:52:28 UTC (rev 73184)
@@ -1,44 +1,30 @@
 <?php
 /**
- * Usability Initiative User Daily Contributions (for Click Tracking) extension
- *
+ * User Daily Contributions extension
+ * 
+ * This extension adds a step to saving an article that incriments a counter 
for a user's activity in a given day.
+ * 
  * @file
  * @ingroup Extensions
- *
- * This file contains the include file for the User Daily Contributions table 
in the
- * UsabilityInitiative extension of MediaWiki.
- *
- * Usage: Include the following line in your LocalSettings.php
- * require_once( 
"$IP/extensions/UsabilityInitiative/UserDailyContribs/UserDailyContribs.php" );
- *
+ * 
  * @author Nimish Gautam <[email protected]>
+ * @author Trevor Parscal <[email protected]>
  * @license GPL v2 or later
- * @version 0.1.1
+ * @version 0.2.0
  */
 
-/* Configuration */
- 
-// Credits
+/* Setup */
+
 $wgExtensionCredits['other'][] = array(
        'path' => __FILE__,
        'name' => 'User Daily Contributions',
-       'author' => 'Nimish Gautam',
-       'version' => '0.1.1',
+       'author' => array( 'Nimish Gautam', 'Trevor Parscal' ),
+       'version' => '0.2.0',
        'url' => 'http://www.mediawiki.org/wiki/Extension:UsabilityInitiative',
        'descriptionmsg' => 'userdailycontribs-desc',
 );
-
-// Includes parent extension
-require_once( dirname( dirname( __FILE__ ) ) . "/UsabilityInitiative.php" );
-
-// Adds Autoload Classes
-$dir = dirname( __FILE__ ) . '/';
-$wgAutoloadClasses['UserDailyContribsHooks'] = $dir . 
'UserDailyContribs.hooks.php';
-
-// Adds Internationalized Messages
-$wgExtensionMessagesFiles['UserDailyContribs'] = $dir . 
'UserDailyContribs.i18n.php';
-
-// Hooked functions
-$wgHooks['LoadExtensionSchemaUpdates'][] = 'UserDailyContribsHooks::schema';
-$wgHooks['ArticleSaveComplete'][] = 'UserDailyContribsHooks::storeNewContrib';
+$wgAutoloadClasses['UserDailyContribsHooks'] = dirname( __FILE__ ) . 
'/UserDailyContribs.hooks.php';
+$wgExtensionMessagesFiles['UserDailyContribs'] = dirname( __FILE__ ) . 
'/UserDailyContribs.i18n.php';
+$wgHooks['LoadExtensionSchemaUpdates'][] = 
'UserDailyContribsHooks::loadExtensionSchemaUpdates';
+$wgHooks['ArticleSaveComplete'][] = 
'UserDailyContribsHooks::articleSaveComplete';
 $wgHooks['ParserTestTables'][] = 'UserDailyContribsHooks::parserTestTables';

Modified: 
trunk/extensions/UsabilityInitiative/UserDailyContribs/UserDailyContribs.sql
===================================================================
--- 
trunk/extensions/UsabilityInitiative/UserDailyContribs/UserDailyContribs.sql    
    2010-09-16 23:50:09 UTC (rev 73183)
+++ 
trunk/extensions/UsabilityInitiative/UserDailyContribs/UserDailyContribs.sql    
    2010-09-16 23:52:28 UTC (rev 73184)
@@ -3,17 +3,13 @@
 --
 -- Used in clicktracking to determine how active the user is
 --
-
 CREATE TABLE IF NOT EXISTS /*_*/user_daily_contribs (
        -- user id
        user_id integer NOT NULL default 0,
-
        -- day
        day DATE NOT NULL,
-
        -- contributions on that day by that user
        contribs integer NOT NULL default 0,
-
        -- a unique entry for a given user_id and day
        PRIMARY KEY(user_id, day)
 ) /*$wgDBTableOptions*/;
\ No newline at end of file



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

Reply via email to