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