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

Revision: 113983
Author:   jeroendedauw
Date:     2012-03-16 00:41:54 +0000 (Fri, 16 Mar 2012)
Log Message:
-----------
update last_active field on edits

Modified Paths:
--------------
    trunk/extensions/EducationProgram/EducationProgram.hooks.php
    trunk/extensions/EducationProgram/EducationProgram.php
    trunk/extensions/EducationProgram/specials/SpecialStudentActivity.php

Modified: trunk/extensions/EducationProgram/EducationProgram.hooks.php
===================================================================
--- trunk/extensions/EducationProgram/EducationProgram.hooks.php        
2012-03-16 00:40:42 UTC (rev 113982)
+++ trunk/extensions/EducationProgram/EducationProgram.hooks.php        
2012-03-16 00:41:54 UTC (rev 113983)
@@ -381,5 +381,35 @@
                
                return $allowed;
        }
+
+       /**
+        * Called when a revision was inserted due to an edit.
+        * @see 
https://www.mediawiki.org/wiki/Manual:Hooks/NewRevisionFromEditComplete
+        *
+        * @since 0.1
+        *
+        * @param weirdStuffButProbablyWikiPage $article
+        * @param Revision $rev
+        * @param integer $baseID
+        * @param User $user
+        *
+        * @return true
+        */
+       public static function onNewRevisionFromEditComplete( $article, 
Revision $rev, $baseID, User $user ) {
+               if ( $article->getTitle()->inNamespaces( NS_MAIN, NS_TALK ) ) {
+                       $studentId = EPStudents::singleton()->selectFieldsRow( 
'id', array( 'user_id' => $user->getId() ) );
+
+                       if ( $studentId !== false ) {
+                               $student = EPStudent::newFromUserId( 
$user->getId() );
+                               $student->setFields( array(
+                                       'id' => $studentId,
+                                       'last_active' => wfTimestampNow()
+                               ) );
+                               $student->save();
+                       }
+               }
+
+               return true;
+       }
        
 }

Modified: trunk/extensions/EducationProgram/EducationProgram.php
===================================================================
--- trunk/extensions/EducationProgram/EducationProgram.php      2012-03-16 
00:40:42 UTC (rev 113982)
+++ trunk/extensions/EducationProgram/EducationProgram.php      2012-03-16 
00:41:54 UTC (rev 113983)
@@ -194,6 +194,7 @@
 $wgHooks['CanonicalNamespaces'][]                                      = 
'EPHooks::onCanonicalNamespaces';
 $wgHooks['TitleIsAlwaysKnown'][]                                       = 
'EPHooks::onTitleIsAlwaysKnown';
 $wgHooks['AbortMove'][]                                                        
= 'EPHooks::onAbortMove';
+$wgHooks['NewRevisionFromEditComplete'][]                      = 
'EPHooks::onNewRevisionFromEditComplete';
 
 // Actions
 $wgActions['epremarticle'] = 'EPRemoveArticleAction';

Modified: trunk/extensions/EducationProgram/specials/SpecialStudentActivity.php
===================================================================
--- trunk/extensions/EducationProgram/specials/SpecialStudentActivity.php       
2012-03-16 00:40:42 UTC (rev 113982)
+++ trunk/extensions/EducationProgram/specials/SpecialStudentActivity.php       
2012-03-16 00:41:54 UTC (rev 113983)
@@ -167,7 +167,7 @@
                                }
                                break;
                        case 'last_active':
-                               $value = htmlspecialchars( 
$this->getLanguage()->date( $value ) );
+                               $value = htmlspecialchars( 
$this->getLanguage()->timeanddate( $value ) );
                                break;
                        case 'last_course':
                                if ( array_key_exists( $value, 
$this->courseNames ) ) {


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

Reply via email to