https://www.mediawiki.org/wiki/Special:Code/MediaWiki/114676

Revision: 114676
Author:   bsitu
Date:     2012-04-02 23:50:49 +0000 (Mon, 02 Apr 2012)
Log Message:
-----------
format the date in stats nav

Modified Paths:
--------------
    trunk/extensions/PageTriage/PageTriage.i18n.php
    trunk/extensions/PageTriage/PageTriage.php
    
trunk/extensions/PageTriage/modules/ext.pageTriage.models/ext.pageTriage.stats.js

Modified: trunk/extensions/PageTriage/PageTriage.i18n.php
===================================================================
--- trunk/extensions/PageTriage/PageTriage.i18n.php     2012-04-02 23:50:43 UTC 
(rev 114675)
+++ trunk/extensions/PageTriage/PageTriage.i18n.php     2012-04-02 23:50:49 UTC 
(rev 114676)
@@ -51,6 +51,7 @@
        'pagetriage-filter-blocked' => 'Are by blocked users',
        'pagetriage-filter-set-button' => 'Set Filters',
        'pagetriage-stats-untriaged-age' => 'Article Ages: Average: $1, Oldest: 
$2',
+       'pagetriage-stats-less-than-a-day' => 'less than one day'
 );
 
 /**
@@ -94,4 +95,5 @@
        'pagetriage-filter-blocked' => 'Checkbox text for articles by blocked 
users',
        'pagetriage-filter-set-button' => 'Button text for the set filter 
button',
        'pagetriage-stats-untriaged-age' => 'Navigation text displaying triage 
stats',
+       'pagetriage-stats-less-than-a-day' => 'show this message if the article 
age is less than one day, part of variable $1 and $2 of 
{{msg-pagetriage|pagetriage-stats-untriaged-age}} '
 );

Modified: trunk/extensions/PageTriage/PageTriage.php
===================================================================
--- trunk/extensions/PageTriage/PageTriage.php  2012-04-02 23:50:43 UTC (rev 
114675)
+++ trunk/extensions/PageTriage/PageTriage.php  2012-04-02 23:50:49 UTC (rev 
114676)
@@ -237,6 +237,8 @@
                'pagetriage-filter-blocked',
                'pagetriage-filter-set-button',
                'pagetriage-stats-untriaged-age',
+               'pagetriage-stats-less-than-a-day',
+               'days',
        )
 );
 

Modified: 
trunk/extensions/PageTriage/modules/ext.pageTriage.models/ext.pageTriage.stats.js
===================================================================
--- 
trunk/extensions/PageTriage/modules/ext.pageTriage.models/ext.pageTriage.stats.js
   2012-04-02 23:50:43 UTC (rev 114675)
+++ 
trunk/extensions/PageTriage/modules/ext.pageTriage.models/ext.pageTriage.stats.js
   2012-04-02 23:50:49 UTC (rev 114676)
@@ -14,14 +14,39 @@
                },
                
                formatMetadata: function ( stats ) {
-                       stats.set( 'ptr_untriaged_article_count', stats.get( 
'untriagedarticle' )['count'] );
-                       stats.set( 'ptrAverage', 
-                                       stats.get( 'untriagedarticle' 
)['age-50th-percentile'] ? 
-                                       stats.get( 'untriagedarticle' 
)['age-50th-percentile'] : '' );
-                       stats.set( 'ptrOldest', 
-                                       stats.get( 'untriagedarticle' 
)['age-100th-percentile'] ? 
-                                       stats.get( 'untriagedarticle' 
)['age-100th-percentile'] : '' );
+                       stats.set( 'ptr_untriaged_article_count', stats.get( 
'untriagedarticle' )['count'] );             
+                       stats.set( 'ptrAverage', this.formatDaysFromNow( 
stats.get( 'untriagedarticle' )['age-50th-percentile'] ) );
+                       stats.set( 'ptrOldest', this.formatDaysFromNow( 
stats.get( 'untriagedarticle' )['age-100th-percentile'] ) );
                },
+               
+               formatDaysFromNow: function ( dateStr ) {
+                       if ( !dateStr ) {
+                               return '';
+                       }
+
+                       var now = new Date();
+                       now = new Date( 
+                                       Date.UTC( 
+                                               now.getUTCFullYear(), 
+                                               now.getUTCMonth(), 
+                                               now.getUTCDate(), 
+                                               now.getUTCHours(), 
+                                               now.getUTCMinutes(), 
+                                               now.getUTCSeconds() 
+                                       ) 
+                       );
+                       
+                       var begin = Date.parseExact( dateStr, 'yyyyMMddHHmmss' 
);
+                       begin.setTimezone( 'GMT' );
+                       
+                       var diff = Math.round( ( now.getTime() - 
begin.getTime() ) / ( 1000 * 60 * 60 * 24 ) );
+                       if ( diff ) {
+                               return gM( 'days', diff );
+                       } else {
+                               return gM( 'pagetriage-stats-less-than-a-day', 
diff );
+                       }
+               },
+
                url: mw.util.wikiScript( 'api' ) + 
'?action=pagetriagestats&format=json',
 
                parse: function( response ) {


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

Reply via email to