|
|
@@ -571,13 +571,23 @@ func ClusterDestroyingSuccessTrack(opts *ClusterDestroyingSuccessTrackOpts) segm
|
|
|
// StackLaunchStartOpts are the options for creating a track when a user starts creating a stack
|
|
|
type StackLaunchStartOpts struct {
|
|
|
*ProjectScopedTrackOpts
|
|
|
+
|
|
|
+ Email string
|
|
|
+ FirstName string
|
|
|
+ LastName string
|
|
|
+ CompanyName string
|
|
|
}
|
|
|
|
|
|
// StackLaunchStartTrack returns a track for when a user starts creating a stack
|
|
|
func StackLaunchStartTrack(opts *StackLaunchStartOpts) segmentTrack {
|
|
|
+ additionalProps := make(map[string]interface{})
|
|
|
+ additionalProps["email"] = opts.Email
|
|
|
+ additionalProps["name"] = opts.FirstName + " " + opts.LastName
|
|
|
+ additionalProps["company"] = opts.CompanyName
|
|
|
+
|
|
|
return getSegmentProjectTrack(
|
|
|
opts.ProjectScopedTrackOpts,
|
|
|
- getDefaultSegmentTrack(nil, StackLaunchStart),
|
|
|
+ getDefaultSegmentTrack(additionalProps, StackLaunchStart),
|
|
|
)
|
|
|
}
|
|
|
|
|
|
@@ -585,17 +595,24 @@ func StackLaunchStartTrack(opts *StackLaunchStartOpts) segmentTrack {
|
|
|
type StackLaunchCompleteOpts struct {
|
|
|
*ProjectScopedTrackOpts
|
|
|
|
|
|
- StackName string
|
|
|
+ StackName string
|
|
|
+ Email string
|
|
|
+ FirstName string
|
|
|
+ LastName string
|
|
|
+ CompanyName string
|
|
|
}
|
|
|
|
|
|
// StackLaunchCompleteTrack returns a track for when a user completes creating a stack
|
|
|
func StackLaunchCompleteTrack(opts *StackLaunchCompleteOpts) segmentTrack {
|
|
|
additionalProps := make(map[string]interface{})
|
|
|
additionalProps["stack_name"] = opts.StackName
|
|
|
+ additionalProps["email"] = opts.Email
|
|
|
+ additionalProps["name"] = opts.FirstName + " " + opts.LastName
|
|
|
+ additionalProps["company"] = opts.CompanyName
|
|
|
|
|
|
return getSegmentProjectTrack(
|
|
|
opts.ProjectScopedTrackOpts,
|
|
|
- getDefaultSegmentTrack(nil, StackLaunchComplete),
|
|
|
+ getDefaultSegmentTrack(additionalProps, StackLaunchComplete),
|
|
|
)
|
|
|
}
|
|
|
|
|
|
@@ -603,16 +620,23 @@ func StackLaunchCompleteTrack(opts *StackLaunchCompleteOpts) segmentTrack {
|
|
|
type StackLaunchSuccessOpts struct {
|
|
|
*ProjectScopedTrackOpts
|
|
|
|
|
|
- StackName string
|
|
|
+ StackName string
|
|
|
+ Email string
|
|
|
+ FirstName string
|
|
|
+ LastName string
|
|
|
+ CompanyName string
|
|
|
}
|
|
|
|
|
|
// StackLaunchCompleteTrack returns a track for when a user completes creating a stack
|
|
|
func StackLaunchSuccessTrack(opts *StackLaunchSuccessOpts) segmentTrack {
|
|
|
additionalProps := make(map[string]interface{})
|
|
|
additionalProps["stack_name"] = opts.StackName
|
|
|
+ additionalProps["email"] = opts.Email
|
|
|
+ additionalProps["name"] = opts.FirstName + " " + opts.LastName
|
|
|
+ additionalProps["company"] = opts.CompanyName
|
|
|
|
|
|
return getSegmentProjectTrack(
|
|
|
opts.ProjectScopedTrackOpts,
|
|
|
- getDefaultSegmentTrack(nil, StackLaunchSuccess),
|
|
|
+ getDefaultSegmentTrack(additionalProps, StackLaunchSuccess),
|
|
|
)
|
|
|
}
|