From 84ab631aa3f23855970ef17f5a4560c5999539b9 Mon Sep 17 00:00:00 2001 From: Ingenico ePayments Date: Tue, 19 May 2020 09:54:41 +0200 Subject: [PATCH] Release 1.6.5. --- IngenicoConnectExample/ICAppConstants.h | 2 +- .../ICCardProductViewController.m | 16 ++++++++++++++-- Podfile | 2 +- Podfile.lock | 2 +- 4 files changed, 17 insertions(+), 5 deletions(-) diff --git a/IngenicoConnectExample/ICAppConstants.h b/IngenicoConnectExample/ICAppConstants.h index 9c9bb7b..63ac1b4 100644 --- a/IngenicoConnectExample/ICAppConstants.h +++ b/IngenicoConnectExample/ICAppConstants.h @@ -23,5 +23,5 @@ #define kICBoletoBancarioId @"1503" #define kICBancontactId @"3012" #define kICArvatoIds [NSSet setWithArray:@[@"9000", @"9001"]] -#define kICApplicationIdentifier @"iOS Example Application/v1.6.4" +#define kICApplicationIdentifier @"iOS Example Application/v1.6.5" #endif diff --git a/IngenicoConnectExample/ICCardProductViewController.m b/IngenicoConnectExample/ICCardProductViewController.m index a0ed4c5..8309926 100644 --- a/IngenicoConnectExample/ICCardProductViewController.m +++ b/IngenicoConnectExample/ICCardProductViewController.m @@ -22,6 +22,7 @@ @interface ICCardProductViewController () @property (nonatomic, strong) ICIINDetailsResponse *iinDetailsResponse; @property (strong, nonatomic) NSBundle *sdkBundle; @property (strong, nonatomic) NSArray *cobrands; +@property (strong, nonatomic) NSString *previousEnteredCreditCardNumber; @end @implementation ICCardProductViewController @@ -113,8 +114,7 @@ -(void)formatAndUpdateCharactersFromTextField:(UITextField *)texField cursorPosi ICFormRowTextField *row = [self.formRows objectAtIndex:indexPath.row]; if ([row.paymentProductField.identifier isEqualToString:@"cardNumber"]) { NSString *unmasked = [self.inputData unmaskedValueForField:row.paymentProductField.identifier]; - if (unmasked.length >= 6 && *position <= 7) { - unmasked = [unmasked substringToIndex:6]; + if (unmasked.length >= 6 && [self oneOfFirst8DigitsChangedInText:unmasked]) { [self.session IINDetailsForPartialCreditCardNumber:unmasked context:self.context success:^(ICIINDetailsResponse *response) { self.iinDetailsResponse = response; @@ -144,9 +144,21 @@ -(void)formatAndUpdateCharactersFromTextField:(UITextField *)texField cursorPosi }]; } + _previousEnteredCreditCardNumber = unmasked; } +} + +-(Boolean)oneOfFirst8DigitsChangedInText:(NSString *)currentEnteredCreditCardNumber { + // Add some padding, so we are sure there are 8 characters to compare. + NSString *currentPadded = [currentEnteredCreditCardNumber stringByAppendingString: @"xxxxxxxx"]; + NSString *previousPadded = [_previousEnteredCreditCardNumber stringByAppendingString:@"xxxxxxxx"]; + NSString *currentFirst8 = [currentPadded substringWithRange:NSMakeRange(0, 8)]; + NSString *previousFirst8 = [previousPadded substringWithRange:NSMakeRange(0, 8)]; + + return ![currentFirst8 isEqualToString:previousFirst8]; } + -(void)initializeFormRows { [super initializeFormRows]; NSArray *newFormRows = [self coBrandFormsWithIINDetailsResponse:self.cobrands]; diff --git a/Podfile b/Podfile index a2b1b13..3dd1ff6 100644 --- a/Podfile +++ b/Podfile @@ -6,7 +6,7 @@ target 'IngenicoConnectExample' do # use_frameworks! # Pods for IngenicoConnectExample - pod 'IngenicoConnectSDK', '~> 5.0' + pod 'IngenicoConnectSDK', '~> 5.1' pod 'SVProgressHUD' target 'IngenicoConnectExampleTests' do diff --git a/Podfile.lock b/Podfile.lock index 6f3b61b..ceef9cf 100644 --- a/Podfile.lock +++ b/Podfile.lock @@ -1,5 +1,5 @@ PODS: - - IngenicoConnectSDK (5.0.0): + - IngenicoConnectSDK (5.1.0): - AFNetworking (~> 3.0) - SVProgressHUD (2.2.5)