diff --git a/resources/skins.minerva.scripts/menu/schema.js b/resources/skins.minerva.scripts/menu/schema.js index 3547e13..f3f1a79 100644 --- a/resources/skins.minerva.scripts/menu/schema.js +++ b/resources/skins.minerva.scripts/menu/schema.js @@ -1,14 +1,12 @@ -/** - * This module is loaded by resources/skins.minerva.scripts/menu/MainMenu.js - * inside the Minerva skin. It should be moved to Minerva at our earliest possible - * convenience. - */ mw.loader.using( [ 'ext.eventLogging.subscriber' ] ).then( function () { var M = mw.mobileFrontend, user = mw.user, editCount = mw.config.get( 'wgUserEditCount' ), + // Need to make amc default to false because it will not exist in mw.config + // if using desktop Minerva or if MobileFrontend extension is not installed. + amc = mw.config.get( 'wgMFAmc', false ), // Schema provided by ext.eventLogging.subscriber class Schema = mw.eventLog.Schema, // resource-modules-disable-line context = M.require( 'mobile.startup' ).context, @@ -24,7 +22,9 @@ mw.loader.using( [ mw.config.get( 'wgMinervaSchemaMainMenuClickTrackingSampleRate' ), /** * @property {Object} defaults Default options hash. - * @property {string} defaults.mobileMode whether user is in stable or beta + * @property {string} defaults.mode whether user is in stable, beta, or desktop + * @property {boolean} defaults.amc whether or not the user has advanced + * contributions mode enabled (true) or disabled (false) * @property {string} [defaults.username] Username if the user is logged in, * otherwise - undefined. * Assigning undefined will make event logger omit this property when sending @@ -36,6 +36,7 @@ mw.loader.using( [ */ { mode: context.getMode() || 'desktop', + amc: amc, username: user.getName() || undefined, // FIXME: Use edit bucket here (T210106) userEditCount: typeof editCount === 'number' ? editCount : undefined @@ -43,6 +44,12 @@ mw.loader.using( [ ); mw.trackSubscribe( 'minerva.schemaMobileWebMainMenuClickTracking', function ( topic, data ) { + if ( amc ) { + // T218627: Sampling rate should be 100% if user has amc enabled + schemaMobileWebMainMenuClickTracking.log( data, 1 ); + return; + } + schemaMobileWebMainMenuClickTracking.log( data ); } ); } ); diff --git a/skin.json b/skin.json index b0fcfe2..38a0c2f 100644 --- a/skin.json +++ b/skin.json @@ -166,7 +166,7 @@ "EventLoggingSchemas": { "WebClientError": 18340282, "MobileWebShareButton": 18923688, - "MobileWebMainMenuClickTracking": 18203509 + "MobileWebMainMenuClickTracking": 18984528 }, "ResourceModules": { "skins.minerva.base.styles": {