From 2f61835521079b94f8e81a2e5f3a856e3985a6f7 Mon Sep 17 00:00:00 2001 From: Romain Bignon Date: Thu, 5 Feb 2015 18:35:06 +0100 Subject: [PATCH] introduce new type Account.TYPE_LIKE_INSURANCE --- modules/boursorama/browser.py | 2 +- modules/boursorama/pages/accounts_list.py | 2 +- modules/fortuneo/pages/accounts_list.py | 2 +- modules/ing/browser.py | 4 ++-- modules/ing/pages/accounts_list.py | 2 +- weboob/capabilities/bank.py | 2 ++ 6 files changed, 8 insertions(+), 6 deletions(-) diff --git a/modules/boursorama/browser.py b/modules/boursorama/browser.py index d5b5bc76..787f8481 100644 --- a/modules/boursorama/browser.py +++ b/modules/boursorama/browser.py @@ -144,7 +144,7 @@ class Boursorama(Browser): link = self.page.get_next_url() def get_investment(self, account): - if account.type != Account.TYPE_MARKET or not account._detail_url: + if account.type != Account.TYPE_LIFE_INSURANCE or not account._detail_url: raise NotImplementedError() self.location(account._detail_url) diff --git a/modules/boursorama/pages/accounts_list.py b/modules/boursorama/pages/accounts_list.py index 0c56d01d..f90c829f 100644 --- a/modules/boursorama/pages/accounts_list.py +++ b/modules/boursorama/pages/accounts_list.py @@ -40,7 +40,7 @@ class AccountsList(Page): account._link_id = None if 'assurance vie' in block_title: # Life insurance accounts are investments - account.type = Account.TYPE_MARKET + account.type = Account.TYPE_LIFE_INSURANCE for td in tr.getiterator('td'): if td.get('class', '') == 'account-cb': try: diff --git a/modules/fortuneo/pages/accounts_list.py b/modules/fortuneo/pages/accounts_list.py index 507cd4dd..0296359a 100644 --- a/modules/fortuneo/pages/accounts_list.py +++ b/modules/fortuneo/pages/accounts_list.py @@ -157,7 +157,7 @@ class AccountsList(Page): return len(form) > 0 ACCOUNT_TYPES = {'mes-comptes/compte-courant': Account.TYPE_CHECKING, - 'mes-comptes/assurance-vie': Account.TYPE_MARKET, + 'mes-comptes/assurance-vie': Account.TYPE_LIFE_INSURANCE, 'mes-comptes/livret': Account.TYPE_LOAN, } def get_list(self): diff --git a/modules/ing/browser.py b/modules/ing/browser.py index 4ad25d6d..c637ae4f 100644 --- a/modules/ing/browser.py +++ b/modules/ing/browser.py @@ -119,7 +119,7 @@ class IngBrowser(LoginBrowser): @need_login @check_bourse def get_history(self, account): - if account.type == Account.TYPE_MARKET: + if account.type in (Account.TYPE_MARKET, Account.TYPE_LIFE_INSURANCE): for result in self.get_history_titre(account): yield result return @@ -258,7 +258,7 @@ class IngBrowser(LoginBrowser): @need_login @check_bourse def get_investments(self, account): - if account.type != Account.TYPE_MARKET: + if account.type not in (Account.TYPE_MARKET, Account.TYPE_LIFE_INSURANCE): raise NotImplementedError() self.go_investments(account) diff --git a/modules/ing/pages/accounts_list.py b/modules/ing/pages/accounts_list.py index 3a0e8a9b..dd6e7772 100644 --- a/modules/ing/pages/accounts_list.py +++ b/modules/ing/pages/accounts_list.py @@ -60,7 +60,7 @@ class AddType(Filter): types = {u'Courant': Account.TYPE_CHECKING, u'Livret A': Account.TYPE_SAVINGS, u'Orange': Account.TYPE_SAVINGS, u'Durable': Account.TYPE_SAVINGS, u'Titres': Account.TYPE_MARKET, u'PEA': Account.TYPE_MARKET, - u'Direct Vie': Account.TYPE_MARKET} + u'Direct Vie': Account.TYPE_LIFE_INSURANCE} def filter(self, label): for key, acc_type in self.types.items(): diff --git a/weboob/capabilities/bank.py b/weboob/capabilities/bank.py index ece32804..30b90379 100644 --- a/weboob/capabilities/bank.py +++ b/weboob/capabilities/bank.py @@ -85,6 +85,8 @@ class Account(Recipient): "Joint account" TYPE_CARD = 7 "Card account" + TYPE_LIFE_INSURANCE = 8 + "Life insurances" type = IntField('Type of account', default=TYPE_UNKNOWN) balance = DecimalField('Balance on this bank account')