Skip to content

Commit b2cee9d

Browse files
authored
Merge pull request #2227 from digma-ai/feature/promotion
Added promotion
2 parents 6cfdff1 + 7d32296 commit b2cee9d

File tree

13 files changed

+1555
-243
lines changed

13 files changed

+1555
-243
lines changed

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

Lines changed: 16 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -166,14 +166,15 @@ 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()
175175
)
176176
)
177+
postHog?.alias(userId, email)
177178
}
178179

179180
fun registerCustomEvent(eventName: String, tags: Map<String, Any> = mapOf()) {
@@ -670,7 +671,8 @@ class ActivityMonitor(private val project: Project) : Disposable {
670671
INSTALL_STATUS_PROPERTY_NAME to getCurrentInstallStatus(),
671672
ENVIRONMENT_ADDED_PROPERTY_NAME to PersistenceService.getInstance().isEnvironmentAdded(),
672673
LOAD_WARNING_APPEARED_PROPERTY_NAME to PersistenceService.getInstance().isLoadWarningAppeared(),
673-
JIRA_FIELD_COPIED_PROPERTY_NAME to PersistenceService.getInstance().isJiraFieldCopied()
674+
JIRA_FIELD_COPIED_PROPERTY_NAME to PersistenceService.getInstance().isJiraFieldCopied(),
675+
"user_requested_course" to "false"
674676
)
675677
)
676678
}
@@ -695,7 +697,8 @@ class ActivityMonitor(private val project: Project) : Disposable {
695697
INSTALL_STATUS_PROPERTY_NAME to getCurrentInstallStatus(),
696698
ENVIRONMENT_ADDED_PROPERTY_NAME to PersistenceService.getInstance().isEnvironmentAdded(),
697699
LOAD_WARNING_APPEARED_PROPERTY_NAME to PersistenceService.getInstance().isLoadWarningAppeared(),
698-
JIRA_FIELD_COPIED_PROPERTY_NAME to PersistenceService.getInstance().isJiraFieldCopied()
700+
JIRA_FIELD_COPIED_PROPERTY_NAME to PersistenceService.getInstance().isJiraFieldCopied(),
701+
"user_requested_course" to "false"
699702
)
700703
)
701704
}
@@ -881,11 +884,12 @@ class ActivityMonitor(private val project: Project) : Disposable {
881884
postHog?.identify(
882885
userId,
883886
mapOf(
884-
LOAD_WARNING_APPEARED_PROPERTY_NAME + "_timestamp" to PersistenceService.getInstance().getLoadWarningAppearedTimestamp()
887+
LOAD_WARNING_APPEARED_PROPERTY_NAME + "_timestamp" to PersistenceService.getInstance().getLoadWarningAppearedTimestamp(),
888+
"user_requested_course" to "false"
885889
),
886890
mapOf(
887-
LOAD_WARNING_APPEARED_PROPERTY_NAME to PersistenceService.getInstance().isLoadWarningAppeared()
888-
)
891+
LOAD_WARNING_APPEARED_PROPERTY_NAME to PersistenceService.getInstance().isLoadWarningAppeared(),
892+
),
889893
)
890894

891895
}
@@ -911,7 +915,8 @@ class ActivityMonitor(private val project: Project) : Disposable {
911915
postHog?.identify(
912916
userId,
913917
mapOf(
914-
ENVIRONMENT_ADDED_PROPERTY_NAME + "_timestamp" to PersistenceService.getInstance().getEnvironmentAddedTimestamp()
918+
ENVIRONMENT_ADDED_PROPERTY_NAME + "_timestamp" to PersistenceService.getInstance().getEnvironmentAddedTimestamp(),
919+
"user_requested_course" to "false"
915920
),
916921
mapOf(
917922
ENVIRONMENT_ADDED_PROPERTY_NAME to PersistenceService.getInstance().isEnvironmentAdded()
@@ -943,7 +948,8 @@ class ActivityMonitor(private val project: Project) : Disposable {
943948
postHog?.identify(
944949
userId,
945950
mapOf(
946-
JIRA_FIELD_COPIED_PROPERTY_NAME + "_timestamp" to PersistenceService.getInstance().getJiraFieldCopiedTimestamp()
951+
JIRA_FIELD_COPIED_PROPERTY_NAME + "_timestamp" to PersistenceService.getInstance().getJiraFieldCopiedTimestamp(),
952+
"user_requested_course" to "false"
947953
),
948954
mapOf(
949955
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 {
Lines changed: 10 additions & 0 deletions
Loading
Lines changed: 13 additions & 0 deletions
Loading

0 commit comments

Comments
 (0)