- Oct 23, 2019
-
-
The typing was lacking as it sometimes matched incorrect part of the label such as the name of the account owner. Now it uses regexes on sensitive account patterns.
-
When checking for investments for PEA, the website ask the user to update its infos if they are too old. Added ActionNeeded in that case.
-
Life Insurance balance and investments format have changed from SI format to French format.
-
I handle new recipient errors. Now the website return a 400 error with its errors. So the handle_error pages are useless.
-
`obj__redacted_card` is not used anywhere. The module `bnpentcards` use it but it has its own BNPEntreprise Browser that gather `_redacted_card`.
-
- Login method changed on website, reflected those changes in `do_login` and with new pages - Changed the navigation to parse accounts on `other` site - Modified parsing to include LOAN accounts
-
- Added new url to handle from `smc` website - Fixed regex on BASEURL in classic_login
-
I added 2 new account types, both saving account. CEL2 (compte epargne logement) CSLB5 (compte sur livret) Closes: 13758@Zendesk
-
Investments performances in this module can be fecthed by launching 3 different popups depending on the user's contrats. When wanting the investments we first collect the urls of each popup then follow each one and parse the performances from there. When the user has sggestion.com and lyxorfunds.com invests with first url fetched being lyxorfunds.com, at the time to follow it, the request would not be accepted and return a ClientError. If the urls are fetched the other way around, the requests would work, this is the most cases behavior. In order to make lyxorfunds.com requests to work everytime we need the referer from homepage (AccountsPage).
-
Somme savings Accounts have Transactions with a date without a year, we use a DateGuesser to guess that year. The DateGuesser wasn't properly handed to the method, that is what this patch fixes. For DateGuesser to fulfill it's purpose the same instance needs to be shared between all Transaction objects, or the default behaviour of *Element is to make a copy of the parent's env variable (the dictionnary used by the filter Env) so each Transaction would have a new instance of DateGuesser. Here we create a child class of DateGuesser with it's __deepcopy__ method overridden so that a call of deepcopy on it will return the object itself instead of a copy, this counteracts the behaviour of *Element and allows all Transaction objects to share the same instance of DateGuesser. This may break again.
-
When not allowed to add recipients, users recieve a message: `Vous n'avez pas la possibilité d'accéder à cette fonction. Veuillez prendre contact avec votre Conseiller.`
-
-
-
id was based on birth date, but it crash when there are twins and we can't use social security number browser now return just one subscription and all documents are attached to the only one subscription we return it also fix a bug with duplicated document when a file contains information about several user is was return one time per subscription that use it
-
-
It replaces the TransferBankError used for invalid otp. This way, we use a different error code.
-
Within a session, caissedepargne requires 2FA authentication for transfers or adding recipients. Most often, it's an SMS. But for creditcooperatif users, it might be EMV auth OTP by default. In this case, on the website, the user can reject EMV auth and switch to SMS. Reproduce here the fallback behavior. If it's SMS directly, it's ok. But if it's EMV, switch to SMS. In case of fallback, the SMS is sent after request_sms is queried, so it must be queried _before_ raising TransferStep, not _after_ as it was done it previous code. Thus, we save validation keys in browser state.
-
-
If the user tries to add a recipient from a foreign country, the website refuses and raise an error.
-
-
Calie webspace is used for "Federlux Privilege" life insurances. This commit: - fixes navigation to this space - iterizes accounts found on it - fixes iter_investments for theses accounts - manages the case where there is several Calie insurances vs. only one - raises ActionNeeded when the Calie service is not activated - Prepared TODO: iter_history on this wespace must manage js. Url to get to history page is fetched for now.
-
For loan, an information in the page explicitly name the co-owner, but not in the label. For other accounts, check wether the profile name contains M. or MME. Since every account label contains M, MME, or M OU MME, we can then deduce who's the owner (M or MME).
-
JSON periodically returns only time for investments vdate, and module was building a Date object from it. It was faulty since Date (and DateTime) filters now defaults strict argument to True. This caused a massive amout a account bugs throughout the week days. This commit adds DateTime with strict=False when this happens.
-
Set flag to re.UNICODE so that re.search has the same behaviour in Python 2 and 3. In Python 2 the default flag is re.ASCII so `\s` doesn't match `\xa0` (no-break space) so no transactions were returned except for the 'Souscription' one.
-
-
After a big maintenance: - Fixed urls and form for login - Raised BrowserPasswordExpired since Afer is asking to users to change credentials
-
[capabilities/bank] use StringField standard default value for transfer beneficiary label and number beneficiary label and number are only used for external transfer to not in list beneficiary like transfer to iban or phone number
-
When valuation is a tiny amount the website displays 0% for portfolio_share. This commit fixes an AssertionError when this happen.
-
-
Made the regex that catches devices names less strict so that it matches with a broader variety of device names
-
Until now, when we look for the recipient before making a transfer we checked on the recipients iban to identify the one. But the website accepts that a user add several times a recipient with the same iban. So we have to check the iban but the id too to avoid chosing the "wrong" one.
-
The transactions were not fetched because the fetching process relies on a regex that no longer matched all transactions. The json now contains the character ` ` between the amount of the transaction and the currency symbol in most transactions. The string given by the json is now filtered to convert HTML entities before fedding it to the regex.
-
Abstractxxx objects way to override __new__ is broken in python3: any instanciations with arguments after first one trigger a TypeError (object.__new__() takes exactly one argument). Linked discussion: https://bugs.python.org/issue25731[p3]
-
Transactions format is now in French (1000,00)
-
This reverts commit 37c25f0eab17ea96d175c89e1801938714c3eac9.
-
- Oct 01, 2019
-
-
hydrargyrum authored
Ok, splitquery is not equivalent to partition, but i'm lazy now.
-
hydrargyrum authored
-
hydrargyrum authored
-
hydrargyrum authored
-
-