diff --git a/banners/thank_you/MembershipFormActions.ts b/banners/thank_you/MembershipFormActions.ts deleted file mode 100644 index f57da5fb5..000000000 --- a/banners/thank_you/MembershipFormActions.ts +++ /dev/null @@ -1,35 +0,0 @@ -/* eslint-disable camelcase */ -import { TrackingParameters } from '@src/domain/TrackingParameters'; -import { ImpressionCount } from '@src/utils/ImpressionCount'; -import { Locales } from '@src/domain/Locales'; - -const MEMBERSHIP_FORM_URL = 'https://spenden.wikimedia.de/apply-for-membership'; - -export interface MembershipFormActions { - create( extraUrlParameters: Record ): string; -} - -export class TrackingMembershipFormActions implements MembershipFormActions { - private _tracking: TrackingParameters; - private _impressionCount: ImpressionCount; - private readonly _locale: Locales; - - public constructor( tracking: TrackingParameters, impressionCount: ImpressionCount, locale: Locales ) { - this._tracking = tracking; - this._impressionCount = impressionCount; - this._locale = locale; - } - - public create( extraUrlParameters: Record = {} ): string { - const urlParameters = new URLSearchParams( { - piwik_kwd: this._tracking.keyword, - piwik_campaign: this._tracking.campaign, - impCount: String( this._impressionCount.overallCountIncremented ), - bImpCount: String( this._impressionCount.bannerCountIncremented ), - locale: this._locale, - ...extraUrlParameters - } ); - - return `${MEMBERSHIP_FORM_URL}?${urlParameters}`; - } -} diff --git a/banners/thank_you/banner_ctrl.de.ts b/banners/thank_you/banner_ctrl.de.ts index f04afe6b5..d1f309a38 100644 --- a/banners/thank_you/banner_ctrl.de.ts +++ b/banners/thank_you/banner_ctrl.de.ts @@ -1,6 +1,6 @@ import { createVueApp } from '@src/createVueApp'; -import './styles/styles.scss'; +import './styles/styles_wporg.scss'; import PageWPORG from '@src/page/PageWPORG'; import { SkinFactory } from '@src/page/skin/SkinFactory'; @@ -16,8 +16,7 @@ import Banner from './components/BannerCtrl.de.vue'; import messages from './messages.de'; import eventMappings from './event_map'; import TranslationPlugin from '@src/TranslationPlugin'; -import { TrackingMembershipFormActions } from './MembershipFormActions'; -import { createTrackedURL, SUBSCRIBE_URL, USE_OF_FUNDS_URL } from './createTrackedURL'; +import { createTrackedURL, MEMBERSHIP_FORM_URL, SUBSCRIBE_URL, USE_OF_FUNDS_URL } from './createTrackedURL'; import { createThankYouSettings } from './settings'; import { IntegerDe } from '@src/utils/DynamicContent/formatters/IntegerDe'; import { Locales } from '@src/domain/Locales'; @@ -39,8 +38,15 @@ const app = createVueApp( BannerConductor, { bannerCategory: 'fundraisingThankyou', bannerProps: { settings: createThankYouSettings( new IntegerDe(), page.getThankYouCampaignParameters() ), - subscribeURL: createTrackedURL( SUBSCRIBE_URL, page.getTracking(), impressionCount, Locales.DE ), - useOfFundsURL: createTrackedURL( USE_OF_FUNDS_URL, page.getTracking(), impressionCount, Locales.DE ) + subscribeURL: createTrackedURL( SUBSCRIBE_URL, page.getTracking(), impressionCount, { locale: Locales.DE } ), + useOfFundsURL: createTrackedURL( USE_OF_FUNDS_URL, page.getTracking(), impressionCount, { locale: Locales.DE } ), + membershipWithAmountURL: createTrackedURL( MEMBERSHIP_FORM_URL, page.getTracking(), impressionCount, { + locale: Locales.DE, + interval: '1', + fee: '500', + type: 'sustaining' + } ), + membershipWithoutAmountURL: createTrackedURL( MEMBERSHIP_FORM_URL, page.getTracking(), impressionCount, { locale: Locales.DE, type: 'sustaining' } ) }, resizeHandler: new WindowResizeHandler(), banner: Banner, @@ -49,7 +55,6 @@ const app = createVueApp( BannerConductor, { app.use( TranslationPlugin, translator ); app.provide( 'tracker', tracker ); -app.provide( 'formActions', new TrackingMembershipFormActions( page.getTracking(), impressionCount, Locales.DE ) ); app.provide( 'timer', new WindowTimer() ); app.mount( page.getBannerContainer() ); diff --git a/banners/thank_you/banner_ctrl.en.ts b/banners/thank_you/banner_ctrl.en.ts index 1ea336eb0..49eb24466 100644 --- a/banners/thank_you/banner_ctrl.en.ts +++ b/banners/thank_you/banner_ctrl.en.ts @@ -1,6 +1,6 @@ import { createVueApp } from '@src/createVueApp'; -import './styles/styles.scss'; +import './styles/styles_wporg.scss'; import PageWPORG from '@src/page/PageWPORG'; import { SkinFactory } from '@src/page/skin/SkinFactory'; @@ -16,8 +16,7 @@ import Banner from './components/BannerCtrl.en.vue'; import messages from './messages.en'; import eventMappings from './event_map'; import TranslationPlugin from '@src/TranslationPlugin'; -import { TrackingMembershipFormActions } from './MembershipFormActions'; -import { createTrackedURL, SUBSCRIBE_URL, USE_OF_FUNDS_URL } from './createTrackedURL'; +import { createTrackedURL, MEMBERSHIP_FORM_URL, SUBSCRIBE_URL, USE_OF_FUNDS_URL } from './createTrackedURL'; import { createThankYouSettings } from './settings'; import { IntegerEn } from '@src/utils/DynamicContent/formatters/IntegerEn'; import { Locales } from '@src/domain/Locales'; @@ -39,8 +38,15 @@ const app = createVueApp( BannerConductor, { bannerCategory: 'fundraisingThankyou', bannerProps: { settings: createThankYouSettings( new IntegerEn(), page.getThankYouCampaignParameters() ), - subscribeURL: createTrackedURL( SUBSCRIBE_URL, page.getTracking(), impressionCount, Locales.EN ), - useOfFundsURL: createTrackedURL( USE_OF_FUNDS_URL, page.getTracking(), impressionCount, Locales.EN ) + subscribeURL: createTrackedURL( SUBSCRIBE_URL, page.getTracking(), impressionCount, { locale: Locales.EN } ), + useOfFundsURL: createTrackedURL( USE_OF_FUNDS_URL, page.getTracking(), impressionCount, { locale: Locales.EN } ), + membershipWithAmountURL: createTrackedURL( MEMBERSHIP_FORM_URL, page.getTracking(), impressionCount, { + locale: Locales.EN, + interval: '1', + fee: '500', + type: 'sustaining' + } ), + membershipWithoutAmountURL: createTrackedURL( MEMBERSHIP_FORM_URL, page.getTracking(), impressionCount, { locale: Locales.EN, type: 'sustaining' } ) }, resizeHandler: new WindowResizeHandler(), banner: Banner, @@ -49,7 +55,6 @@ const app = createVueApp( BannerConductor, { app.use( TranslationPlugin, translator ); app.provide( 'tracker', tracker ); -app.provide( 'formActions', new TrackingMembershipFormActions( page.getTracking(), impressionCount, Locales.EN ) ); app.provide( 'timer', new WindowTimer() ); app.mount( page.getBannerContainer() ); diff --git a/banners/thank_you/banner_ctrl.wpde.ts b/banners/thank_you/banner_ctrl.wpde.ts index ffb1bb8c5..69d9c8498 100644 --- a/banners/thank_you/banner_ctrl.wpde.ts +++ b/banners/thank_you/banner_ctrl.wpde.ts @@ -1,6 +1,6 @@ import { createVueApp } from '@src/createVueApp'; -import './styles/styles.scss'; +import './styles/styles_wpde.scss'; import { Translator } from '@src/Translator'; import { UrlRuntimeEnvironment } from '@src/utils/RuntimeEnvironment'; import { LocalImpressionCount } from '@src/utils/LocalImpressionCount'; @@ -9,8 +9,7 @@ import { WindowResizeHandler } from '@src/utils/ResizeHandler'; import Banner from './components/BannerCtrl.de.vue'; import messages from './messages.de'; import TranslationPlugin from '@src/TranslationPlugin'; -import { TrackingMembershipFormActions } from './MembershipFormActions'; -import { createTrackedURL, SUBSCRIBE_URL, USE_OF_FUNDS_URL } from './createTrackedURL'; +import { createTrackedURL, MEMBERSHIP_FORM_URL, SUBSCRIBE_URL, USE_OF_FUNDS_URL } from './createTrackedURL'; import PageWPDE from '@src/page/PageWPDE'; import { TrackerWPDE } from '@src/tracking/TrackerWPDE'; import eventMap from './event_map.wpde'; @@ -41,8 +40,15 @@ const app = createVueApp( BannerConductor, { bannerCategory: 'fundraisingThankyou', bannerProps: { settings: createThankYouSettings( new IntegerDe(), page.getThankYouCampaignParameters() ), - subscribeURL: createTrackedURL( SUBSCRIBE_URL, page.getTracking(), impressionCount, Locales.DE ), - useOfFundsURL: createTrackedURL( USE_OF_FUNDS_URL, page.getTracking(), impressionCount, Locales.DE ) + subscribeURL: createTrackedURL( SUBSCRIBE_URL, page.getTracking(), impressionCount, { locale: Locales.DE } ), + useOfFundsURL: createTrackedURL( USE_OF_FUNDS_URL, page.getTracking(), impressionCount, { locale: Locales.DE } ), + membershipWithAmountURL: createTrackedURL( MEMBERSHIP_FORM_URL, page.getTracking(), impressionCount, { + locale: Locales.DE, + interval: '1', + fee: '500', + type: 'sustaining' + } ), + membershipWithoutAmountURL: createTrackedURL( MEMBERSHIP_FORM_URL, page.getTracking(), impressionCount, { locale: Locales.DE, type: 'sustaining' } ) }, resizeHandler: new WindowResizeHandler(), banner: Banner, @@ -51,7 +57,6 @@ const app = createVueApp( BannerConductor, { app.use( TranslationPlugin, translator ); app.provide( 'tracker', tracker ); -app.provide( 'formActions', new TrackingMembershipFormActions( page.getTracking(), impressionCount, Locales.DE ) ); app.provide( 'timer', new WindowTimer() ); app.mount( page.getBannerContainer() ); diff --git a/banners/thank_you/banner_var.de.ts b/banners/thank_you/banner_var.de.ts index 53f070fc5..21b85d46c 100644 --- a/banners/thank_you/banner_var.de.ts +++ b/banners/thank_you/banner_var.de.ts @@ -1,6 +1,6 @@ import { createVueApp } from '@src/createVueApp'; -import './styles/styles.scss'; +import './styles/styles_wporg.scss'; import PageWPORG from '@src/page/PageWPORG'; import { SkinFactory } from '@src/page/skin/SkinFactory'; @@ -16,8 +16,7 @@ import Banner from './components/BannerVar.de.vue'; import messages from './messages.de'; import eventMappings from './event_map'; import TranslationPlugin from '@src/TranslationPlugin'; -import { TrackingMembershipFormActions } from './MembershipFormActions'; -import { createTrackedURL, SUBSCRIBE_URL, USE_OF_FUNDS_URL } from './createTrackedURL'; +import { createTrackedURL, MEMBERSHIP_FORM_URL, SUBSCRIBE_URL, USE_OF_FUNDS_URL } from './createTrackedURL'; import { createThankYouSettings } from './settings'; import { IntegerDe } from '@src/utils/DynamicContent/formatters/IntegerDe'; import { Locales } from '@src/domain/Locales'; @@ -39,8 +38,15 @@ const app = createVueApp( BannerConductor, { bannerCategory: 'fundraisingThankyou', bannerProps: { settings: createThankYouSettings( new IntegerDe(), page.getThankYouCampaignParameters() ), - subscribeURL: createTrackedURL( SUBSCRIBE_URL, page.getTracking(), impressionCount, Locales.DE ), - useOfFundsURL: createTrackedURL( USE_OF_FUNDS_URL, page.getTracking(), impressionCount, Locales.DE ) + subscribeURL: createTrackedURL( SUBSCRIBE_URL, page.getTracking(), impressionCount, { locale: Locales.DE } ), + useOfFundsURL: createTrackedURL( USE_OF_FUNDS_URL, page.getTracking(), impressionCount, { locale: Locales.DE } ), + membershipWithAmountURL: createTrackedURL( MEMBERSHIP_FORM_URL, page.getTracking(), impressionCount, { + locale: Locales.DE, + interval: '1', + fee: '500', + type: 'sustaining' + } ), + membershipWithoutAmountURL: createTrackedURL( MEMBERSHIP_FORM_URL, page.getTracking(), impressionCount, { locale: Locales.DE, type: 'sustaining' } ) }, resizeHandler: new WindowResizeHandler(), banner: Banner, @@ -49,7 +55,6 @@ const app = createVueApp( BannerConductor, { app.use( TranslationPlugin, translator ); app.provide( 'tracker', tracker ); -app.provide( 'formActions', new TrackingMembershipFormActions( page.getTracking(), impressionCount, Locales.DE ) ); app.provide( 'timer', new WindowTimer() ); app.mount( page.getBannerContainer() ); diff --git a/banners/thank_you/banner_var.en.ts b/banners/thank_you/banner_var.en.ts index f54b7726c..27493f93b 100644 --- a/banners/thank_you/banner_var.en.ts +++ b/banners/thank_you/banner_var.en.ts @@ -1,6 +1,6 @@ import { createVueApp } from '@src/createVueApp'; -import './styles/styles.scss'; +import './styles/styles_wporg.scss'; import PageWPORG from '@src/page/PageWPORG'; import { SkinFactory } from '@src/page/skin/SkinFactory'; @@ -16,8 +16,7 @@ import Banner from './components/BannerVar.en.vue'; import messages from './messages.en'; import eventMappings from './event_map'; import TranslationPlugin from '@src/TranslationPlugin'; -import { TrackingMembershipFormActions } from './MembershipFormActions'; -import { createTrackedURL, SUBSCRIBE_URL, USE_OF_FUNDS_URL } from './createTrackedURL'; +import { createTrackedURL, MEMBERSHIP_FORM_URL, SUBSCRIBE_URL, USE_OF_FUNDS_URL } from './createTrackedURL'; import { createThankYouSettings } from './settings'; import { IntegerEn } from '@src/utils/DynamicContent/formatters/IntegerEn'; import { Locales } from '@src/domain/Locales'; @@ -39,8 +38,15 @@ const app = createVueApp( BannerConductor, { bannerCategory: 'fundraisingThankyou', bannerProps: { settings: createThankYouSettings( new IntegerEn(), page.getThankYouCampaignParameters() ), - subscribeURL: createTrackedURL( SUBSCRIBE_URL, page.getTracking(), impressionCount, Locales.EN ), - useOfFundsURL: createTrackedURL( USE_OF_FUNDS_URL, page.getTracking(), impressionCount, Locales.EN ) + subscribeURL: createTrackedURL( SUBSCRIBE_URL, page.getTracking(), impressionCount, { locale: Locales.EN } ), + useOfFundsURL: createTrackedURL( USE_OF_FUNDS_URL, page.getTracking(), impressionCount, { locale: Locales.EN } ), + membershipWithAmountURL: createTrackedURL( MEMBERSHIP_FORM_URL, page.getTracking(), impressionCount, { + locale: Locales.EN, + interval: '1', + fee: '500', + type: 'sustaining' + } ), + membershipWithoutAmountURL: createTrackedURL( MEMBERSHIP_FORM_URL, page.getTracking(), impressionCount, { locale: Locales.EN, type: 'sustaining' } ) }, resizeHandler: new WindowResizeHandler(), banner: Banner, @@ -49,7 +55,6 @@ const app = createVueApp( BannerConductor, { app.use( TranslationPlugin, translator ); app.provide( 'tracker', tracker ); -app.provide( 'formActions', new TrackingMembershipFormActions( page.getTracking(), impressionCount, Locales.EN ) ); app.provide( 'timer', new WindowTimer() ); app.mount( page.getBannerContainer() ); diff --git a/banners/thank_you/banner_var.wpde.ts b/banners/thank_you/banner_var.wpde.ts index 9ed28002b..f1354f3af 100644 --- a/banners/thank_you/banner_var.wpde.ts +++ b/banners/thank_you/banner_var.wpde.ts @@ -1,6 +1,6 @@ import { createVueApp } from '@src/createVueApp'; -import './styles/styles.scss'; +import './styles/styles_wpde.scss'; import { Translator } from '@src/Translator'; import { UrlRuntimeEnvironment } from '@src/utils/RuntimeEnvironment'; import { LocalImpressionCount } from '@src/utils/LocalImpressionCount'; @@ -9,8 +9,7 @@ import { WindowResizeHandler } from '@src/utils/ResizeHandler'; import Banner from './components/BannerVar.de.vue'; import messages from './messages.de'; import TranslationPlugin from '@src/TranslationPlugin'; -import { TrackingMembershipFormActions } from './MembershipFormActions'; -import { createTrackedURL, SUBSCRIBE_URL, USE_OF_FUNDS_URL } from './createTrackedURL'; +import { createTrackedURL, MEMBERSHIP_FORM_URL, SUBSCRIBE_URL, USE_OF_FUNDS_URL } from './createTrackedURL'; import PageWPDE from '@src/page/PageWPDE'; import { TrackerWPDE } from '@src/tracking/TrackerWPDE'; import eventMap from './event_map.wpde'; @@ -41,8 +40,15 @@ const app = createVueApp( BannerConductor, { bannerCategory: 'fundraisingThankyou', bannerProps: { settings: createThankYouSettings( new IntegerDe(), page.getThankYouCampaignParameters() ), - subscribeURL: createTrackedURL( SUBSCRIBE_URL, page.getTracking(), impressionCount, Locales.DE ), - useOfFundsURL: createTrackedURL( USE_OF_FUNDS_URL, page.getTracking(), impressionCount, Locales.DE ) + subscribeURL: createTrackedURL( SUBSCRIBE_URL, page.getTracking(), impressionCount, { locale: Locales.DE } ), + useOfFundsURL: createTrackedURL( USE_OF_FUNDS_URL, page.getTracking(), impressionCount, { locale: Locales.DE } ), + membershipWithAmountURL: createTrackedURL( MEMBERSHIP_FORM_URL, page.getTracking(), impressionCount, { + locale: Locales.DE, + interval: '1', + fee: '500', + type: 'sustaining' + } ), + membershipWithoutAmountURL: createTrackedURL( MEMBERSHIP_FORM_URL, page.getTracking(), impressionCount, { locale: Locales.DE, type: 'sustaining' } ) }, resizeHandler: new WindowResizeHandler(), banner: Banner, @@ -51,7 +57,6 @@ const app = createVueApp( BannerConductor, { app.use( TranslationPlugin, translator ); app.provide( 'tracker', tracker ); -app.provide( 'formActions', new TrackingMembershipFormActions( page.getTracking(), impressionCount, Locales.DE ) ); app.provide( 'timer', new WindowTimer() ); app.mount( page.getBannerContainer() ); diff --git a/banners/thank_you/components/BannerCtrl.de.vue b/banners/thank_you/components/BannerCtrl.de.vue index 15bbe35a2..c690b23f0 100644 --- a/banners/thank_you/components/BannerCtrl.de.vue +++ b/banners/thank_you/components/BannerCtrl.de.vue @@ -1,99 +1,55 @@