From bb482f60d51febe12ca26c6c70c802b4aff608fe Mon Sep 17 00:00:00 2001 From: Arsentiy Milchakov Date: Tue, 3 Nov 2020 12:33:10 +0300 Subject: [PATCH] [ads][ios] additional ads into download on map dialog are added --- .../CoreApi/PlacePageData/Ad/CoreBanner.h | 5 +++ .../CoreApi/PlacePageData/Ad/CoreBanner.mm | 10 ++++++ .../PartnerBannerViewModel.swift | 30 ++++++++++++++++++ .../Classes/Widgets/MWMMapDownloadDialog.mm | 15 +++++++-- .../Common/Statistics/StatisticsStrings.h | 5 +++ iphone/Maps/Core/Ads/MWMBannerHelpers.h | 8 +++-- .../Maps/Core/Theme/ParntersStyleSheet.swift | 8 +++++ .../PartnersBanner/Contents.json | 6 ++-- .../ic_logo_arsenal.imageset/Contents.json | 21 ++++++++++++ .../ic_logo_arsenal.pdf | Bin 0 -> 5414 bytes .../partners_api.xcodeproj/project.pbxproj | 8 +++++ 11 files changed, 108 insertions(+), 8 deletions(-) create mode 100644 iphone/Maps/Images.xcassets/PartnersBanner/ic_logo_arsenal.imageset/Contents.json create mode 100644 iphone/Maps/Images.xcassets/PartnersBanner/ic_logo_arsenal.imageset/ic_logo_arsenal.pdf diff --git a/iphone/CoreApi/CoreApi/PlacePageData/Ad/CoreBanner.h b/iphone/CoreApi/CoreApi/PlacePageData/Ad/CoreBanner.h index c2711b367c..aac3ec5219 100644 --- a/iphone/CoreApi/CoreApi/PlacePageData/Ad/CoreBanner.h +++ b/iphone/CoreApi/CoreApi/PlacePageData/Ad/CoreBanner.h @@ -12,6 +12,11 @@ typedef NS_ENUM(NSInteger, MWMBannerType) { MWMBannerTypeBookmarkCatalog, MWMBannerTypeMastercardSberbank, MWMBannerTypeCitymobil, + MWMBannerTypeArsenalMedic, + MWMBannerTypeArsenalFlat, + MWMBannerTypeArsenalInsuranceCrimea, + MWMBannerTypeArsenalInsuranceRussia, + MWMBannerTypeArsenalInsuranceWorld, }; NS_ASSUME_NONNULL_BEGIN diff --git a/iphone/CoreApi/CoreApi/PlacePageData/Ad/CoreBanner.mm b/iphone/CoreApi/CoreApi/PlacePageData/Ad/CoreBanner.mm index 480b843ebe..35d89177e8 100644 --- a/iphone/CoreApi/CoreApi/PlacePageData/Ad/CoreBanner.mm +++ b/iphone/CoreApi/CoreApi/PlacePageData/Ad/CoreBanner.mm @@ -24,6 +24,16 @@ static MWMBannerType ConvertBannerType(ads::Banner::Type coreType) { return MWMBannerTypeMastercardSberbank; case ads::Banner::Type::Citymobil: return MWMBannerTypeCitymobil; + case ads::Banner::Type::ArsenalMedic: + return MWMBannerTypeArsenalMedic; + case ads::Banner::Type::ArsenalFlat: + return MWMBannerTypeArsenalFlat; + case ads::Banner::Type::ArsenalInsuranceCrimea: + return MWMBannerTypeArsenalInsuranceCrimea; + case ads::Banner::Type::ArsenalInsuranceRussia: + return MWMBannerTypeArsenalInsuranceRussia; + case ads::Banner::Type::ArsenalInsuranceWorld: + return MWMBannerTypeArsenalInsuranceWorld; } } diff --git a/iphone/Maps/Classes/Widgets/DownloadBanner/PartnerBannerViewModel.swift b/iphone/Maps/Classes/Widgets/DownloadBanner/PartnerBannerViewModel.swift index 17955e5ac7..78ce2afd1c 100644 --- a/iphone/Maps/Classes/Widgets/DownloadBanner/PartnerBannerViewModel.swift +++ b/iphone/Maps/Classes/Widgets/DownloadBanner/PartnerBannerViewModel.swift @@ -44,6 +44,36 @@ extension PartnerBannerViewModel { button: L("sberbank_map_downloader_cta_button"), style: "Sberbank", type: .multiple) + case .arsenalMedic: + self.init(images: ["ic_logo_arsenal"], + message: L("arsenal_telemed_map_downloader_title"), + button: L("arsenal_cta_button"), + style: "Arsenal", + type: .single) + case . arsenalFlat: + self.init(images: ["ic_logo_arsenal"], + message: L("arsenal_flat_map_downloader_title"), + button: L("arsenal_cta_button"), + style: "Arsenal", + type: .single) + case . arsenalInsuranceCrimea: + self.init(images: ["ic_logo_arsenal"], + message: L("arsenal_crimea_map_downloader_title"), + button: L("arsenal_cta_button"), + style: "Arsenal", + type: .single) + case . arsenalInsuranceRussia: + self.init(images: ["ic_logo_arsenal"], + message: L("arsenal_russia_map_downloader_title"), + button: L("arsenal_cta_button"), + style: "Arsenal", + type: .single) + case . arsenalInsuranceWorld: + self.init(images: ["ic_logo_arsenal"], + message: L("arsenal_abroad_map_downloader_title"), + button: L("arsenal_cta_button"), + style: "Arsenal", + type: .single) default: return nil } diff --git a/iphone/Maps/Classes/Widgets/MWMMapDownloadDialog.mm b/iphone/Maps/Classes/Widgets/MWMMapDownloadDialog.mm index 04d279561c..9758df002f 100644 --- a/iphone/Maps/Classes/Widgets/MWMMapDownloadDialog.mm +++ b/iphone/Maps/Classes/Widgets/MWMMapDownloadDialog.mm @@ -280,8 +280,12 @@ using namespace storage; case MWMBannerTypeMts: return kStatMts; case MWMBannerTypeSkyeng: return kStatSkyeng; case MWMBannerTypeBookmarkCatalog: return kStatMapsmeGuides; - case MWMBannerTypeMastercardSberbank: - return kStatMastercardSberbank; + case MWMBannerTypeMastercardSberbank: return kStatMastercardSberbank; + case MWMBannerTypeArsenalMedic: return kStatArsenalMedic; + case MWMBannerTypeArsenalFlat: return kStatArsenalFlat; + case MWMBannerTypeArsenalInsuranceCrimea: return kStatArsenalInsuranceCrimea; + case MWMBannerTypeArsenalInsuranceRussia: return kStatArsenalInsuranceRussia; + case MWMBannerTypeArsenalInsuranceWorld: return kStatArsenalInsuranceWorld; default: return @(""); } } @@ -297,7 +301,12 @@ using namespace storage; case MWMBannerTypeTinkoffInsurance: case MWMBannerTypeMts: case MWMBannerTypeSkyeng: - case MWMBannerTypeMastercardSberbank: { + case MWMBannerTypeMastercardSberbank: + case MWMBannerTypeArsenalMedic: + case MWMBannerTypeArsenalFlat: + case MWMBannerTypeArsenalInsuranceCrimea: + case MWMBannerTypeArsenalInsuranceRussia: + case MWMBannerTypeArsenalInsuranceWorld: { __weak __typeof(self) ws = self; MWMVoidBlock onClick = ^{ [ws bannerAction]; diff --git a/iphone/Maps/Common/Statistics/StatisticsStrings.h b/iphone/Maps/Common/Statistics/StatisticsStrings.h index b65761035b..4ab1f4ec90 100644 --- a/iphone/Maps/Common/Statistics/StatisticsStrings.h +++ b/iphone/Maps/Common/Statistics/StatisticsStrings.h @@ -309,6 +309,11 @@ static NSString *const kStatTurnOn = @"turn_on"; static NSString *const kStatMts = @"MTS"; static NSString *const kStatSkyeng = @"Skyeng"; static NSString *const kStatMastercardSberbank = @"MastercardSberbank"; +static NSString *const kStatArsenalMedic = @"Arsenal_telemed"; +static NSString *const kStatArsenalFlat = @"Arsenal_flat"; +static NSString *const kStatArsenalInsuranceCrimea = @"Arsenal_crimea"; +static NSString *const kStatArsenalInsuranceRussia = @"Arsenal_russia"; +static NSString *const kStatArsenalInsuranceWorld = @"Arsenal_abroad"; static NSString *const kStatSubway = @"subway"; static NSString *const kStatMenu = @"menu"; static NSString *const kStatMethod = @"method"; diff --git a/iphone/Maps/Core/Ads/MWMBannerHelpers.h b/iphone/Maps/Core/Ads/MWMBannerHelpers.h index 1bd489a6c9..265183aa85 100644 --- a/iphone/Maps/Core/Ads/MWMBannerHelpers.h +++ b/iphone/Maps/Core/Ads/MWMBannerHelpers.h @@ -19,9 +19,13 @@ 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; + case ads::Banner::Type::MastercardSberbank: return MWMBannerTypeMastercardSberbank; case ads::Banner::Type::Citymobil: return MWMBannerTypeCitymobil; + case ads::Banner::Type::ArsenalMedic: return MWMBannerTypeArsenalMedic; + case ads::Banner::Type::ArsenalFlat: return MWMBannerTypeArsenalFlat; + case ads::Banner::Type::ArsenalInsuranceCrimea: return MWMBannerTypeArsenalInsuranceCrimea; + case ads::Banner::Type::ArsenalInsuranceRussia: return MWMBannerTypeArsenalInsuranceRussia; + case ads::Banner::Type::ArsenalInsuranceWorld: return MWMBannerTypeArsenalInsuranceWorld; } } diff --git a/iphone/Maps/Core/Theme/ParntersStyleSheet.swift b/iphone/Maps/Core/Theme/ParntersStyleSheet.swift index 16d9593a93..637e804156 100644 --- a/iphone/Maps/Core/Theme/ParntersStyleSheet.swift +++ b/iphone/Maps/Core/Theme/ParntersStyleSheet.swift @@ -31,6 +31,14 @@ class PartnersStyleSheet: IStyleSheet { s.cornerRadius = 14 s.clip = true } + + theme.add(styleName: "Arsenal") { (s) -> (Void) in + s.backgroundColor = UIColor(fromHexString: "93C950") + s.fontColor = .white + s.font = fonts.semibold14 + s.cornerRadius = 14 + s.clip = true + } } } diff --git a/iphone/Maps/Images.xcassets/PartnersBanner/Contents.json b/iphone/Maps/Images.xcassets/PartnersBanner/Contents.json index da4a164c91..73c00596a7 100644 --- a/iphone/Maps/Images.xcassets/PartnersBanner/Contents.json +++ b/iphone/Maps/Images.xcassets/PartnersBanner/Contents.json @@ -1,6 +1,6 @@ { "info" : { - "version" : 1, - "author" : "xcode" + "author" : "xcode", + "version" : 1 } -} \ No newline at end of file +} diff --git a/iphone/Maps/Images.xcassets/PartnersBanner/ic_logo_arsenal.imageset/Contents.json b/iphone/Maps/Images.xcassets/PartnersBanner/ic_logo_arsenal.imageset/Contents.json new file mode 100644 index 0000000000..9ba62b6c45 --- /dev/null +++ b/iphone/Maps/Images.xcassets/PartnersBanner/ic_logo_arsenal.imageset/Contents.json @@ -0,0 +1,21 @@ +{ + "images" : [ + { + "filename" : "ic_logo_arsenal.pdf", + "idiom" : "universal", + "scale" : "1x" + }, + { + "idiom" : "universal", + "scale" : "2x" + }, + { + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/iphone/Maps/Images.xcassets/PartnersBanner/ic_logo_arsenal.imageset/ic_logo_arsenal.pdf b/iphone/Maps/Images.xcassets/PartnersBanner/ic_logo_arsenal.imageset/ic_logo_arsenal.pdf new file mode 100644 index 0000000000000000000000000000000000000000..93940fbfc82e57a7f0c2a254441ce1f71a0a5bf9 GIT binary patch literal 5414 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 XjlK&`X>$8h-*}xJIT*$qJ-Pn^z9+71 literal 0 HcmV?d00001 diff --git a/xcode/partners_api/partners_api.xcodeproj/project.pbxproj b/xcode/partners_api/partners_api.xcodeproj/project.pbxproj index 3a4d05e002..b98da4c201 100644 --- a/xcode/partners_api/partners_api.xcodeproj/project.pbxproj +++ b/xcode/partners_api/partners_api.xcodeproj/project.pbxproj @@ -42,6 +42,8 @@ 3D8DAE7525026B550000513A /* yango_api.hpp in Headers */ = {isa = PBXBuildFile; fileRef = 3D8DAE7325026B540000513A /* yango_api.hpp */; }; 3D8DAE7625026B550000513A /* yango_api.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3D8DAE7425026B550000513A /* yango_api.cpp */; }; 3DA5713420B57358007BDE27 /* booking_params_base.hpp in Headers */ = {isa = PBXBuildFile; fileRef = 3DA5713320B57358007BDE27 /* booking_params_base.hpp */; }; + 3DA5876C25506123002E024C /* arsenal_ads.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3DA5876A25506123002E024C /* arsenal_ads.cpp */; }; + 3DA5876D25506123002E024C /* arsenal_ads.hpp in Headers */ = {isa = PBXBuildFile; fileRef = 3DA5876B25506123002E024C /* arsenal_ads.hpp */; }; 3DA6BCDF2535B52E00DF0DA5 /* citymobil_api.hpp in Headers */ = {isa = PBXBuildFile; fileRef = 3DA6BCDD2535B52E00DF0DA5 /* citymobil_api.hpp */; }; 3DA6BCE02535B52E00DF0DA5 /* citymobil_api.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3DA6BCDE2535B52E00DF0DA5 /* citymobil_api.cpp */; }; 3DA6BCE22535B53C00DF0DA5 /* citymobil_tests.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3DA6BCE12535B53C00DF0DA5 /* citymobil_tests.cpp */; }; @@ -170,6 +172,8 @@ 3D8DAE7325026B540000513A /* yango_api.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = yango_api.hpp; sourceTree = ""; }; 3D8DAE7425026B550000513A /* yango_api.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = yango_api.cpp; sourceTree = ""; }; 3DA5713320B57358007BDE27 /* booking_params_base.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = booking_params_base.hpp; sourceTree = ""; }; + 3DA5876A25506123002E024C /* arsenal_ads.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = arsenal_ads.cpp; sourceTree = ""; }; + 3DA5876B25506123002E024C /* arsenal_ads.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = arsenal_ads.hpp; sourceTree = ""; }; 3DA6BCDD2535B52E00DF0DA5 /* citymobil_api.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = citymobil_api.hpp; sourceTree = ""; }; 3DA6BCDE2535B52E00DF0DA5 /* citymobil_api.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = citymobil_api.cpp; sourceTree = ""; }; 3DA6BCE12535B53C00DF0DA5 /* citymobil_tests.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = citymobil_tests.cpp; sourceTree = ""; }; @@ -302,6 +306,8 @@ 3DBD7BE524251BF000ED9FE8 /* ads */ = { isa = PBXGroup; children = ( + 3DA5876A25506123002E024C /* arsenal_ads.cpp */, + 3DA5876B25506123002E024C /* arsenal_ads.hpp */, 3DA6BCE32538B3B500DF0DA5 /* citymobil_ads.cpp */, 3DA6BCE42538B3B500DF0DA5 /* citymobil_ads.hpp */, 3DCF64A724DC0A0200C49963 /* mastercard_sber_ads.cpp */, @@ -498,6 +504,7 @@ 3D1775A82318198700F8889C /* promo_catalog_types.hpp in Headers */, 3DBD7C1524251BF000ED9FE8 /* bookmark_catalog_ads.hpp in Headers */, 3DCD415420DAB33700143533 /* booking_block_params.hpp in Headers */, + 3DA5876D25506123002E024C /* arsenal_ads.hpp in Headers */, F67E75261DB8F06F00D6741F /* opentable_api.hpp in Headers */, F6B536411DA520E40067EEA5 /* booking_api.hpp in Headers */, 3DBD7C1124251BF000ED9FE8 /* skyeng_ads.hpp in Headers */, @@ -645,6 +652,7 @@ 3D4E997F1FB439300025B48C /* utils.cpp in Sources */, 3D15ACE8214AA1B000F725D5 /* rutaxi_api.cpp in Sources */, 3DBD7B9824112DE100ED9FE8 /* freenow_api.cpp in Sources */, + 3DA5876C25506123002E024C /* arsenal_ads.cpp in Sources */, 3DBD7C0C24251BF000ED9FE8 /* tinkoff_allairlines_ads.cpp in Sources */, 45C380772094C5B400C18D81 /* partners.cpp in Sources */, 3DBD7C1E24251C1100ED9FE8 /* tinkoff_insurance_tests.cpp in Sources */,