@@ -115,47 +115,45 @@ function getImpressionEventParams(configObj, experimentId, variationId) {
115
115
* @param {Object } logger Logger object
116
116
* @return {Object } Conversion event params
117
117
*/
118
- function getConversionEventParams ( configObj , eventKey , eventTags , experimentsToVariationMap , logger ) {
119
-
120
- var conversionEventParams = [ ] ;
118
+ function getVisitorSnapshot ( configObj , eventKey , eventTags , experimentsToVariationMap , logger ) {
119
+ var snapshot = {
120
+ decisions : [ ] ,
121
+ events : [ ]
122
+ } ;
121
123
122
124
fns . forOwn ( experimentsToVariationMap , function ( variationId , experimentId ) {
123
-
124
125
var decision = {
125
- decisions : [ {
126
- campaign_id : projectConfig . getLayerId ( configObj , experimentId ) ,
127
- experiment_id : experimentId ,
128
- variation_id : variationId ,
129
- } ] ,
130
- events : [ ] ,
126
+ campaign_id : projectConfig . getLayerId ( configObj , experimentId ) ,
127
+ experiment_id : experimentId ,
128
+ variation_id : variationId ,
131
129
} ;
132
130
133
- var eventDict = {
134
- entity_id : projectConfig . getEventId ( configObj , eventKey ) ,
135
- timestamp : fns . currentTimestamp ( ) ,
136
- uuid : fns . uuid ( ) ,
137
- key : eventKey ,
138
- } ;
131
+ snapshot . decisions . push ( decision ) ;
132
+ } ) ;
139
133
140
- if ( eventTags ) {
141
- var revenue = eventTagUtils . getRevenueValue ( eventTags , logger ) ;
142
- if ( revenue ) {
143
- eventDict [ enums . RESERVED_EVENT_KEYWORDS . REVENUE ] = revenue ;
144
- }
134
+ var eventDict = {
135
+ entity_id : projectConfig . getEventId ( configObj , eventKey ) ,
136
+ timestamp : fns . currentTimestamp ( ) ,
137
+ uuid : fns . uuid ( ) ,
138
+ key : eventKey ,
139
+ } ;
145
140
146
- var eventValue = eventTagUtils . getEventValue ( eventTags , logger ) ;
147
- if ( eventValue ) {
148
- eventDict [ enums . RESERVED_EVENT_KEYWORDS . VALUE ] = eventValue ;
149
- }
141
+ if ( eventTags ) {
142
+ var revenue = eventTagUtils . getRevenueValue ( eventTags , logger ) ;
143
+ if ( revenue ) {
144
+ eventDict [ enums . RESERVED_EVENT_KEYWORDS . REVENUE ] = revenue ;
145
+ }
150
146
151
- eventDict [ 'tags' ] = eventTags ;
147
+ var eventValue = eventTagUtils . getEventValue ( eventTags , logger ) ;
148
+ if ( eventValue ) {
149
+ eventDict [ enums . RESERVED_EVENT_KEYWORDS . VALUE ] = eventValue ;
152
150
}
153
- decision . events = [ eventDict ] ;
154
151
155
- conversionEventParams . push ( decision ) ;
156
- } ) ;
152
+ eventDict [ 'tags' ] = eventTags ;
153
+ }
154
+ snapshot . events . push ( eventDict ) ;
157
155
158
- return conversionEventParams ;
156
+ return snapshot ;
159
157
}
160
158
161
159
module . exports = {
@@ -210,13 +208,13 @@ module.exports = {
210
208
var commonParams = getCommonEventParams ( options ) ;
211
209
conversionEvent . url = ENDPOINT ;
212
210
213
- var conversionEventParams = getConversionEventParams ( options . configObj ,
214
- options . eventKey ,
215
- options . eventTags ,
216
- options . experimentsToVariationMap ,
217
- options . logger ) ;
211
+ var snapshot = getVisitorSnapshot ( options . configObj ,
212
+ options . eventKey ,
213
+ options . eventTags ,
214
+ options . experimentsToVariationMap ,
215
+ options . logger ) ;
218
216
219
- commonParams . visitors [ 0 ] . snapshots = conversionEventParams ;
217
+ commonParams . visitors [ 0 ] . snapshots = [ snapshot ] ;
220
218
conversionEvent . params = commonParams ;
221
219
222
220
return conversionEvent ;
0 commit comments