Skip to content

Commit 7bf17d3

Browse files
committed
Added promotion
1 parent 6cfdff1 commit 7bf17d3

File tree

5 files changed

+637
-252
lines changed

5 files changed

+637
-252
lines changed

ide-common/src/main/kotlin/org/digma/intellij/plugin/posthog/ActivityMonitor.kt

Lines changed: 17 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -166,14 +166,16 @@ class ActivityMonitor(private val project: Project) : Disposable {
166166
)
167167
}
168168

169-
fun registerEmail(email: String) {
170-
postHog?.alias(userId, email)
169+
fun registerEmail(email: String, courseRequested: Boolean) {
171170
postHog?.identify(
172171
userId, mapOf(
173172
"email" to getEmailForEvent(),
174-
INSTALL_STATUS_PROPERTY_NAME to getCurrentInstallStatus()
173+
INSTALL_STATUS_PROPERTY_NAME to getCurrentInstallStatus(),
174+
"user_requested_course" to courseRequested.toString()
175+
175176
)
176177
)
178+
postHog?.alias(userId, email)
177179
}
178180

179181
fun registerCustomEvent(eventName: String, tags: Map<String, Any> = mapOf()) {
@@ -670,7 +672,8 @@ class ActivityMonitor(private val project: Project) : Disposable {
670672
INSTALL_STATUS_PROPERTY_NAME to getCurrentInstallStatus(),
671673
ENVIRONMENT_ADDED_PROPERTY_NAME to PersistenceService.getInstance().isEnvironmentAdded(),
672674
LOAD_WARNING_APPEARED_PROPERTY_NAME to PersistenceService.getInstance().isLoadWarningAppeared(),
673-
JIRA_FIELD_COPIED_PROPERTY_NAME to PersistenceService.getInstance().isJiraFieldCopied()
675+
JIRA_FIELD_COPIED_PROPERTY_NAME to PersistenceService.getInstance().isJiraFieldCopied(),
676+
"user_requested_course" to "false"
674677
)
675678
)
676679
}
@@ -695,7 +698,8 @@ class ActivityMonitor(private val project: Project) : Disposable {
695698
INSTALL_STATUS_PROPERTY_NAME to getCurrentInstallStatus(),
696699
ENVIRONMENT_ADDED_PROPERTY_NAME to PersistenceService.getInstance().isEnvironmentAdded(),
697700
LOAD_WARNING_APPEARED_PROPERTY_NAME to PersistenceService.getInstance().isLoadWarningAppeared(),
698-
JIRA_FIELD_COPIED_PROPERTY_NAME to PersistenceService.getInstance().isJiraFieldCopied()
701+
JIRA_FIELD_COPIED_PROPERTY_NAME to PersistenceService.getInstance().isJiraFieldCopied(),
702+
"user_requested_course" to "false"
699703
)
700704
)
701705
}
@@ -881,11 +885,12 @@ class ActivityMonitor(private val project: Project) : Disposable {
881885
postHog?.identify(
882886
userId,
883887
mapOf(
884-
LOAD_WARNING_APPEARED_PROPERTY_NAME + "_timestamp" to PersistenceService.getInstance().getLoadWarningAppearedTimestamp()
888+
LOAD_WARNING_APPEARED_PROPERTY_NAME + "_timestamp" to PersistenceService.getInstance().getLoadWarningAppearedTimestamp(),
889+
"user_requested_course" to "false"
885890
),
886891
mapOf(
887-
LOAD_WARNING_APPEARED_PROPERTY_NAME to PersistenceService.getInstance().isLoadWarningAppeared()
888-
)
892+
LOAD_WARNING_APPEARED_PROPERTY_NAME to PersistenceService.getInstance().isLoadWarningAppeared(),
893+
),
889894
)
890895

891896
}
@@ -911,7 +916,8 @@ class ActivityMonitor(private val project: Project) : Disposable {
911916
postHog?.identify(
912917
userId,
913918
mapOf(
914-
ENVIRONMENT_ADDED_PROPERTY_NAME + "_timestamp" to PersistenceService.getInstance().getEnvironmentAddedTimestamp()
919+
ENVIRONMENT_ADDED_PROPERTY_NAME + "_timestamp" to PersistenceService.getInstance().getEnvironmentAddedTimestamp(),
920+
"user_requested_course" to "false"
915921
),
916922
mapOf(
917923
ENVIRONMENT_ADDED_PROPERTY_NAME to PersistenceService.getInstance().isEnvironmentAdded()
@@ -943,7 +949,8 @@ class ActivityMonitor(private val project: Project) : Disposable {
943949
postHog?.identify(
944950
userId,
945951
mapOf(
946-
JIRA_FIELD_COPIED_PROPERTY_NAME + "_timestamp" to PersistenceService.getInstance().getJiraFieldCopiedTimestamp()
952+
JIRA_FIELD_COPIED_PROPERTY_NAME + "_timestamp" to PersistenceService.getInstance().getJiraFieldCopiedTimestamp(),
953+
"user_requested_course" to "false"
947954
),
948955
mapOf(
949956
JIRA_FIELD_COPIED_PROPERTY_NAME to PersistenceService.getInstance().isJiraFieldCopied()

src/main/kotlin/org/digma/intellij/plugin/ui/jcef/UserRegistrationManager.kt

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,10 +21,12 @@ class UserRegistrationManager(private val project: Project) {
2121

2222
ActivityMonitor.getInstance(project).registerCustomEvent("register local user", registrationMap)
2323
ActivityMonitor.getInstance(project).registerUserAction("local user registered", registrationMap)
24+
val courseRequested = registrationMap["scope"] == "promotion"
25+
2426

2527
registrationMap["email"]?.let { userEmail ->
2628
PersistenceService.getInstance().setUserRegistrationEmail(userEmail)
27-
ActivityMonitor.getInstance(project).registerEmail(userEmail)//override the onboarding email
29+
ActivityMonitor.getInstance(project).registerEmail(userEmail, courseRequested)//override the onboarding email
2830
project.messageBus.syncPublisher(UserRegistrationEvent.USER_REGISTRATION_TOPIC).userRegistered(userEmail)
2931
} ?: ErrorReporter.getInstance().reportError(
3032
project, "UserRegistrationManager.register", "register user email", mapOf(

src/main/kotlin/org/digma/intellij/plugin/ui/wizard/InstallationWizardSidePanelWindowPanel.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,7 @@ import org.digma.intellij.plugin.log.Log
4242
import org.digma.intellij.plugin.persistence.PersistenceService
4343
import org.digma.intellij.plugin.persistence.updateInstallationWizardFlag
4444
import org.digma.intellij.plugin.posthog.ActivityMonitor
45+
import org.digma.intellij.plugin.recentactivity.RecentActivityToolWindowShower
4546
import org.digma.intellij.plugin.ui.MainToolWindowCardsController
4647
import org.digma.intellij.plugin.ui.ToolWindowShower
4748
import org.digma.intellij.plugin.ui.common.isJaegerButtonEnabled
@@ -67,7 +68,6 @@ import org.digma.intellij.plugin.ui.jcef.serializeAndExecuteWindowPostMessageJav
6768
import org.digma.intellij.plugin.ui.jcef.updateDigmaEngineStatus
6869
import org.digma.intellij.plugin.ui.notificationcenter.AppNotificationCenter
6970
import org.digma.intellij.plugin.ui.panels.DisposablePanel
70-
import org.digma.intellij.plugin.recentactivity.RecentActivityToolWindowShower
7171
import org.digma.intellij.plugin.ui.settings.ApplicationUISettingsChangeNotifier
7272
import org.digma.intellij.plugin.ui.settings.SettingsChangeListener
7373
import org.digma.intellij.plugin.ui.settings.Theme
@@ -215,7 +215,7 @@ fun createInstallationWizardSidePanelWindowPanel(project: Project, wizardSkipIns
215215
val email = payload?.email
216216
PersistenceService.getInstance().setUserEmail(email)
217217
if (email != null) {
218-
ActivityMonitor.getInstance(project).registerEmail(email)
218+
ActivityMonitor.getInstance(project).registerEmail(email, false)
219219
}
220220

221221
payload?.productKey?.let {

src/main/resources/webview/main/index.js

Lines changed: 483 additions & 162 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/main/resources/webview/recentactivity/index.js

Lines changed: 132 additions & 77 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)