mirror of
https://github.com/TryGhost/Ghost.git
synced 2024-12-27 12:53:13 +03:00
Added listeners for remaining events
refs https://github.com/TryGhost/Team/issues/1054 This adds the missing listeners for the rest of the analytics events we'd like to capture.
This commit is contained in:
parent
9fca7ce8f3
commit
d12f7cd152
@ -1,5 +1,11 @@
|
|||||||
const DomainEvents = require('@tryghost/domain-events');
|
const DomainEvents = require('@tryghost/domain-events');
|
||||||
const {MemberEntryViewEvent} = require('@tryghost/member-events');
|
const {
|
||||||
|
MemberEntryViewEvent,
|
||||||
|
MemberUnsubscribeEvent,
|
||||||
|
MemberSignupEvent,
|
||||||
|
MemberPaidConverstionEvent,
|
||||||
|
MemberPaidCancellationEvent
|
||||||
|
} = require('@tryghost/member-events');
|
||||||
|
|
||||||
const AnalyticEvent = require('./AnalyticEvent');
|
const AnalyticEvent = require('./AnalyticEvent');
|
||||||
|
|
||||||
@ -28,6 +34,60 @@ class EventHandler {
|
|||||||
|
|
||||||
await this.repository.save(event);
|
await this.repository.save(event);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
DomainEvents.subscribe(MemberUnsubscribeEvent, async (ev) => {
|
||||||
|
const event = AnalyticEvent.create({
|
||||||
|
name: 'unsubscribe',
|
||||||
|
memberId: ev.data.memberId,
|
||||||
|
memberStatus: ev.data.memberStatus,
|
||||||
|
entryId: ev.data.entryId,
|
||||||
|
sourceUrl: ev.data.sourceUrl,
|
||||||
|
timestamp: ev.timestamp
|
||||||
|
});
|
||||||
|
|
||||||
|
await this.repository.save(event);
|
||||||
|
});
|
||||||
|
|
||||||
|
DomainEvents.subscribe(MemberSignupEvent, async (ev) => {
|
||||||
|
const event = AnalyticEvent.create({
|
||||||
|
name: 'signup',
|
||||||
|
memberId: ev.data.memberId,
|
||||||
|
memberStatus: 'free',
|
||||||
|
entryId: ev.data.entryId,
|
||||||
|
sourceUrl: ev.data.sourceUrl,
|
||||||
|
timestamp: ev.timestamp
|
||||||
|
});
|
||||||
|
|
||||||
|
await this.repository.save(event);
|
||||||
|
});
|
||||||
|
|
||||||
|
DomainEvents.subscribe(MemberPaidCancellationEvent, async (ev) => {
|
||||||
|
const event = AnalyticEvent.create({
|
||||||
|
name: 'paid_cancellation',
|
||||||
|
memberId: ev.data.memberId,
|
||||||
|
memberStatus: ev.data.memberStatus,
|
||||||
|
entryId: ev.data.entryId,
|
||||||
|
sourceUrl: ev.data.sourceUrl,
|
||||||
|
metadata: ev.data.subscriptionId,
|
||||||
|
timestamp: ev.timestamp
|
||||||
|
});
|
||||||
|
|
||||||
|
await this.repository.save(event);
|
||||||
|
});
|
||||||
|
|
||||||
|
DomainEvents.subscribe(MemberPaidConverstionEvent, async (ev) => {
|
||||||
|
const event = AnalyticEvent.create({
|
||||||
|
name: 'paid_conversion',
|
||||||
|
memberId: ev.data.memberId,
|
||||||
|
memberStatus: ev.data.memberStatus,
|
||||||
|
entryId: ev.data.entryId,
|
||||||
|
sourceUrl: ev.data.sourceUrl,
|
||||||
|
metadata: ev.data.subscriptionId,
|
||||||
|
timestamp: ev.timestamp
|
||||||
|
});
|
||||||
|
|
||||||
|
await this.repository.save(event);
|
||||||
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user