From 1ef7d6e25d019c3c947447bd1ac1459cf2a5071a Mon Sep 17 00:00:00 2001 From: Arsentiy Milchakov Date: Wed, 26 Sep 2018 16:10:00 +0300 Subject: [PATCH] [ios] rutaxi is added to ios --- android/res/values/donottranslate.xml | 2 -- android/res/values/strings.xml | 1 + data/strings/strings.txt | 3 +++ .../MWMRoutePreviewTaxiCellType.h | 3 ++- .../RoutePreview/MWMTaxiPreviewDataSource.mm | 11 +++++---- .../RoutePreview/RoutePreviewTaxiCell.swift | 15 ++++++++++-- .../Common/Statistics/StatisticsStrings.h | 1 + iphone/Maps/Core/Routing/MWMRouter.mm | 1 + .../Contents.json | 23 ++++++++++++++++++ .../ic_taxi_logo_rutaxi.png | Bin 0 -> 1714 bytes .../ic_taxi_logo_rutaxi@2x.png | Bin 0 -> 3061 bytes .../ic_taxi_logo_rutaxi@3x.png | Bin 0 -> 4404 bytes .../ar.lproj/Localizable.strings | 2 ++ .../cs.lproj/Localizable.strings | 2 ++ .../da.lproj/Localizable.strings | 2 ++ .../de.lproj/Localizable.strings | 2 ++ .../el.lproj/Localizable.strings | 2 ++ .../en-GB.lproj/Localizable.strings | 2 ++ .../en.lproj/Localizable.strings | 2 ++ .../es.lproj/Localizable.strings | 2 ++ .../fi.lproj/Localizable.strings | 2 ++ .../fr.lproj/Localizable.strings | 2 ++ .../hu.lproj/Localizable.strings | 2 ++ .../id.lproj/Localizable.strings | 2 ++ .../it.lproj/Localizable.strings | 2 ++ .../ja.lproj/Localizable.strings | 2 ++ .../ko.lproj/Localizable.strings | 2 ++ .../nb.lproj/Localizable.strings | 2 ++ .../nl.lproj/Localizable.strings | 2 ++ .../pl.lproj/Localizable.strings | 2 ++ .../pt.lproj/Localizable.strings | 2 ++ .../ro.lproj/Localizable.strings | 2 ++ .../ru.lproj/Localizable.strings | 2 ++ .../sk.lproj/Localizable.strings | 2 ++ .../sv.lproj/Localizable.strings | 2 ++ .../th.lproj/Localizable.strings | 2 ++ .../tr.lproj/Localizable.strings | 2 ++ .../uk.lproj/Localizable.strings | 2 ++ .../vi.lproj/Localizable.strings | 2 ++ .../zh-Hans.lproj/Localizable.strings | 2 ++ .../zh-Hant.lproj/Localizable.strings | 2 ++ iphone/Maps/MAPSME.plist | 1 + iphone/Maps/UI/PlacePage/MWMPlacePageData.mm | 3 +-- .../Maps/UI/PlacePage/MWMPlacePageManager.mm | 1 + .../TaxiCell/MWMPlacePageTaxiProvider.h | 3 ++- .../Content/TaxiCell/PlacePageTaxiCell.swift | 3 +++ .../PlacePageLayout/MWMPlacePageLayout.mm | 6 ++--- 47 files changed, 118 insertions(+), 17 deletions(-) create mode 100644 iphone/Maps/Images.xcassets/ic_taxi_logo_rutaxi.imageset/Contents.json create mode 100644 iphone/Maps/Images.xcassets/ic_taxi_logo_rutaxi.imageset/ic_taxi_logo_rutaxi.png create mode 100644 iphone/Maps/Images.xcassets/ic_taxi_logo_rutaxi.imageset/ic_taxi_logo_rutaxi@2x.png create mode 100644 iphone/Maps/Images.xcassets/ic_taxi_logo_rutaxi.imageset/ic_taxi_logo_rutaxi@3x.png diff --git a/android/res/values/donottranslate.xml b/android/res/values/donottranslate.xml index 09316ee10c..645a4f06d8 100644 --- a/android/res/values/donottranslate.xml +++ b/android/res/values/donottranslate.xml @@ -91,6 +91,4 @@ pref_opt_out_fabric_activated pref_opt_out_mopub pref_opt_out_flurry - - RuTaxi diff --git a/android/res/values/strings.xml b/android/res/values/strings.xml index 49f12db0fd..0a5b405f88 100644 --- a/android/res/values/strings.xml +++ b/android/res/values/strings.xml @@ -1436,6 +1436,7 @@ Server is unavailable The purchase will be completed later. If the error persists, please contact support\@maps.me. Connect to the internet to filter hotels by dates. + RuTaxi Outlets diff --git a/data/strings/strings.txt b/data/strings/strings.txt index 7a07deb69c..aea585c13d 100644 --- a/data/strings/strings.txt +++ b/data/strings/strings.txt @@ -33293,3 +33293,6 @@ fa = دوباره نپرس [offline_fiters_check_in] en = Connect to the internet to filter hotels by dates. ru = Подключитесь к интернету, чтобы выбрать дату заезда и выезда. + + [rutaxi_title] + en = RuTaxi diff --git a/iphone/Maps/Classes/CustomViews/NavigationDashboard/Views/RoutePreview/MWMRoutePreviewTaxiCellType.h b/iphone/Maps/Classes/CustomViews/NavigationDashboard/Views/RoutePreview/MWMRoutePreviewTaxiCellType.h index b0bef993e2..adc6daad1e 100644 --- a/iphone/Maps/Classes/CustomViews/NavigationDashboard/Views/RoutePreview/MWMRoutePreviewTaxiCellType.h +++ b/iphone/Maps/Classes/CustomViews/NavigationDashboard/Views/RoutePreview/MWMRoutePreviewTaxiCellType.h @@ -2,5 +2,6 @@ typedef NS_ENUM(NSInteger, MWMRoutePreviewTaxiCellType) { MWMRoutePreviewTaxiCellTypeTaxi, MWMRoutePreviewTaxiCellTypeUber, MWMRoutePreviewTaxiCellTypeYandex, - MWMRoutePreviewTaxiCellTypeMaxim + MWMRoutePreviewTaxiCellTypeMaxim, + MWMRoutePreviewTaxiCellTypeRutaxi }; diff --git a/iphone/Maps/Classes/CustomViews/NavigationDashboard/Views/RoutePreview/MWMTaxiPreviewDataSource.mm b/iphone/Maps/Classes/CustomViews/NavigationDashboard/Views/RoutePreview/MWMTaxiPreviewDataSource.mm index ed25bf1770..d9221b004f 100644 --- a/iphone/Maps/Classes/CustomViews/NavigationDashboard/Views/RoutePreview/MWMTaxiPreviewDataSource.mm +++ b/iphone/Maps/Classes/CustomViews/NavigationDashboard/Views/RoutePreview/MWMTaxiPreviewDataSource.mm @@ -133,10 +133,10 @@ using namespace taxi; self.type = MWMRoutePreviewTaxiCellTypeMaxim; providerName = kStatMaxim; break; - // Dummy. case taxi::Provider::Type::Rutaxi: - self.type = MWMRoutePreviewTaxiCellTypeMaxim; - providerName = kStatMaxim; + self.type = MWMRoutePreviewTaxiCellTypeRutaxi; + providerName = kStatRutaxi; + break; case taxi::Provider::Type::Count: LOG(LERROR, ("Incorrect taxi provider")); break; @@ -171,8 +171,7 @@ using namespace taxi; case taxi::Provider::Type::Uber: provider = kStatUber; break; case taxi::Provider::Type::Yandex: provider = kStatYandex; break; case taxi::Provider::Type::Maxim: provider = kStatMaxim; break; - // Dummy. - case taxi::Provider::Type::Rutaxi: provider = kStatMaxim; break; + case taxi::Provider::Type::Rutaxi: provider = kStatRutaxi; break; case taxi::Provider::Count: LOG(LERROR, ("Incorrect taxi provider")); break; } NSString * errorValue = nil; @@ -205,6 +204,7 @@ using namespace taxi; case MWMRoutePreviewTaxiCellTypeUber: url = [NSURL URLWithString:@"uber://"]; break; case MWMRoutePreviewTaxiCellTypeYandex: url = [NSURL URLWithString:@"yandextaxi://"]; break; case MWMRoutePreviewTaxiCellTypeMaxim: url = [NSURL URLWithString:@"maximzakaz://"]; break; + case MWMRoutePreviewTaxiCellTypeRutaxi: url = [NSURL URLWithString:@"rto://"]; break; } return [UIApplication.sharedApplication canOpenURL:url]; } @@ -227,6 +227,7 @@ using namespace taxi; case MWMRoutePreviewTaxiCellTypeUber: type = Provider::Type::Uber; break; case MWMRoutePreviewTaxiCellTypeYandex: type = Provider::Type::Yandex; break; case MWMRoutePreviewTaxiCellTypeMaxim: type = Provider::Type::Maxim; break; + case MWMRoutePreviewTaxiCellTypeRutaxi: type = Provider::Type::Rutaxi; break; } auto links = engine->GetRideRequestLinks(type, productId, m_from, m_to); diff --git a/iphone/Maps/Classes/CustomViews/NavigationDashboard/Views/RoutePreview/RoutePreviewTaxiCell.swift b/iphone/Maps/Classes/CustomViews/NavigationDashboard/Views/RoutePreview/RoutePreviewTaxiCell.swift index 27f9248fce..980cc9079b 100644 --- a/iphone/Maps/Classes/CustomViews/NavigationDashboard/Views/RoutePreview/RoutePreviewTaxiCell.swift +++ b/iphone/Maps/Classes/CustomViews/NavigationDashboard/Views/RoutePreview/RoutePreviewTaxiCell.swift @@ -23,6 +23,7 @@ final class RoutePreviewTaxiCell: UICollectionViewCell { case .uber: return #imageLiteral(resourceName: "icTaxiUber") case .yandex: return #imageLiteral(resourceName: "ic_taxi_logo_yandex") case .maxim: return #imageLiteral(resourceName: "ic_taxi_logo_maksim") + case .rutaxi: return #imageLiteral(resourceName: "ic_taxi_logo_rutaxi") } } @@ -32,6 +33,7 @@ final class RoutePreviewTaxiCell: UICollectionViewCell { case .uber: return title case .yandex: return L("yandex_taxi_title") case .maxim: return L("maxim_taxi_title") + case .rutaxi: return L("rutaxi_title") } } @@ -40,7 +42,8 @@ final class RoutePreviewTaxiCell: UICollectionViewCell { case .taxi: fallthrough case .uber: return price case .yandex: fallthrough - case .maxim: + case .maxim: fallthrough + case .rutaxi: let formatter = NumberFormatter() formatter.numberStyle = .currency formatter.currencyCode = currency @@ -54,7 +57,15 @@ final class RoutePreviewTaxiCell: UICollectionViewCell { } let timeString = { () -> String in - let timeValue = DateComponentsFormatter.etaString(from: TimeInterval(eta)!)! + var timeValue = DateComponentsFormatter.etaString(from: TimeInterval(eta)!)! + switch type { + case .taxi: break + case .uber: break + case .yandex: break + case .maxim: break + case .rutaxi: + timeValue = String(coreFormat: L("place_page_starting_from"), arguments: [timeValue]) + } return String(coreFormat: L("taxi_wait"), arguments: [timeValue]) } diff --git a/iphone/Maps/Common/Statistics/StatisticsStrings.h b/iphone/Maps/Common/Statistics/StatisticsStrings.h index afc0c81d00..10ed41aa0b 100644 --- a/iphone/Maps/Common/Statistics/StatisticsStrings.h +++ b/iphone/Maps/Common/Statistics/StatisticsStrings.h @@ -301,6 +301,7 @@ static NSString * const kStatRoutingTooltipClicked = @"Routing_PlanTooltip_click static NSString * const kStatRoutingRouteStart = @"Routing_Route_start"; static NSString * const kStatRoutingRouteFinish = @"Routing_Route_finish"; static NSString * const kStatRoutingInterrupted = @"interrupted"; +static NSString * const kStatRutaxi = @"Rutaxi"; static NSString * const kStatSave = @"Save"; static NSString * const kStatScenario = @"scenario"; static NSString * const kStatScreen = @"Screen"; diff --git a/iphone/Maps/Core/Routing/MWMRouter.mm b/iphone/Maps/Core/Routing/MWMRouter.mm index 6b3c93e864..5472867f0e 100644 --- a/iphone/Maps/Core/Routing/MWMRouter.mm +++ b/iphone/Maps/Core/Routing/MWMRouter.mm @@ -130,6 +130,7 @@ void logPointEvent(MWMRoutePoint * point, NSString * eventType) case MWMRoutePreviewTaxiCellTypeUber: provider = kStatUber; break; case MWMRoutePreviewTaxiCellTypeYandex: provider = kStatYandex; break; case MWMRoutePreviewTaxiCellTypeMaxim: provider = kStatMaxim; break; + case MWMRoutePreviewTaxiCellTypeRutaxi: provider = kStatRutaxi; break; } [Statistics logEvent:eventName diff --git a/iphone/Maps/Images.xcassets/ic_taxi_logo_rutaxi.imageset/Contents.json b/iphone/Maps/Images.xcassets/ic_taxi_logo_rutaxi.imageset/Contents.json new file mode 100644 index 0000000000..1809a31b82 --- /dev/null +++ b/iphone/Maps/Images.xcassets/ic_taxi_logo_rutaxi.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "idiom" : "universal", + "filename" : "ic_taxi_logo_rutaxi.png", + "scale" : "1x" + }, + { + "idiom" : "universal", + "filename" : "ic_taxi_logo_rutaxi@2x.png", + "scale" : "2x" + }, + { + "idiom" : "universal", + "filename" : "ic_taxi_logo_rutaxi@3x.png", + "scale" : "3x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + } +} \ No newline at end of file diff --git a/iphone/Maps/Images.xcassets/ic_taxi_logo_rutaxi.imageset/ic_taxi_logo_rutaxi.png b/iphone/Maps/Images.xcassets/ic_taxi_logo_rutaxi.imageset/ic_taxi_logo_rutaxi.png new file mode 100644 index 0000000000000000000000000000000000000000..e3ec2b1c39d2760cd4c3765b973716c78c032a8b GIT binary patch literal 1714 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 DmtoT- literal 0 HcmV?d00001 diff --git a/iphone/Maps/Images.xcassets/ic_taxi_logo_rutaxi.imageset/ic_taxi_logo_rutaxi@3x.png b/iphone/Maps/Images.xcassets/ic_taxi_logo_rutaxi.imageset/ic_taxi_logo_rutaxi@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..66fc5118aed5eade2a8970e7084c77f0f96abe38 GIT binary patch literal 4404 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 booking maximzakaz + rto LSRequiresIPhoneOS diff --git a/iphone/Maps/UI/PlacePage/MWMPlacePageData.mm b/iphone/Maps/UI/PlacePage/MWMPlacePageData.mm index 8736b5cbe8..ee65e4175e 100644 --- a/iphone/Maps/UI/PlacePage/MWMPlacePageData.mm +++ b/iphone/Maps/UI/PlacePage/MWMPlacePageData.mm @@ -107,8 +107,7 @@ NSString * const kUserDefaultsLatLonAsDMSKey = @"UserDefaultsLatLonAsDMS"; case taxi::Provider::Uber: provider = kStatUber; break; case taxi::Provider::Yandex: provider = kStatYandex; break; case taxi::Provider::Maxim: provider = kStatMaxim; break; - // Dummy. - case taxi::Provider::Rutaxi: provider = kStatMaxim; break; + case taxi::Provider::Rutaxi: provider = kStatRutaxi; break; case taxi::Provider::Count: LOG(LERROR, ("Incorrect taxi provider")); break; } [Statistics logEvent:kStatPlacepageTaxiShow withParameters:@{ @"provider" : provider }]; diff --git a/iphone/Maps/UI/PlacePage/MWMPlacePageManager.mm b/iphone/Maps/UI/PlacePage/MWMPlacePageManager.mm index aa4dd950fa..f1772fdb22 100644 --- a/iphone/Maps/UI/PlacePage/MWMPlacePageManager.mm +++ b/iphone/Maps/UI/PlacePage/MWMPlacePageManager.mm @@ -352,6 +352,7 @@ void logSponsoredEvent(MWMPlacePageData * data, NSString * eventName) case MWMPlacePageTaxiProviderUber: providerString = kStatUber; break; case MWMPlacePageTaxiProviderYandex: providerString = kStatYandex; break; case MWMPlacePageTaxiProviderMaxim: providerString = kStatMaxim; break; + case MWMPlacePageTaxiProviderRutaxi: providerString = kStatRutaxi; break; } [Statistics logEvent:kStatPlacePageTaxiClick withParameters:@{kStatProvider : providerString, kStatTags : data.statisticsTags}]; diff --git a/iphone/Maps/UI/PlacePage/PlacePageLayout/Content/TaxiCell/MWMPlacePageTaxiProvider.h b/iphone/Maps/UI/PlacePage/PlacePageLayout/Content/TaxiCell/MWMPlacePageTaxiProvider.h index c4566106ee..7bddd23ef7 100644 --- a/iphone/Maps/UI/PlacePage/PlacePageLayout/Content/TaxiCell/MWMPlacePageTaxiProvider.h +++ b/iphone/Maps/UI/PlacePage/PlacePageLayout/Content/TaxiCell/MWMPlacePageTaxiProvider.h @@ -2,5 +2,6 @@ typedef NS_ENUM(NSInteger, MWMPlacePageTaxiProvider) { MWMPlacePageTaxiProviderTaxi, MWMPlacePageTaxiProviderUber, MWMPlacePageTaxiProviderYandex, - MWMPlacePageTaxiProviderMaxim + MWMPlacePageTaxiProviderMaxim, + MWMPlacePageTaxiProviderRutaxi }; diff --git a/iphone/Maps/UI/PlacePage/PlacePageLayout/Content/TaxiCell/PlacePageTaxiCell.swift b/iphone/Maps/UI/PlacePage/PlacePageLayout/Content/TaxiCell/PlacePageTaxiCell.swift index 11baaed3ea..0326b01b8e 100644 --- a/iphone/Maps/UI/PlacePage/PlacePageLayout/Content/TaxiCell/PlacePageTaxiCell.swift +++ b/iphone/Maps/UI/PlacePage/PlacePageLayout/Content/TaxiCell/PlacePageTaxiCell.swift @@ -40,6 +40,9 @@ final class PlacePageTaxiCell: MWMTableViewCell { case .maxim: icon.image = #imageLiteral(resourceName: "ic_taxi_logo_maksim") title.text = L("maxim_taxi_title") + case .rutaxi: + icon.image = #imageLiteral(resourceName: "ic_taxi_logo_rutaxi") + title.text = L("rutaxi_title") } } diff --git a/iphone/Maps/UI/PlacePage/PlacePageLayout/MWMPlacePageLayout.mm b/iphone/Maps/UI/PlacePage/PlacePageLayout/MWMPlacePageLayout.mm index b9b5cce8e8..2a801e5a1e 100644 --- a/iphone/Maps/UI/PlacePage/PlacePageLayout/MWMPlacePageLayout.mm +++ b/iphone/Maps/UI/PlacePage/PlacePageLayout/MWMPlacePageLayout.mm @@ -386,8 +386,7 @@ map const kMetaInfoCells = { case taxi::Provider::Uber: type = MWMPlacePageTaxiProviderUber; break; case taxi::Provider::Yandex: type = MWMPlacePageTaxiProviderYandex; break; case taxi::Provider::Maxim: type = MWMPlacePageTaxiProviderMaxim; break; - // Dummy. - case taxi::Provider::Rutaxi: type = MWMPlacePageTaxiProviderMaxim; break; + case taxi::Provider::Rutaxi: type = MWMPlacePageTaxiProviderRutaxi; break; case taxi::Provider::Count: LOG(LERROR, ("Incorrect taxi provider")); break; } [c configWithType:type delegate:delegate]; @@ -630,8 +629,7 @@ map const kMetaInfoCells = { case taxi::Provider::Uber: provider = kStatUber; break; case taxi::Provider::Yandex: provider = kStatYandex; break; case taxi::Provider::Maxim: provider = kStatMaxim; break; - // Dummy. - case taxi::Provider::Rutaxi: provider = kStatMaxim; break; + case taxi::Provider::Rutaxi: provider = kStatRutaxi; break; case taxi::Provider::Count: LOG(LERROR, ("Incorrect taxi provider")); break; } [Statistics logEvent:kStatPlacepageTaxiShow