File tree 3 files changed +14
-3
lines changed
3 files changed +14
-3
lines changed Original file line number Diff line number Diff line change @@ -29,6 +29,8 @@ export default (element: HTMLDivElement, hub: Hub) => {
29
29
30
30
const utmSource = element . getAttribute ( "data-utm-source" ) || undefined ;
31
31
const utmCampaign = element . getAttribute ( "data-utm-campaign" ) || undefined ;
32
+ const impactTrackingLink =
33
+ element . getAttribute ( "data-impact-tracking-link" ) || undefined ;
32
34
33
35
if ( element . getAttribute ( "data-encoded" ) ) {
34
36
const exercise = JSON . parse ( atob ( decodeURIComponent ( element . textContent ) ) ) ;
@@ -103,6 +105,7 @@ export default (element: HTMLDivElement, hub: Hub) => {
103
105
language = { settings . language }
104
106
utmSource = { utmSource }
105
107
utmCampaign = { utmCampaign }
108
+ impactTrackingLink = { impactTrackingLink }
106
109
/>
107
110
</ Provider >
108
111
</ AppContainer >
Original file line number Diff line number Diff line change @@ -85,6 +85,7 @@ export interface IAppProps extends React.Props<App> {
85
85
nPlots ?: number ;
86
86
utmSource ?: string ;
87
87
utmCampaign ?: string ;
88
+ impactTrackingLink ?: string ;
88
89
}
89
90
90
91
interface IAppState {
@@ -321,6 +322,7 @@ export class App extends React.Component<IAppProps, IAppState> {
321
322
showSolutionButton = { this . state . solutionButtonVisible }
322
323
utmSource = { this . props . utmSource }
323
324
utmCampaign = { this . props . utmCampaign }
325
+ impactTrackingLink = { this . props . impactTrackingLink }
324
326
/>
325
327
</ div >
326
328
</ Provider >
Original file line number Diff line number Diff line change @@ -24,6 +24,7 @@ export interface IFooterProps extends React.Props<Footer> {
24
24
language ?: string ;
25
25
utmSource ?: string ;
26
26
utmCampaign ?: string ;
27
+ impactTrackingLink ?: string ;
27
28
}
28
29
29
30
interface IFooterState {
@@ -76,10 +77,15 @@ export class Footer extends React.PureComponent<IFooterProps, IFooterState> {
76
77
}
77
78
78
79
public render ( ) {
79
- const { utmSource, utmCampaign } = this . props ;
80
- const baseUrl = "https://www.datacamp.com/" ;
80
+ const { utmSource, utmCampaign, impactTrackingLink } = this . props ;
81
+ const baseUrl = impactTrackingLink
82
+ ? "https://datacamp.pxf.io"
83
+ : "https://www.datacamp.com/" ;
81
84
const queryParams = `utm_source=${ utmSource } &utm_campaign=${ utmCampaign } ` ;
82
- const datacampUrl = `${ baseUrl } ?${ queryParams } ` ;
85
+ const datacampUrl = impactTrackingLink
86
+ ? `${ baseUrl } ${ impactTrackingLink } `
87
+ : `${ baseUrl } ?${ queryParams } ` ;
88
+
83
89
return (
84
90
< div className = { styles . footer } >
85
91
{ this . props . hint ? (
You can’t perform that action at this time.
0 commit comments