Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app/assets/javascripts/pages/shared/wikis/wikis.js')
-rw-r--r--app/assets/javascripts/pages/shared/wikis/wikis.js19
1 files changed, 19 insertions, 0 deletions
diff --git a/app/assets/javascripts/pages/shared/wikis/wikis.js b/app/assets/javascripts/pages/shared/wikis/wikis.js
index ed67219383b..41d43812b5d 100644
--- a/app/assets/javascripts/pages/shared/wikis/wikis.js
+++ b/app/assets/javascripts/pages/shared/wikis/wikis.js
@@ -1,5 +1,6 @@
import { GlBreakpointInstance as bp } from '@gitlab/ui/dist/utils';
import { s__, sprintf } from '~/locale';
+import Tracking from '~/tracking';
const MARKDOWN_LINK_TEXT = {
markdown: '[Link Title](page-slug)',
@@ -8,6 +9,9 @@ const MARKDOWN_LINK_TEXT = {
org: '[[page-slug]]',
};
+const TRACKING_EVENT_NAME = 'view_wiki_page';
+const TRACKING_CONTEXT_SCHEMA = 'iglu:com.gitlab/wiki_page_context/jsonschema/1-0-0';
+
export default class Wikis {
constructor() {
this.sidebarEl = document.querySelector('.js-wiki-sidebar');
@@ -57,6 +61,8 @@ export default class Wikis {
window.onbeforeunload = null;
});
}
+
+ Wikis.trackPageView();
}
handleWikiTitleChange(e) {
@@ -97,4 +103,17 @@ export default class Wikis {
classList.remove('right-sidebar-expanded');
}
}
+
+ static trackPageView() {
+ const wikiPageContent = document.querySelector('.js-wiki-page-content[data-tracking-context]');
+ if (!wikiPageContent) return;
+
+ Tracking.event(document.body.dataset.page, TRACKING_EVENT_NAME, {
+ label: TRACKING_EVENT_NAME,
+ context: {
+ schema: TRACKING_CONTEXT_SCHEMA,
+ data: JSON.parse(wikiPageContent.dataset.trackingContext),
+ },
+ });
+ }
}