From 00618e6c4d258c324f4e621fa16ce655db95bf8e Mon Sep 17 00:00:00 2001 From: Hillel Coren Date: Mon, 10 Jul 2017 21:03:35 +0300 Subject: [PATCH] OFX fixes --- app/Libraries/OFX.php | 2 +- app/Services/BankAccountService.php | 11 ++++++++--- resources/views/accounts/bank_account.blade.php | 8 ++++---- 3 files changed, 13 insertions(+), 8 deletions(-) diff --git a/app/Libraries/OFX.php b/app/Libraries/OFX.php index 2fa13d80c589..25887bb78865 100644 --- a/app/Libraries/OFX.php +++ b/app/Libraries/OFX.php @@ -35,7 +35,7 @@ class OFX $this->response = curl_exec($c); if (Utils::isNinjaDev()) { - Log::info(print_r($this->response, true)); + //Log::info(print_r($this->response, true)); } curl_close($c); diff --git a/app/Services/BankAccountService.php b/app/Services/BankAccountService.php index 825e1e12e453..85ade850660e 100644 --- a/app/Services/BankAccountService.php +++ b/app/Services/BankAccountService.php @@ -117,6 +117,9 @@ class BankAccountService extends BaseService foreach ($finance->banks as $bank) { foreach ($bank->logins as $login) { $login->setup(); + if (! is_array($login->accounts)) { + return false; + } foreach ($login->accounts as $account) { $account->setup($includeTransactions); if ($account = $this->parseBankAccount($account, $bankAccounts, $expenses, $includeTransactions, $vendorMap)) { @@ -128,6 +131,7 @@ class BankAccountService extends BaseService return $data; } catch (\Exception $e) { + Utils::logError($e); return false; } } @@ -183,11 +187,12 @@ class BankAccountService extends BaseService $ofxParser = new \OfxParser\Parser(); $ofx = $ofxParser->loadFromString($data); - $account->start_date = $ofx->BankAccount->Statement->startDate; - $account->end_date = $ofx->BankAccount->Statement->endDate; + $bankAccount = reset($ofx->bankAccounts); + $account->start_date = $bankAccount->statement->startDate; + $account->end_date = $bankAccount->statement->endDate; $account->transactions = []; - foreach ($ofx->BankAccount->Statement->transactions as $transaction) { + foreach ($bankAccount->statement->transactions as $transaction) { // ensure transactions aren't imported as expenses twice if (isset($expenses[$transaction->uniqueId])) { continue; diff --git a/resources/views/accounts/bank_account.blade.php b/resources/views/accounts/bank_account.blade.php index 8291b95373c1..83252281b13f 100644 --- a/resources/views/accounts/bank_account.blade.php +++ b/resources/views/accounts/bank_account.blade.php @@ -7,7 +7,7 @@