From e377368d0f713faf957c05f8db2caa237adc9768 Mon Sep 17 00:00:00 2001 From: mykhailosizov Date: Wed, 6 Oct 2021 13:49:21 +0300 Subject: [PATCH 1/4] added pricing formatting --- vast.go | 3 +++ 1 file changed, 3 insertions(+) diff --git a/vast.go b/vast.go index 6d6703b..fa04663 100644 --- a/vast.go +++ b/vast.go @@ -782,6 +782,9 @@ func (v *VAST) formatVastStrings() { if inline.AdTitle != nil { inline.AdTitle.Name = formatVastString(inline.AdTitle.Name) } + if inline.Pricing != "" { + inline.Pricing = formatVastString(inline.Pricing) + } for i := range inline.Impressions { imp := &inline.Impressions[i] imp.URI = formatVastString(imp.URI) From f7144227b30a48643c696cdffe46e9f959a85c50 Mon Sep 17 00:00:00 2001 From: mykhailosizov Date: Wed, 6 Oct 2021 14:50:24 +0300 Subject: [PATCH 2/4] added CreativeCompanionAds formatting --- vast.go | 93 ++++++++++++++++++++++++++++++++++++--------------------- 1 file changed, 59 insertions(+), 34 deletions(-) diff --git a/vast.go b/vast.go index fa04663..f77fe3c 100644 --- a/vast.go +++ b/vast.go @@ -785,45 +785,17 @@ func (v *VAST) formatVastStrings() { if inline.Pricing != "" { inline.Pricing = formatVastString(inline.Pricing) } + if inline.Description != "" { + inline.Description = formatVastString(inline.Description) + } for i := range inline.Impressions { imp := &inline.Impressions[i] imp.URI = formatVastString(imp.URI) } for _, creative := range ad.InLine.Creatives { - if creative.Linear != nil { - linear := creative.Linear - for i := range linear.TrackingEvents { - track := &linear.TrackingEvents[i] - track.URI = formatVastString(track.URI) - } - if linear.VideoClicks != nil { - for i := range linear.VideoClicks.ClickThroughs { - click := &linear.VideoClicks.ClickThroughs[i] - click.URI = formatVastString(click.URI) - } - for i := range linear.VideoClicks.ClickTrackings { - click := &linear.VideoClicks.ClickTrackings[i] - click.URI = formatVastString(click.URI) - } - - for i := range linear.VideoClicks.ClickTrackings { - click := &linear.VideoClicks.ClickTrackings[i] - click.URI = formatVastString(click.URI) - } - } - for i := range linear.MediaFiles { - media := &linear.MediaFiles[i] - media.fixMediaFileAttrs(v.mediaFileDefaultHeight, v.mediaFileDefaultWidth) - media.URI = formatVastString(media.URI) - } - } - if creative.NonLinearAds != nil { - nonLinears := creative.NonLinearAds - for i := range nonLinears.TrackingEvents { - track := &nonLinears.TrackingEvents[i] - track.URI = formatVastString(track.URI) - } - } + v.formatCreativeLinear(creative.Linear) + v.formatCreativeCompanionAds(creative.CompanionAds) + v.formatCreativeNonLinearAds(creative.NonLinearAds) } for i := range inline.Error { err := &inline.Error[i] @@ -831,3 +803,56 @@ func (v *VAST) formatVastStrings() { } } } + +func (v *VAST) formatCreativeLinear(linear *Linear) { + if linear == nil { + return + } + for i := range linear.TrackingEvents { + track := &linear.TrackingEvents[i] + track.URI = formatVastString(track.URI) + } + if linear.VideoClicks != nil { + for i := range linear.VideoClicks.ClickThroughs { + click := &linear.VideoClicks.ClickThroughs[i] + click.URI = formatVastString(click.URI) + } + for i := range linear.VideoClicks.ClickTrackings { + click := &linear.VideoClicks.ClickTrackings[i] + click.URI = formatVastString(click.URI) + } + + for i := range linear.VideoClicks.ClickTrackings { + click := &linear.VideoClicks.ClickTrackings[i] + click.URI = formatVastString(click.URI) + } + } + for i := range linear.MediaFiles { + media := &linear.MediaFiles[i] + media.fixMediaFileAttrs(v.mediaFileDefaultHeight, v.mediaFileDefaultWidth) + media.URI = formatVastString(media.URI) + } +} + +func (v *VAST) formatCreativeCompanionAds(companionAds *CompanionAds) { + if companionAds == nil { + return + } + for i := range companionAds.Companions { + companion := &companionAds.Companions[i] + companion.CompanionClickThrough.URI = formatVastString(companion.CompanionClickThrough.URI) + for _, click := range companion.CompanionClickTracking { + click.URI = formatVastString(click.URI) + } + } +} + +func (v *VAST) formatCreativeNonLinearAds(nonLinearAds *NonLinearAds) { + if nonLinearAds == nil { + return + } + for i := range nonLinearAds.TrackingEvents { + track := &nonLinearAds.TrackingEvents[i] + track.URI = formatVastString(track.URI) + } +} From 1936d44bb6b27abfce3814ea3bf1155ddaa1cadb Mon Sep 17 00:00:00 2001 From: mykhailosizov Date: Wed, 6 Oct 2021 15:00:17 +0300 Subject: [PATCH 3/4] changed generic formatting --- vast.go | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/vast.go b/vast.go index f77fe3c..fe4196c 100644 --- a/vast.go +++ b/vast.go @@ -788,6 +788,12 @@ func (v *VAST) formatVastStrings() { if inline.Description != "" { inline.Description = formatVastString(inline.Description) } + if inline.Extensions != nil { + for i := range inline.Extensions.Extensions { + extension := &inline.Extensions.Extensions[i] + extension.Data = bytes.TrimSpace(extension.Data) + } + } for i := range inline.Impressions { imp := &inline.Impressions[i] imp.URI = formatVastString(imp.URI) @@ -808,6 +814,9 @@ func (v *VAST) formatCreativeLinear(linear *Linear) { if linear == nil { return } + if linear.AdParameters != nil { + linear.AdParameters.Parameters = bytes.TrimSpace(linear.AdParameters.Parameters) + } for i := range linear.TrackingEvents { track := &linear.TrackingEvents[i] track.URI = formatVastString(track.URI) @@ -841,6 +850,11 @@ func (v *VAST) formatCreativeCompanionAds(companionAds *CompanionAds) { for i := range companionAds.Companions { companion := &companionAds.Companions[i] companion.CompanionClickThrough.URI = formatVastString(companion.CompanionClickThrough.URI) + companion.StaticResource.URI = formatVastString(companion.StaticResource.URI) + for j := range companion.TrackingEvents { + track := &companion.TrackingEvents[j] + track.URI = formatVastString(track.URI) + } for _, click := range companion.CompanionClickTracking { click.URI = formatVastString(click.URI) } From 1f0253a894ed75c995d2af6b014855e8050fc7c7 Mon Sep 17 00:00:00 2001 From: mykhailosizov Date: Mon, 11 Oct 2021 16:31:15 +0300 Subject: [PATCH 4/4] removed panic cause --- vast.go | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/vast.go b/vast.go index fe4196c..27ef926 100644 --- a/vast.go +++ b/vast.go @@ -849,8 +849,12 @@ func (v *VAST) formatCreativeCompanionAds(companionAds *CompanionAds) { } for i := range companionAds.Companions { companion := &companionAds.Companions[i] - companion.CompanionClickThrough.URI = formatVastString(companion.CompanionClickThrough.URI) - companion.StaticResource.URI = formatVastString(companion.StaticResource.URI) + if companion.CompanionClickThrough != nil { + companion.CompanionClickThrough.URI = formatVastString(companion.CompanionClickThrough.URI) + } + if companion.StaticResource != nil { + companion.StaticResource.URI = formatVastString(companion.StaticResource.URI) + } for j := range companion.TrackingEvents { track := &companion.TrackingEvents[j] track.URI = formatVastString(track.URI)