[ads][ios] data layer for mastercard-sberbank banner

This commit is contained in:
Arsentiy Milchakov 2020-08-07 17:19:11 +03:00 committed by Aleksandr Zatsepin
parent d604d5c9de
commit 1d2b600baa
5 changed files with 23 additions and 14 deletions

View file

@ -10,6 +10,7 @@ typedef NS_ENUM(NSInteger, MWMBannerType) {
MWMBannerTypeMts,
MWMBannerTypeSkyeng,
MWMBannerTypeBookmarkCatalog,
MWMBannerTypeMastercardSberbank,
};
NS_ASSUME_NONNULL_BEGIN

View file

@ -20,6 +20,8 @@ static MWMBannerType ConvertBannerType(ads::Banner::Type coreType) {
return MWMBannerTypeSkyeng;
case ads::Banner::Type::BookmarkCatalog:
return MWMBannerTypeBookmarkCatalog;
case ads::Banner::Type::MastercardSberbank:
return MWMBannerTypeMastercardSberbank;
}
}

View file

@ -281,6 +281,8 @@ using namespace storage;
case MWMBannerTypeMts: return kStatMts;
case MWMBannerTypeSkyeng: return kStatSkyeng;
case MWMBannerTypeBookmarkCatalog: return kStatMapsmeGuides;
case MWMBannerTypeMastercardSberbank:
return kStatMastercardSberbank;
default: return @("");
}
}
@ -295,9 +297,10 @@ using namespace storage;
case MWMBannerTypeTinkoffAllAirlines:
case MWMBannerTypeTinkoffInsurance:
case MWMBannerTypeMts:
case MWMBannerTypeSkyeng: {
case MWMBannerTypeSkyeng:
case MWMBannerTypeMastercardSberbank: {
__weak __typeof(self) ws = self;
PartnerBannerViewController *controller = [[PartnerBannerViewController alloc] initWithTapHandler:^{
MWMVoidBlock onClick = ^{
[ws bannerAction];
[Statistics logEvent:kStatDownloaderBannerClick
withParameters:@{
@ -305,13 +308,15 @@ using namespace storage;
kStatProvider: statProvider,
kStatMWMName: @(self->m_countryId.c_str())
}];
}];
[Statistics logEvent:kStatDownloaderBannerShow
withParameters:@{
kStatFrom: kStatMap,
kStatProvider: statProvider,
kStatMWMName: @(self->m_countryId.c_str())
}];
};
// TODO: instantiate correct controller.
if (bannerType == MWMBannerTypeMastercardSberbank) {
self.bannerViewController = nil;
break;
}
PartnerBannerViewController *controller = [[PartnerBannerViewController alloc] initWithTapHandler:onClick];
[controller configWithType:bannerType];
self.bannerViewController = controller;
break;
@ -332,11 +337,6 @@ using namespace storage;
kStatProvider: statProvider
}];
}];
[Statistics logEvent:kStatDownloaderBannerShow
withParameters:@{
kStatFrom: kStatMap,
kStatProvider: statProvider
}];
break;
}
default:
@ -363,6 +363,9 @@ using namespace storage;
self.bannerView.alpha = 1;
[self layoutIfNeeded];
}];
[Statistics
logEvent:kStatDownloaderBannerShow
withParameters:@{kStatFrom: kStatMap, kStatProvider: statProvider, kStatMWMName: @(self->m_countryId.c_str())}];
}
}
}

View file

@ -300,6 +300,7 @@ static NSString *const kStatTinkoffInsurance = @"Tinkoff_Insurance";
static NSString *const kStatTurnOn = @"turn_on";
static NSString *const kStatMts = @"MTS";
static NSString *const kStatSkyeng = @"Skyeng";
static NSString *const kStatMastercardSberbank = @"MastercardSberbank";
static NSString *const kStatSubway = @"subway";
static NSString *const kStatMenu = @"menu";
static NSString *const kStatMethod = @"method";

View file

@ -19,6 +19,8 @@ static inline MWMBannerType MatchBannerType(ads::Banner::Type coreType)
case ads::Banner::Type::Mts: return MWMBannerTypeMts;
case ads::Banner::Type::Skyeng: return MWMBannerTypeSkyeng;
case ads::Banner::Type::BookmarkCatalog: return MWMBannerTypeBookmarkCatalog;
case ads::Banner::Type::MastercardSberbank:
return MWMBannerTypeMastercardSberbank;
}
}