diff --git a/android/res/values-ru/strings.xml b/android/res/values-ru/strings.xml index 47f46f449f..3e279ab471 100644 --- a/android/res/values-ru/strings.xml +++ b/android/res/values-ru/strings.xml @@ -830,4 +830,8 @@ Загрузить через сотовую связь? На некоторых тарифных планах или в роуминге это может привести к значительным расходам. Введите корректный номер дома + Количество этажей (максимум %1$s) + Редактируйте здания высотой максимум %1$s этажей. + Почтовый индекс + Введите корректный почтовый индекс diff --git a/android/res/values/strings.xml b/android/res/values/strings.xml index fce5778725..4d3768d100 100644 --- a/android/res/values/strings.xml +++ b/android/res/values/strings.xml @@ -834,4 +834,6 @@ Download by using a cellular network connection? This could be considerably expensive with some plans or if roaming. Enter correct house number + ZIP Code + Enter correct ZIP Code diff --git a/indexer/editable_map_object.cpp b/indexer/editable_map_object.cpp index 7525191bd3..b8cd947c09 100644 --- a/indexer/editable_map_object.cpp +++ b/indexer/editable_map_object.cpp @@ -9,6 +9,9 @@ namespace osm { +// static +int8_t const EditableMapObject::kMaximumLevelsEditableByUsers = 25; + bool EditableMapObject::IsNameEditable() const { return m_editableProperties.m_name; } bool EditableMapObject::IsAddressEditable() const { return m_editableProperties.m_address; } @@ -185,12 +188,16 @@ void EditableMapObject::SetFlats(string const & flats) m_metadata.Set(feature::Metadata::FMD_FLATS, flats); } +// static +bool EditableMapObject::ValidateBuildingLevels(string const & buildingLevels) +{ + uint64_t levels; + return strings::to_uint64(buildingLevels, levels) && levels <= kMaximumLevelsEditableByUsers; +} + void EditableMapObject::SetBuildingLevels(string const & buildingLevels) { - auto constexpr kMaximumLevelsEditableByUsers = 50; - uint64_t levels; - if (strings::to_uint64(buildingLevels, levels) && levels <= kMaximumLevelsEditableByUsers) - m_metadata.Set(feature::Metadata::FMD_BUILDING_LEVELS, buildingLevels); + m_metadata.Set(feature::Metadata::FMD_BUILDING_LEVELS, buildingLevels); } LocalizedStreet const & EditableMapObject::GetStreet() const { return m_street; } diff --git a/indexer/editable_map_object.hpp b/indexer/editable_map_object.hpp index 8b0e826ca1..eef0ddb55d 100644 --- a/indexer/editable_map_object.hpp +++ b/indexer/editable_map_object.hpp @@ -54,6 +54,8 @@ struct LocalizedStreet class EditableMapObject : public MapObject { public: + static int8_t const kMaximumLevelsEditableByUsers; + bool IsNameEditable() const; bool IsAddressEditable() const; @@ -93,6 +95,7 @@ public: void SetElevation(double ele); void SetWikipedia(string const & wikipedia); void SetFlats(string const & flats); + static bool ValidateBuildingLevels(string const & buildingLevels); void SetBuildingLevels(string const & buildingLevels); /// @param[in] cuisine is a vector of osm cuisine ids. void SetCuisines(vector const & cuisine); diff --git a/iphone/Maps/Classes/Editor/MWMEditorViewController.mm b/iphone/Maps/Classes/Editor/MWMEditorViewController.mm index 7bea4ccb95..421d88e40e 100644 --- a/iphone/Maps/Classes/Editor/MWMEditorViewController.mm +++ b/iphone/Maps/Classes/Editor/MWMEditorViewController.mm @@ -39,25 +39,15 @@ vector const kSectionCategoryCellTypes{MWMPlacePageCellTyp vector const kSectionNameCellTypes{MWMPlacePageCellTypeName}; vector const kSectionAddressCellTypes{ - {MWMPlacePageCellTypeStreet, MWMPlacePageCellTypeBuilding}}; - -vector const kSectionDetailsCellTypes{ - {MWMPlacePageCellTypeOpenHours, MWMPlacePageCellTypePhoneNumber, MWMPlacePageCellTypeWebsite, - MWMPlacePageCellTypeEmail, MWMPlacePageCellTypeCuisine, MWMPlacePageCellTypeWiFi}}; - -using CellTypesSectionMap = pair, MWMEditorSection>; - -vector const kCellTypesSectionMap{ - {kSectionCategoryCellTypes, MWMEditorSectionCategory}, - {kSectionNameCellTypes, MWMEditorSectionName}, - {kSectionAddressCellTypes, MWMEditorSectionAddress}, - {kSectionDetailsCellTypes, MWMEditorSectionDetails}}; + MWMPlacePageCellTypeStreet, MWMPlacePageCellTypeBuilding, MWMPlacePageCellTypeZipCode}; MWMPlacePageCellTypeValueMap const kCellType2ReuseIdentifier{ {MWMPlacePageCellTypeCategory, "MWMEditorCategoryCell"}, {MWMPlacePageCellTypeName, "MWMEditorNameTableViewCell"}, {MWMPlacePageCellTypeStreet, "MWMEditorSelectTableViewCell"}, {MWMPlacePageCellTypeBuilding, "MWMEditorTextTableViewCell"}, + {MWMPlacePageCellTypeZipCode, "MWMEditorTextTableViewCell"}, + {MWMPlacePageCellTypeBuildingLevels, "MWMEditorTextTableViewCell"}, {MWMPlacePageCellTypeOpenHours, "MWMPlacePageOpeningHoursCell"}, {MWMPlacePageCellTypePhoneNumber, "MWMEditorTextTableViewCell"}, {MWMPlacePageCellTypeWebsite, "MWMEditorTextTableViewCell"}, @@ -72,6 +62,57 @@ NSString * reuseIdentifier(MWMPlacePageCellType cellType) ASSERT(haveCell, ()); return haveCell ? @(it->second.c_str()) : @""; } + +vector cellsForProperties(vector const & props) +{ + using namespace osm; + vector res; + for (auto const p : props) + { + switch (p) + { + case Props::OpeningHours: + res.push_back(MWMPlacePageCellTypeOpenHours); + break; + case Props::Phone: + res.push_back(MWMPlacePageCellTypePhoneNumber); + break; + case Props::Website: + res.push_back(MWMPlacePageCellTypeWebsite); + break; + case Props::Email: + res.push_back(MWMPlacePageCellTypeEmail); + break; + case Props::Cuisine: + res.push_back(MWMPlacePageCellTypeCuisine); + break; + case Props::Internet: + res.push_back(MWMPlacePageCellTypeWiFi); + break; + case Props::Wikipedia: + case Props::Fax: + case Props::Stars: + case Props::Operator: + case Props::Elevation: + case Props::Flats: + case Props::BuildingLevels: + break; + } + } + return res; +} + +void registerCellsForTableView(vector const & cells, UITableView * tv) +{ + for (auto const c : cells) + { + NSString * identifier = reuseIdentifier(c); + if (UINib * nib = [UINib nibWithNibName:identifier bundle:nil]) + [tv registerNib:nib forCellReuseIdentifier:identifier]; + else + ASSERT(false, ("Incorrect cell")); + } +} } // namespace @interface MWMEditorViewController() (cell); + [tCell configWithDelegate:self + icon:nil + text:@(m_mapObject.GetPostcode().c_str()) + placeholder:L(@"editor_zip_code") + errorMessage:L(@"error_enter_correct_zip_code") + isValid:isValid + keyboardType:UIKeyboardTypeDefault]; + break; + } + case MWMPlacePageCellTypeBuildingLevels: + { + NSString * placeholder = [NSString stringWithFormat:L(@"editor_storey_number"), + osm::EditableMapObject::kMaximumLevelsEditableByUsers]; + NSString * errorMessage = [NSString stringWithFormat:L(@"error_enter_correct_storey_number"), + osm::EditableMapObject::kMaximumLevelsEditableByUsers]; + MWMEditorTextTableViewCell * tCell = static_cast(cell); + [tCell configWithDelegate:self + icon:nil + text:@(m_mapObject.GetBuildingLevels().c_str()) + placeholder:placeholder + errorMessage:errorMessage + isValid:isValid + keyboardType:UIKeyboardTypeNumberPad]; + break; + } case MWMPlacePageCellTypeCuisine: { MWMEditorSelectTableViewCell * tCell = (MWMEditorSelectTableViewCell *)cell; @@ -385,7 +433,9 @@ NSString * reuseIdentifier(MWMPlacePageCellType cellType) - (UITableViewCell * _Nonnull)tableView:(UITableView * _Nonnull)tableView cellForRowAtIndexPath:(NSIndexPath * _Nonnull)indexPath { NSString * reuseIdentifier = [self cellIdentifierForIndexPath:indexPath]; - return [tableView dequeueReusableCellWithIdentifier:reuseIdentifier]; + UITableViewCell * cell = [tableView dequeueReusableCellWithIdentifier:reuseIdentifier]; + [self fillCell:cell atIndexPath:indexPath]; + return cell; } - (NSInteger)numberOfSectionsInTableView:(UITableView * _Nonnull)tableView @@ -395,8 +445,7 @@ NSString * reuseIdentifier(MWMPlacePageCellType cellType) - (NSInteger)tableView:(UITableView * _Nonnull)tableView numberOfRowsInSection:(NSInteger)section { - MWMEditorSection const sec = m_sections[section]; - return m_cells[sec].size(); + return m_cells[m_sections[section]].size(); } #pragma mark - UITableViewDelegate @@ -404,6 +453,7 @@ NSString * reuseIdentifier(MWMPlacePageCellType cellType) - (CGFloat)tableView:(UITableView * _Nonnull)tableView heightForRowAtIndexPath:(NSIndexPath * _Nonnull)indexPath { NSString * reuseIdentifier = [self cellIdentifierForIndexPath:indexPath]; + UITableViewCell * cell = [self offscreenCellForIdentifier:reuseIdentifier]; // TODO(Vlad, IGrechuhin): It's bad idea to fill cells here. // heightForRowAtIndexPath is called way too often for the table. @@ -428,11 +478,6 @@ NSString * reuseIdentifier(MWMPlacePageCellType cellType) } } -- (void)tableView:(UITableView * _Nonnull)tableView willDisplayCell:(UITableViewCell * _Nonnull)cell forRowAtIndexPath:(NSIndexPath * _Nonnull)indexPath -{ - [self fillCell:cell atIndexPath:indexPath]; -} - - (NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section { switch (m_sections[section]) @@ -525,6 +570,15 @@ NSString * reuseIdentifier(MWMPlacePageCellType cellType) if (!osm::EditableMapObject::ValidateHouseNumber(val)) [self markCellAsInvalid:indexPath]; break; + case MWMPlacePageCellTypeZipCode: + m_mapObject.SetPostcode(val); + // TODO: Validate postcode. + break; + case MWMPlacePageCellTypeBuildingLevels: + m_mapObject.SetBuildingLevels(val); + if (!osm::EditableMapObject::ValidateBuildingLevels(val)) + [self markCellAsInvalid:indexPath]; + break; default: NSAssert(false, @"Invalid field for changeText"); } } diff --git a/iphone/Maps/Classes/Editor/MWMObjectsCategorySelectorController.mm b/iphone/Maps/Classes/Editor/MWMObjectsCategorySelectorController.mm index 274cc24b96..d3d09cbb5e 100644 --- a/iphone/Maps/Classes/Editor/MWMObjectsCategorySelectorController.mm +++ b/iphone/Maps/Classes/Editor/MWMObjectsCategorySelectorController.mm @@ -105,7 +105,7 @@ namespace return c.m_name == category; }); NSAssert(it != all.end(), @"Incorrect category!"); - self.selectedIndexPath = [NSIndexPath indexPathForRow:(it - all.begin()) + self.selectedIndexPath = [NSIndexPath indexPathForRow:(distance(all.begin(), it)) inSection:m_categories.m_lastUsed.empty() ? 0 : 1]; } diff --git a/iphone/Maps/Classes/Editor/Street/MWMStreetEditorViewController.mm b/iphone/Maps/Classes/Editor/Street/MWMStreetEditorViewController.mm index 1cff3d1565..6db6b2e185 100644 --- a/iphone/Maps/Classes/Editor/Street/MWMStreetEditorViewController.mm +++ b/iphone/Maps/Classes/Editor/Street/MWMStreetEditorViewController.mm @@ -59,7 +59,7 @@ namespace } else { - self.selectedStreet = it - m_streets.begin(); + self.selectedStreet = distance(m_streets.begin(), it); } } else diff --git a/iphone/Maps/Classes/MWMPlacePageEntity.h b/iphone/Maps/Classes/MWMPlacePageEntity.h index 0cbf2a1205..d57a70c4df 100644 --- a/iphone/Maps/Classes/MWMPlacePageEntity.h +++ b/iphone/Maps/Classes/MWMPlacePageEntity.h @@ -20,6 +20,8 @@ typedef NS_ENUM(NSUInteger, MWMPlacePageCellType) MWMPlacePageCellTypeName, MWMPlacePageCellTypeStreet, MWMPlacePageCellTypeBuilding, + MWMPlacePageCellTypeZipCode, + MWMPlacePageCellTypeBuildingLevels, MWMPlacePageCellTypeCuisine, MWMPlacePageCellTypeCount }; diff --git a/iphone/Maps/ar.lproj/Localizable.strings b/iphone/Maps/ar.lproj/Localizable.strings index e01b7a5308..cd2d270fc3 100644 --- a/iphone/Maps/ar.lproj/Localizable.strings +++ b/iphone/Maps/ar.lproj/Localizable.strings @@ -1373,3 +1373,9 @@ "download_over_mobile_message" = "قد يكون هذا مكلفا جدا لبعض الخطط أو عند التجوال."; "error_enter_correct_house_number" = "أدخل رقم منزل صحيح"; + + + +"editor_zip_code" = "ZIP Code"; + +"error_enter_correct_zip_code" = "Enter correct ZIP Code"; diff --git a/iphone/Maps/cs.lproj/Localizable.strings b/iphone/Maps/cs.lproj/Localizable.strings index 3b4c0276a1..d8da077270 100644 --- a/iphone/Maps/cs.lproj/Localizable.strings +++ b/iphone/Maps/cs.lproj/Localizable.strings @@ -1373,3 +1373,9 @@ "download_over_mobile_message" = "Toto by mohli být s některými tarify nebo roamingem výrazně dražší."; "error_enter_correct_house_number" = "Zadejte správné číslo domu"; + + + +"editor_zip_code" = "ZIP Code"; + +"error_enter_correct_zip_code" = "Enter correct ZIP Code"; diff --git a/iphone/Maps/da.lproj/Localizable.strings b/iphone/Maps/da.lproj/Localizable.strings index 6b2e01b0f5..013787d9bd 100644 --- a/iphone/Maps/da.lproj/Localizable.strings +++ b/iphone/Maps/da.lproj/Localizable.strings @@ -1373,3 +1373,9 @@ "download_over_mobile_message" = "This could be considerably expensive with some plans or if roaming."; "error_enter_correct_house_number" = "Skriv det rigtige husnummer"; + + + +"editor_zip_code" = "ZIP Code"; + +"error_enter_correct_zip_code" = "Enter correct ZIP Code"; diff --git a/iphone/Maps/de.lproj/Localizable.strings b/iphone/Maps/de.lproj/Localizable.strings index da2035ccac..95cbf23036 100644 --- a/iphone/Maps/de.lproj/Localizable.strings +++ b/iphone/Maps/de.lproj/Localizable.strings @@ -1373,3 +1373,9 @@ "download_over_mobile_message" = "Das könnte mit einigen Tarifen oder beim Roaming sehr teuer werden."; "error_enter_correct_house_number" = "Richtige Hausnummer eingeben"; + + + +"editor_zip_code" = "ZIP Code"; + +"error_enter_correct_zip_code" = "Enter correct ZIP Code"; diff --git a/iphone/Maps/en.lproj/Localizable.strings b/iphone/Maps/en.lproj/Localizable.strings index c224c79af6..200ae129aa 100644 --- a/iphone/Maps/en.lproj/Localizable.strings +++ b/iphone/Maps/en.lproj/Localizable.strings @@ -1373,3 +1373,9 @@ "download_over_mobile_message" = "This could be considerably expensive with some plans or if roaming."; "error_enter_correct_house_number" = "Enter correct house number"; + + + +"editor_zip_code" = "ZIP Code"; + +"error_enter_correct_zip_code" = "Enter correct ZIP Code"; diff --git a/iphone/Maps/es.lproj/Localizable.strings b/iphone/Maps/es.lproj/Localizable.strings index 3c8aad1f00..6beacad1f8 100644 --- a/iphone/Maps/es.lproj/Localizable.strings +++ b/iphone/Maps/es.lproj/Localizable.strings @@ -1373,3 +1373,9 @@ "download_over_mobile_message" = "Podría ser muy caro con ciertos planes o con itinerancia de datos."; "error_enter_correct_house_number" = "Introducir el número de domicilio correcto"; + + + +"editor_zip_code" = "ZIP Code"; + +"error_enter_correct_zip_code" = "Enter correct ZIP Code"; diff --git a/iphone/Maps/fi.lproj/Localizable.strings b/iphone/Maps/fi.lproj/Localizable.strings index 18c31dea34..12d2a711ba 100644 --- a/iphone/Maps/fi.lproj/Localizable.strings +++ b/iphone/Maps/fi.lproj/Localizable.strings @@ -1373,3 +1373,9 @@ "download_over_mobile_message" = "Tämä vaihtoehto saattaa olla huomattavasti kalliimpi tietyillä sopimuksilla tai roaming-yhteydellä."; "error_enter_correct_house_number" = "Syötä oikea talon numero"; + + + +"editor_zip_code" = "ZIP Code"; + +"error_enter_correct_zip_code" = "Enter correct ZIP Code"; diff --git a/iphone/Maps/fr.lproj/Localizable.strings b/iphone/Maps/fr.lproj/Localizable.strings index 0dd418297a..c1fa640173 100644 --- a/iphone/Maps/fr.lproj/Localizable.strings +++ b/iphone/Maps/fr.lproj/Localizable.strings @@ -1373,3 +1373,9 @@ "download_over_mobile_message" = "Cela pourrait être très cher avec certains abonnements ou si vous êtes en déplacement."; "error_enter_correct_house_number" = "Saisir un numéro de maison correct"; + + + +"editor_zip_code" = "ZIP Code"; + +"error_enter_correct_zip_code" = "Enter correct ZIP Code"; diff --git a/iphone/Maps/hu.lproj/Localizable.strings b/iphone/Maps/hu.lproj/Localizable.strings index f9783e6c12..d32aad53f7 100644 --- a/iphone/Maps/hu.lproj/Localizable.strings +++ b/iphone/Maps/hu.lproj/Localizable.strings @@ -1373,3 +1373,9 @@ "download_over_mobile_message" = "Ez jelentősen drága lehet némely előfizetés vagy roaming keretein belül."; "error_enter_correct_house_number" = "Helyes házszámot adjon meg"; + + + +"editor_zip_code" = "ZIP Code"; + +"error_enter_correct_zip_code" = "Enter correct ZIP Code"; diff --git a/iphone/Maps/id.lproj/Localizable.strings b/iphone/Maps/id.lproj/Localizable.strings index 5bec842236..7768086751 100644 --- a/iphone/Maps/id.lproj/Localizable.strings +++ b/iphone/Maps/id.lproj/Localizable.strings @@ -1373,3 +1373,9 @@ "download_over_mobile_message" = "Ini bisa menjadi jauh mahal pada beberapa paket atau jika roaming."; "error_enter_correct_house_number" = "Masukkan nomor rumah yang benar"; + + + +"editor_zip_code" = "ZIP Code"; + +"error_enter_correct_zip_code" = "Enter correct ZIP Code"; diff --git a/iphone/Maps/it.lproj/Localizable.strings b/iphone/Maps/it.lproj/Localizable.strings index e2eeecacdd..f2fd2134e5 100644 --- a/iphone/Maps/it.lproj/Localizable.strings +++ b/iphone/Maps/it.lproj/Localizable.strings @@ -1373,3 +1373,9 @@ "download_over_mobile_message" = "Quest'operazione potrebbe essere piuttosto costosa con alcuni piani o in roaming."; "error_enter_correct_house_number" = "Inserisci numero civico corretto"; + + + +"editor_zip_code" = "ZIP Code"; + +"error_enter_correct_zip_code" = "Enter correct ZIP Code"; diff --git a/iphone/Maps/ja.lproj/Localizable.strings b/iphone/Maps/ja.lproj/Localizable.strings index c33fff7a30..fd9e1a36a7 100644 --- a/iphone/Maps/ja.lproj/Localizable.strings +++ b/iphone/Maps/ja.lproj/Localizable.strings @@ -1373,3 +1373,9 @@ "download_over_mobile_message" = "プランによって、またはローミングしている場合、非常に高額になる可能性があります。"; "error_enter_correct_house_number" = "正しい番地を入力してください"; + + + +"editor_zip_code" = "ZIP Code"; + +"error_enter_correct_zip_code" = "Enter correct ZIP Code"; diff --git a/iphone/Maps/ko.lproj/Localizable.strings b/iphone/Maps/ko.lproj/Localizable.strings index 1ec8b12365..7c9b608898 100644 --- a/iphone/Maps/ko.lproj/Localizable.strings +++ b/iphone/Maps/ko.lproj/Localizable.strings @@ -1373,3 +1373,9 @@ "download_over_mobile_message" = "이는 일부 플랜이나 로밍할 경우에 비싸다고 간주될 수 있습니다."; "error_enter_correct_house_number" = "올바른 집 번호 입력"; + + + +"editor_zip_code" = "ZIP Code"; + +"error_enter_correct_zip_code" = "Enter correct ZIP Code"; diff --git a/iphone/Maps/nb.lproj/Localizable.strings b/iphone/Maps/nb.lproj/Localizable.strings index d698609fae..7de2f3aeb6 100644 --- a/iphone/Maps/nb.lproj/Localizable.strings +++ b/iphone/Maps/nb.lproj/Localizable.strings @@ -1373,3 +1373,9 @@ "download_over_mobile_message" = "This could be considerably expensive with some plans or if roaming."; "error_enter_correct_house_number" = "Skriv riktig husnummer"; + + + +"editor_zip_code" = "ZIP Code"; + +"error_enter_correct_zip_code" = "Enter correct ZIP Code"; diff --git a/iphone/Maps/nl.lproj/Localizable.strings b/iphone/Maps/nl.lproj/Localizable.strings index e9cb068e03..cd93037bb0 100644 --- a/iphone/Maps/nl.lproj/Localizable.strings +++ b/iphone/Maps/nl.lproj/Localizable.strings @@ -1373,3 +1373,9 @@ "download_over_mobile_message" = "Met sommige abonnementen of bij roaming kan dit behoorlijk duur zijn."; "error_enter_correct_house_number" = "Een juist huisnummer invoeren"; + + + +"editor_zip_code" = "ZIP Code"; + +"error_enter_correct_zip_code" = "Enter correct ZIP Code"; diff --git a/iphone/Maps/pl.lproj/Localizable.strings b/iphone/Maps/pl.lproj/Localizable.strings index 9969140d7c..a75547e728 100644 --- a/iphone/Maps/pl.lproj/Localizable.strings +++ b/iphone/Maps/pl.lproj/Localizable.strings @@ -1373,3 +1373,9 @@ "download_over_mobile_message" = "Może to być kosztowne przy niektórych planach taryfowych lub w roamingu."; "error_enter_correct_house_number" = "Wprowadź poprawny numer domu"; + + + +"editor_zip_code" = "ZIP Code"; + +"error_enter_correct_zip_code" = "Enter correct ZIP Code"; diff --git a/iphone/Maps/pt.lproj/Localizable.strings b/iphone/Maps/pt.lproj/Localizable.strings index 2ef3d0375f..d3d004b9c4 100644 --- a/iphone/Maps/pt.lproj/Localizable.strings +++ b/iphone/Maps/pt.lproj/Localizable.strings @@ -1373,3 +1373,9 @@ "download_over_mobile_message" = "Isto pode ser significativamente caro, com alguns planos ou se roaming."; "error_enter_correct_house_number" = "Introduzir um número de casa correto"; + + + +"editor_zip_code" = "ZIP Code"; + +"error_enter_correct_zip_code" = "Enter correct ZIP Code"; diff --git a/iphone/Maps/ro.lproj/Localizable.strings b/iphone/Maps/ro.lproj/Localizable.strings index 5b424da848..f180ecf80f 100644 --- a/iphone/Maps/ro.lproj/Localizable.strings +++ b/iphone/Maps/ro.lproj/Localizable.strings @@ -1373,3 +1373,9 @@ "download_over_mobile_message" = "Aceasta poate fi destul de costisitoare în cazul unor abonamente sau dacă sunteți pe roaming."; "error_enter_correct_house_number" = "Introduceți numărul corect al casei"; + + + +"editor_zip_code" = "ZIP Code"; + +"error_enter_correct_zip_code" = "Enter correct ZIP Code"; diff --git a/iphone/Maps/ru.lproj/Localizable.strings b/iphone/Maps/ru.lproj/Localizable.strings index 5f8718677c..a2fda9bff1 100644 --- a/iphone/Maps/ru.lproj/Localizable.strings +++ b/iphone/Maps/ru.lproj/Localizable.strings @@ -1373,3 +1373,11 @@ "download_over_mobile_message" = "На некоторых тарифных планах или в роуминге это может привести к значительным расходам."; "error_enter_correct_house_number" = "Введите корректный номер дома"; + +"editor_storey_number" = "Количество этажей (максимум %1$@)"; + +"error_enter_correct_storey_number" = "Редактируйте здания высотой максимум %1$@ этажей."; + +"editor_zip_code" = "Почтовый индекс"; + +"error_enter_correct_zip_code" = "Введите корректный почтовый индекс"; diff --git a/iphone/Maps/sk.lproj/Localizable.strings b/iphone/Maps/sk.lproj/Localizable.strings index e26582778a..61ce04ae06 100644 --- a/iphone/Maps/sk.lproj/Localizable.strings +++ b/iphone/Maps/sk.lproj/Localizable.strings @@ -1373,3 +1373,9 @@ "download_over_mobile_message" = "V prípade niektorých plánov alebo použitím roamingu by to mohlo byť značne nákladné."; "error_enter_correct_house_number" = "Zadajte správne číslo domu"; + + + +"editor_zip_code" = "ZIP Code"; + +"error_enter_correct_zip_code" = "Enter correct ZIP Code"; diff --git a/iphone/Maps/sv.lproj/Localizable.strings b/iphone/Maps/sv.lproj/Localizable.strings index a0130dbd1e..7330074f6a 100644 --- a/iphone/Maps/sv.lproj/Localizable.strings +++ b/iphone/Maps/sv.lproj/Localizable.strings @@ -1373,3 +1373,9 @@ "download_over_mobile_message" = "Detta kan vara mycket dyrt med vissa abonnemang och vid roaming."; "error_enter_correct_house_number" = "Ange korrekt husnummer"; + + + +"editor_zip_code" = "ZIP Code"; + +"error_enter_correct_zip_code" = "Enter correct ZIP Code"; diff --git a/iphone/Maps/th.lproj/Localizable.strings b/iphone/Maps/th.lproj/Localizable.strings index a863af09f7..bb04399035 100644 --- a/iphone/Maps/th.lproj/Localizable.strings +++ b/iphone/Maps/th.lproj/Localizable.strings @@ -1373,3 +1373,9 @@ "download_over_mobile_message" = "มันอาจมีราคาสูงมากหากใช้แผนโทรศัพท์บางประเภทหรือหากทำการโรมมิ่ง"; "error_enter_correct_house_number" = "กรอกบ้านเลขที่ให้ถูกต้อง"; + + + +"editor_zip_code" = "ZIP Code"; + +"error_enter_correct_zip_code" = "Enter correct ZIP Code"; diff --git a/iphone/Maps/tr.lproj/Localizable.strings b/iphone/Maps/tr.lproj/Localizable.strings index baa332543d..c2644ab4e2 100644 --- a/iphone/Maps/tr.lproj/Localizable.strings +++ b/iphone/Maps/tr.lproj/Localizable.strings @@ -1373,3 +1373,9 @@ "download_over_mobile_message" = "Bu işlem bazı planlarla ya da dolaşım ise büyük ölçüde pahalı olabilir."; "error_enter_correct_house_number" = "Doğru ev numarası girin"; + + + +"editor_zip_code" = "ZIP Code"; + +"error_enter_correct_zip_code" = "Enter correct ZIP Code"; diff --git a/iphone/Maps/uk.lproj/Localizable.strings b/iphone/Maps/uk.lproj/Localizable.strings index b81b2b415a..d45ce6eca2 100644 --- a/iphone/Maps/uk.lproj/Localizable.strings +++ b/iphone/Maps/uk.lproj/Localizable.strings @@ -1373,3 +1373,9 @@ "download_over_mobile_message" = "Це може бути задорого за деякими планами або за умовами роумінгу."; "error_enter_correct_house_number" = "Введіть правильний номер будинку"; + + + +"editor_zip_code" = "ZIP Code"; + +"error_enter_correct_zip_code" = "Enter correct ZIP Code"; diff --git a/iphone/Maps/vi.lproj/Localizable.strings b/iphone/Maps/vi.lproj/Localizable.strings index 4a368f2cff..9df26cc9bd 100644 --- a/iphone/Maps/vi.lproj/Localizable.strings +++ b/iphone/Maps/vi.lproj/Localizable.strings @@ -1373,3 +1373,9 @@ "download_over_mobile_message" = "Như vậy sẽ rất đắt tiền với một số gói dữ liệu hoặc khi chuyển vùng."; "error_enter_correct_house_number" = "Nhập số nhà chính xác"; + + + +"editor_zip_code" = "ZIP Code"; + +"error_enter_correct_zip_code" = "Enter correct ZIP Code"; diff --git a/iphone/Maps/zh-Hans.lproj/Localizable.strings b/iphone/Maps/zh-Hans.lproj/Localizable.strings index 081952df11..ff4cdba28c 100644 --- a/iphone/Maps/zh-Hans.lproj/Localizable.strings +++ b/iphone/Maps/zh-Hans.lproj/Localizable.strings @@ -1373,3 +1373,9 @@ "download_over_mobile_message" = "用一些方案或漫游的话这可能相当昂贵。"; "error_enter_correct_house_number" = "输入正确的房屋号"; + + + +"editor_zip_code" = "ZIP Code"; + +"error_enter_correct_zip_code" = "Enter correct ZIP Code"; diff --git a/iphone/Maps/zh-Hant.lproj/Localizable.strings b/iphone/Maps/zh-Hant.lproj/Localizable.strings index ef8f71036e..38ff3e40dc 100644 --- a/iphone/Maps/zh-Hant.lproj/Localizable.strings +++ b/iphone/Maps/zh-Hant.lproj/Localizable.strings @@ -1373,3 +1373,9 @@ "download_over_mobile_message" = "用某些方案或漫遊的話這可能相當昂貴。"; "error_enter_correct_house_number" = "輸入正確的門牌號碼"; + + + +"editor_zip_code" = "ZIP Code"; + +"error_enter_correct_zip_code" = "Enter correct ZIP Code"; diff --git a/strings.txt b/strings.txt index f659238e8b..e575f481be 100644 --- a/strings.txt +++ b/strings.txt @@ -16236,3 +16236,21 @@ pl = Wprowadź poprawny numer domu nl = Een juist huisnummer invoeren pt = Introduzir um número de casa correto + + [editor_storey_number] + tags = ios, android + ru = Количество этажей (максимум %1$@) + + [error_enter_correct_storey_number] + tags = ios, android + ru = Редактируйте здания высотой максимум %1$@ этажей. + + [editor_zip_code] + tags = ios, android + en = ZIP Code + ru = Почтовый индекс + + [error_enter_correct_zip_code] + tags = ios, android + en = Enter correct ZIP Code + ru = Введите корректный почтовый индекс