| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329 |
- #import "BTUIKLocalizedString.h"
- @implementation BTUIKLocalizedString
- static NSArray *customTranslations;
- + (NSBundle *)localizationBundle {
- static NSString * bundleName = @"Braintree-UIKit-Localization";
- if ([[NSLocale preferredLanguages] count] > 0) {
- NSString *language = [[NSLocale preferredLanguages] firstObject];
- // Ignore region portion of local ID
- language = [[[[language componentsSeparatedByString:@"_"] firstObject] componentsSeparatedByString:@"-"] firstObject];
- if (customTranslations && [customTranslations containsObject:language]) {
- return [NSBundle mainBundle];
- }
- }
- NSString *localizationBundlePath = [[NSBundle mainBundle] pathForResource:bundleName ofType:@"bundle"];
- if (!localizationBundlePath) {
- localizationBundlePath = [[NSBundle bundleForClass:[self class]] pathForResource:bundleName ofType:@"bundle"];
- }
-
- return localizationBundlePath ? [NSBundle bundleWithPath:localizationBundlePath] : [NSBundle mainBundle];
- }
- + (NSString *)localizationTable {
- return @"BTUI";
- }
- #pragma mark Localization helpers
- + (void)setCustomTranslations:(NSArray *)locales {
- customTranslations = [locales copy];
- }
- + (NSString *)insertIntoLocalizedString:(NSString *)string replacement:(NSString* )replacement {
- return [self insertIntoLocalizedString:string replacement:replacement token:@"%s"];
- }
- + (NSString *)insertIntoLocalizedString:(NSString *)string replacement:(NSString* )replacement token:(NSString *)token {
- return [string stringByReplacingOccurrencesOfString:token withString:replacement];
- }
- #pragma mark Localizations
- + (NSString *)CARD_DETAILS_LABEL {
- return NSLocalizedStringWithDefaultValue(@"CARD_DETAILS_LABEL", [self localizationTable], [self localizationBundle], @"Card number is required", @"CARD_DETAILS_LABEL");
- }
- + (NSString *)ENTER_CARD_DETAILS_HELP_LABEL {
- return NSLocalizedStringWithDefaultValue(@"ENTER_CARD_DETAILS_HELP_LABEL", [self localizationTable], [self localizationBundle], @"Enter your card details starting with the card number.", @"ENTER_CARD_DETAILS_HELP_LABEL");
- }
- + (NSString *)VALID_CARD_ERROR_LABEL {
- return NSLocalizedStringWithDefaultValue(@"VALID_CARD_ERROR_LABEL", [self localizationTable], [self localizationBundle], @"You must provide a valid Card Number.", @"VALID_CARD_ERROR_LABEL");
- }
- + (NSString *)CARD_REQUIRED {
- return NSLocalizedStringWithDefaultValue(@"CARD_REQUIRED", [self localizationTable], [self localizationBundle], @"Card number is required", @"CARD_REQUIRED");
- }
- + (NSString *)CARD_INVALID {
- return NSLocalizedStringWithDefaultValue(@"CARD_INVALID", [self localizationTable], [self localizationBundle], @"Card number is invalid", @"CARD_INVALID");
- }
- + (NSString *)EXPIRATION_REQUIRED {
- return NSLocalizedStringWithDefaultValue(@"EXPIRATION_REQUIRED", [self localizationTable], [self localizationBundle], @"Expiration date is required", @"EXPIRATION_REQUIRED");
- }
- + (NSString *)EXPIRATION_INVALID {
- return NSLocalizedStringWithDefaultValue(@"EXPIRATION_INVALID", [self localizationTable], [self localizationBundle], @"Expiration date is invalid", @"EXPIRATION_INVALID");
- }
- + (NSString *)CVV_REQUIRED {
- return NSLocalizedStringWithDefaultValue(@"CVV_REQUIRED", [self localizationTable], [self localizationBundle], @"%s is required", @"CVV_REQUIRED");
- }
- + (NSString *)CVV_INVALID {
- return NSLocalizedStringWithDefaultValue(@"CVV_INVALID", [self localizationTable], [self localizationBundle], @"%s is invalid", @"CVV_INVALID");
- }
- + (NSString *)POSTAL_CODE_HELP_LABEL {
- return NSLocalizedStringWithDefaultValue(@"POSTAL_CODE_HELP_LABEL", [self localizationTable], [self localizationBundle], @"You must provide a valid Postal Code.", @"POSTAL_CODE_HELP_LABEL");
- }
- + (NSString *)POSTAL_CODE_REQUIRED {
- return NSLocalizedStringWithDefaultValue(@"POSTAL_CODE_REQUIRED", [self localizationTable], [self localizationBundle], @"Postal code is required", @"POSTAL_CODE_REQUIRED");
- }
- + (NSString *)POSTAL_CODE_INVALID {
- return NSLocalizedStringWithDefaultValue(@"POSTAL_CODE_INVALID", [self localizationTable], [self localizationBundle], @"Postal code is invalid", @"POSTAL_CODE_INVALID");
- }
- + (NSString *)COUNTRY_CODE_REQUIRED {
- return NSLocalizedStringWithDefaultValue(@"COUNTRY_CODE_REQUIRED", [self localizationTable], [self localizationBundle], @"Country code is required", @"COUNTRY_CODE_REQUIRED");
- }
- + (NSString *)COUNTRY_CODE_INVALID {
- return NSLocalizedStringWithDefaultValue(@"COUNTRY_CODE_INVALID", [self localizationTable], [self localizationBundle], @"Country code is invalid", @"COUNTRY_CODE_INVALID");
- }
- + (NSString *)MOBILE_NUMBER_REQUIRED {
- return NSLocalizedStringWithDefaultValue(@"MOBILE_NUMBER_REQUIRED", [self localizationTable], [self localizationBundle], @"Mobile number is required", @"MOBILE_NUMBER_REQUIRED");
- }
- + (NSString *)MOBILE_NUMBER_INVALID {
- return NSLocalizedStringWithDefaultValue(@"MOBILE_NUMBER_INVALID", [self localizationTable], [self localizationBundle], @"Mobile number is invalid", @"MOBILE_NUMBER_INVALID");
- }
- + (NSString *)ENROLLMENT_WITH_SMS_HELP_LABEL {
- return NSLocalizedStringWithDefaultValue(@"ENROLLMENT_WITH_SMS_HELP_LABEL", [self localizationTable], [self localizationBundle], @"Enrollment may be required for this card. An SMS code will be sent to this number if required.", @"ENROLLMENT_WITH_SMS_HELP_LABEL");
- }
- + (NSString *)SMS_CODE_REQUIRED {
- return NSLocalizedStringWithDefaultValue(@"SMS_CODE_REQUIRED", [self localizationTable], [self localizationBundle], @"SMS code is required", @"SMS_CODE_REQUIRED");
- }
- + (NSString *)SMS_CODE_INVALID {
- return NSLocalizedStringWithDefaultValue(@"SMS_CODE_INVALID", [self localizationTable], [self localizationBundle], @"SMS code is invalid", @"SMS_CODE_INVALID");
- }
- + (NSString *)CANCEL_ACTION {
- return NSLocalizedStringWithDefaultValue(@"CANCEL_ACTION", [self localizationTable], [self localizationBundle], @"Cancel", @"CANCEL_ACTION");
- }
- + (NSString *)RETRY_ACTION {
- return NSLocalizedStringWithDefaultValue(@"RETRY_ACTION", [self localizationTable], [self localizationBundle], @"Retry", @"RETRY_ACTION");
- }
- + (NSString *)CONTINUE_ACTION {
- return NSLocalizedStringWithDefaultValue(@"CONTINUE_ACTION", [self localizationTable], [self localizationBundle], @"Continue", @"CONTINUE_ACTION");
- }
- + (NSString *)ADD_CARD_ACTION {
- return NSLocalizedStringWithDefaultValue(@"ADD_CARD_ACTION", [self localizationTable], [self localizationBundle], @"Add Card", @"ADD_CARD_ACTION");
- }
- + (NSString *)DONE_ACTION {
- return NSLocalizedStringWithDefaultValue(@"DONE_ACTION", [self localizationTable], [self localizationBundle], @"Done", @"DONE_ACTION");
- }
- + (NSString *)EDIT_ACTION {
- return NSLocalizedStringWithDefaultValue(@"EDIT_ACTION", [self localizationTable], [self localizationBundle], @"Edit", @"EDIT_ACTION");
- }
- + (NSString *)NEXT_ACTION {
- return NSLocalizedStringWithDefaultValue(@"NEXT_ACTION", [self localizationTable], [self localizationBundle], @"Next", @"NEXT_ACTION");
- }
- + (NSString *)TOP_LEVEL_ERROR_ALERT_VIEW_OK_BUTTON_TEXT {
- return NSLocalizedStringWithDefaultValue(@"TOP_LEVEL_ERROR_ALERT_VIEW_OK_BUTTON_TEXT", [self localizationTable], [self localizationBundle], @"OK", @"TOP_LEVEL_ERROR_ALERT_VIEW_OK_BUTTON_TEXT");
- }
- + (NSString *)EDIT_PAYMENT_METHOD {
- return NSLocalizedStringWithDefaultValue(@"EDIT_PAYMENT_METHOD", [self localizationTable], [self localizationBundle], @"Edit Payment Methods", @"EDIT_PAYMENT_METHOD");
- }
- + (NSString *)THERE_WAS_AN_ERROR {
- return NSLocalizedStringWithDefaultValue(@"THERE_WAS_AN_ERROR", [self localizationTable], [self localizationBundle], @"Sorry, there was an error.", @"THERE_WAS_AN_ERROR");
- }
- + (NSString *)REVIEW_AND_TRY_AGAIN {
- return NSLocalizedStringWithDefaultValue(@"REVIEW_AND_TRY_AGAIN", [self localizationTable], [self localizationBundle], @"Please review your information and try again.", @"REVIEW_AND_TRY_AGAIN");
- }
- + (NSString *)INVALID_LABEL {
- return NSLocalizedStringWithDefaultValue(@"INVALID_LABEL", [self localizationTable], [self localizationBundle], @"Invalid:", @"INVALID_LABEL");
- }
- + (NSString *)YEAR_LABEL {
- return NSLocalizedStringWithDefaultValue(@"YEAR_LABEL", [self localizationTable], [self localizationBundle], @"Year", @"YEAR_LABEL");
- }
- + (NSString *)MONTH_LABEL {
- return NSLocalizedStringWithDefaultValue(@"MONTH_LABEL", [self localizationTable], [self localizationBundle], @"Month", @"MONTH_LABEL");
- }
- + (NSString *)OTHER_LABEL {
- return NSLocalizedStringWithDefaultValue(@"OTHER_LABEL", [self localizationTable], [self localizationBundle], @"Other", @"OTHER_LABEL");
- }
- + (NSString *)CREDIT_OR_DEBIT_CARD_LABEL {
- return NSLocalizedStringWithDefaultValue(@"CREDIT_OR_DEBIT_CARD_LABEL", [self localizationTable], [self localizationBundle], @"Credit or Debit Card", @"CREDIT_OR_DEBIT_CARD_LABEL");
- }
- + (NSString *)RECENT_LABEL {
- return NSLocalizedStringWithDefaultValue(@"RECENT_LABEL", [self localizationTable], [self localizationBundle], @"Recent", @"RECENT_LABEL");
- }
- + (NSString *)SELECT_PAYMENT_LABEL {
- return NSLocalizedStringWithDefaultValue(@"SELECT_PAYMENT_LABEL", [self localizationTable], [self localizationBundle], @"Select Payment Method", @"SELECT_PAYMENT_LABEL");
- }
- + (NSString *)CONFIRM_ENROLLMENT_LABEL {
- return NSLocalizedStringWithDefaultValue(@"CONFIRM_ENROLLMENT_LABEL", [self localizationTable], [self localizationBundle], @"Confirm Enrollment", @"CONFIRM_ENROLLMENT_LABEL");
- }
- + (NSString *)CONFIRM_ACTION {
- return NSLocalizedStringWithDefaultValue(@"CONFIRM_ACTION", [self localizationTable], [self localizationBundle], @"Confirm", @"CONFIRM_ACTION");
- }
- + (NSString *)ENTER_SMS_CODE_SENT_HELP_LABEL {
- return NSLocalizedStringWithDefaultValue(@"ENTER_SMS_CODE_SENT_HELP_LABEL", [self localizationTable], [self localizationBundle], @"Enter the SMS code sent to %s", @"ENTER_SMS_CODE_SENT_HELP_LABEL");
- }
- + (NSString *)SMS_CODE_LABEL {
- return NSLocalizedStringWithDefaultValue(@"SMS_CODE_LABEL", [self localizationTable], [self localizationBundle], @"SMS Code", @"SMS_CODE_LABEL");
- }
- + (NSString *)CARD_TYPE_GENERIC_CARD {
- return NSLocalizedStringWithDefaultValue(@"CARD_TYPE_GENERIC_CARD", [self localizationTable], [self localizationBundle], @"Card", @"CARD_TYPE_GENERIC_CARD");
- }
- + (NSString *)MOBILE_COUNTRY_CODE_LABEL {
- return NSLocalizedStringWithDefaultValue(@"MOBILE_COUNTRY_CODE_LABEL", [self localizationTable], [self localizationBundle], @"Country Code", @"MOBILE_COUNTRY_CODE_LABEL");
- }
- + (NSString *)SECURITY_CODE_LABEL {
- return NSLocalizedStringWithDefaultValue(@"SECURITY_CODE_LABEL", [self localizationTable], [self localizationBundle], @"Security Code", @"SECURITY_CODE_LABEL");
- }
- + (NSString *)CVV_FIELD_PLACEHOLDER {
- return NSLocalizedStringWithDefaultValue(@"CVV_FIELD_PLACEHOLDER", [self localizationTable], [self localizationBundle], @"CVV", @"CVV_FIELD_PLACEHOLDER");
- }
- + (NSString *)CVC_FIELD_PLACEHOLDER {
- return NSLocalizedStringWithDefaultValue(@"CVC_FIELD_PLACEHOLDER", [self localizationTable], [self localizationBundle], @"CVC", @"CVC_FIELD_PLACEHOLDER");
- }
- + (NSString *)CID_FIELD_PLACEHOLDER {
- return NSLocalizedStringWithDefaultValue(@"CID_FIELD_PLACEHOLDER", [self localizationTable], [self localizationBundle], @"CID", @"CID_FIELD_PLACEHOLDER");
- }
- + (NSString *)CVN_FIELD_PLACEHOLDER {
- return NSLocalizedStringWithDefaultValue(@"CVN_FIELD_PLACEHOLDER", [self localizationTable], [self localizationBundle], @"CVN", @"CVN_FIELD_PLACEHOLDER");
- }
- + (NSString *)POSTAL_CODE_PLACEHOLDER {
- return NSLocalizedStringWithDefaultValue(@"POSTAL_CODE_PLACEHOLDER", [self localizationTable], [self localizationBundle], @"Postal Code", @"POSTAL_CODE_PLACEHOLDER");
- }
- + (NSString *)MOBILE_NUMBER_LABEL {
- return NSLocalizedStringWithDefaultValue(@"MOBILE_NUMBER_LABEL", [self localizationTable], [self localizationBundle], @"Mobile Number", @"MOBILE_NUMBER_LABEL");
- }
- + (NSString *)EXPIRATION_DATE_LABEL {
- return NSLocalizedStringWithDefaultValue(@"EXPIRATION_DATE_LABEL", [self localizationTable], [self localizationBundle], @"Expiration Date", @"EXPIRATION_DATE_LABEL");
- }
- + (NSString *)CARD_NUMBER_PLACEHOLDER {
- return NSLocalizedStringWithDefaultValue(@"CARD_NUMBER_PLACEHOLDER", [self localizationTable], [self localizationBundle], @"Card Number", @"CARD_NUMBER_PLACEHOLDER");
- }
- + (NSString *)EXPIRY_PLACEHOLDER_FOUR_DIGIT_YEAR {
- return NSLocalizedStringWithDefaultValue(@"EXPIRY_PLACEHOLDER_FOUR_DIGIT_YEAR", [self localizationTable], [self localizationBundle], @"MM / YYYY", @"EXPIRY_PLACEHOLDER_FOUR_DIGIT_YEAR");
- }
- + (NSString *)EXPIRY_PLACEHOLDER_TWO_DIGIT_YEAR {
- return NSLocalizedStringWithDefaultValue(@"EXPIRY_PLACEHOLDER_TWO_DIGIT_YEAR", [self localizationTable], [self localizationBundle], @"MM / YY", @"EXPIRY_PLACEHOLDER_TWO_DIGIT_YEAR");
- }
- + (NSString *)CARDHOLDER_NAME_LABEL {
- return NSLocalizedStringWithDefaultValue(@"CARDHOLDER_NAME_LABEL", [self localizationTable], [self localizationBundle], @"Cardholder Name", @"CARDHOLDER_NAME_LABEL");
- }
- + (NSString *)SAVE_CARD_LABEL {
- return NSLocalizedStringWithDefaultValue(@"SAVE_CARD_LABEL", [self localizationTable], [self localizationBundle], @"Save card", @"SAVE_CARD_LABEL");
- }
- + (NSString *)PAYPAL {
- return NSLocalizedStringWithDefaultValue(@"PAYPAL", [self localizationTable], [self localizationBundle], @"PayPal", @"PAYPAL");
- }
- + (NSString *)CARD_TYPE_AMERICAN_EXPRESS {
- return NSLocalizedStringWithDefaultValue(@"CARD_TYPE_AMERICAN_EXPRESS", [self localizationTable], [self localizationBundle], @"American Express", @"CARD_TYPE_AMERICAN_EXPRESS");
- }
- + (NSString *)CARD_TYPE_DISCOVER {
- return NSLocalizedStringWithDefaultValue(@"CARD_TYPE_DISCOVER", [self localizationTable], [self localizationBundle], @"Discover", @"CARD_TYPE_DISCOVER");
- }
- + (NSString *)CARD_TYPE_DINERS_CLUB {
- return NSLocalizedStringWithDefaultValue(@"CARD_TYPE_DINERS_CLUB", [self localizationTable], [self localizationBundle], @"Diners Club", @"CARD_TYPE_DINERS_CLUB");
- }
- + (NSString *)CARD_TYPE_MASTER_CARD {
- return NSLocalizedStringWithDefaultValue(@"CARD_TYPE_MASTER_CARD", [self localizationTable], [self localizationBundle], @"MasterCard", @"CARD_TYPE_MASTER_CARD");
- }
- + (NSString *)CARD_TYPE_VISA {
- return NSLocalizedStringWithDefaultValue(@"CARD_TYPE_VISA", [self localizationTable], [self localizationBundle], @"Visa", @"CARD_TYPE_VISA");
- }
- + (NSString *)CARD_TYPE_JCB {
- return NSLocalizedStringWithDefaultValue(@"CARD_TYPE_JCB", [self localizationTable], [self localizationBundle], @"JCB", @"CARD_TYPE_JCB");
- }
- + (NSString *)CARD_TYPE_MAESTRO {
- return NSLocalizedStringWithDefaultValue(@"CARD_TYPE_MAESTRO", [self localizationTable], [self localizationBundle], @"Maestro", @"CARD_TYPE_MAESTRO");
- }
- + (NSString *)CARD_TYPE_UNION_PAY {
- return NSLocalizedStringWithDefaultValue(@"CARD_TYPE_UNION_PAY", [self localizationTable], [self localizationBundle], @"UnionPay", @"CARD_TYPE_UNION_PAY");
- }
- + (NSString *)CARD_TYPE_HIPER {
- return NSLocalizedStringWithDefaultValue(@"CARD_TYPE_HIPER", [self localizationTable], [self localizationBundle], @"Hiper", @"CARD_TYPE_HIPER");
- }
- + (NSString *)CARD_TYPE_HIPERCARD {
- return NSLocalizedStringWithDefaultValue(@"CARD_TYPE_HIPERCARD", [self localizationTable], [self localizationBundle], @"Hipercard", @"CARD_TYPE_HIPERCARD");
- }
- + (NSString *)BRANDING_COINBASE {
- return NSLocalizedStringWithDefaultValue(@"BRANDING_COINBASE", [self localizationTable], [self localizationBundle], @"Coinbase", @"BRANDING_COINBASE");
- }
- + (NSString *)BRANDING_VENMO {
- return NSLocalizedStringWithDefaultValue(@"BRANDING_VENMO", [self localizationTable], [self localizationBundle], @"Venmo", @"BRANDING_VENMO");
- }
- + (NSString *)BRANDING_APPLE_PAY {
- return NSLocalizedStringWithDefaultValue(@"BRANDING_APPLE_PAY", [self localizationTable], [self localizationBundle], @"Apple Pay", @"BRANDING_APPLE_PAY");
- }
- + (NSString *)USE_DIFFERENT_PHONE_NUMBER_ACTION {
- return NSLocalizedStringWithDefaultValue(@"USE_DIFFERENT_PHONE_NUMBER_ACTION", [self localizationTable], [self localizationBundle], @"Use a different phone number", @"USE_DIFFERENT_PHONE_NUMBER_ACTION");
- }
- + (NSString *)CARD_NOT_ACCEPTED_ERROR_LABEL {
- return NSLocalizedStringWithDefaultValue(@"CARD_NOT_ACCEPTED_ERROR_LABEL", [self localizationTable], [self localizationBundle], @"Card not accepted", @"CARD_NOT_ACCEPTED_ERROR_LABEL");
- }
- #pragma mark Development Strings (usually not localized)
- + (NSString *)DEV_SAMPLE_SMS_CODE_TITLE {
- return NSLocalizedStringWithDefaultValue(@"DEV_SAMPLE_SMS_CODE_TITLE", [self localizationTable], [self localizationBundle], @"Sandbox Sample SMS Code", @"DEV_SAMPLE_SMS_CODE_TITLE");
- }
- + (NSString *)DEV_SAMPLE_SMS_CODE_INFO {
- return NSLocalizedStringWithDefaultValue(@"DEV_SAMPLE_SMS_CODE_INFO", [self localizationTable], [self localizationBundle], @"Any code passes, example: 12345 \n\nIncorrect code is: 999999", @"DEV_SAMPLE_SMS_CODE_INFO");
- }
- @end
|