jenkins-bot has submitted this change and it was merged. Change subject: Log event when new editors reach edit milestone ......................................................................
Log event when new editors reach edit milestone Log an event when an editor who registered in the last 30 days makes their first, fifth, tenth, twenty-fifth, fiftieth or hundredth edit. See <https://meta.wikimedia.org/wiki/Schema:NewEditorMilestone>. Change-Id: Ia6f758068ed1036014de105e3ab34b932149c13b --- M WikimediaEvents.php 1 file changed, 38 insertions(+), 11 deletions(-) Approvals: Nuria: Looks good to me, approved jenkins-bot: Verified diff --git a/WikimediaEvents.php b/WikimediaEvents.php index 1194a10..db9d5eb 100644 --- a/WikimediaEvents.php +++ b/WikimediaEvents.php @@ -86,18 +86,45 @@ $wgHooks['PageContentSaveComplete'][] = function ( $article, $user, $content, $summary, $isMinor, $isWatch, $section, $flags, $revision, $status, $baseRevId ) { - if ( $revision ) { - $event = array( - 'revisionId' => $revision->getId(), - 'isAPI' => defined( 'MW_API' ), - 'isMobile' => ( class_exists( 'MobileContext' ) - && MobileContext::singleton()->shouldDisplayMobileView() ), - ); - if ( isset( $_SERVER[ 'HTTP_USER_AGENT' ] ) ) { - $event[ 'userAgent' ] = $_SERVER[ 'HTTP_USER_AGENT' ]; - } - efLogServerSideEvent( 'PageContentSaveComplete', 5588433, $event ); + if ( !$revision ) { + return; } + + $isAPI = defined( 'MW_API' ); + $isMobile = class_exists( 'MobileContext' ) && MobileContext::singleton()->shouldDisplayMobileView(); + $revId = $revision->getId(); + + $event = array( + 'revisionId' => $revId, + 'isAPI' => $isAPI, + 'isMobile' => $isMobile, + ); + + if ( isset( $_SERVER[ 'HTTP_USER_AGENT' ] ) ) { + $event[ 'userAgent' ] = $_SERVER[ 'HTTP_USER_AGENT' ]; + } + efLogServerSideEvent( 'PageContentSaveComplete', 5588433, $event ); + + // Get the user's age, measured in seconds since registration. + $age = time() - wfTimestampOrNull( TS_UNIX, $user->getRegistration() ); + + // Get the user's edit count. + $editCount = $user->getEditCount(); + + // If the editor signed up in the last thirty days, and if this is a + // milestone edit, log a NewEditorMilestone event. + if ( $age <= 2592000 && in_array( $editCount, array( 1, 5, 10, 25, 50, 100 ) ) ) { + efLogServerSideEvent( 'NewEditorMilestone', 6538838, array( + 'userId' => $user->getId(), + 'userAge' => $age, + 'milestone' => $editCount, + 'pageId' => $article->getId(), + 'revId' => $revId, + 'isAPI' => $isAPI, + 'isMobile' => $isMobile, + ) ); + } + return true; }; -- To view, visit https://gerrit.wikimedia.org/r/98079 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: merged Gerrit-Change-Id: Ia6f758068ed1036014de105e3ab34b932149c13b Gerrit-PatchSet: 1 Gerrit-Project: mediawiki/extensions/WikimediaEvents Gerrit-Branch: master Gerrit-Owner: Ori.livneh <[email protected]> Gerrit-Reviewer: Milimetric <[email protected]> Gerrit-Reviewer: Nuria <[email protected]> Gerrit-Reviewer: Ori.livneh <[email protected]> Gerrit-Reviewer: jenkins-bot _______________________________________________ MediaWiki-commits mailing list [email protected] https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits
