CompassionCH/compassion-modules — pull request #22 by ecino (2014-11-06 11:04:06+00:00)
Title: Usability improvements

This branch adds a few useful modifications for the whole banking process of importing statements, completing, and reconcile payments. Some are bug fixes or small improvements to ease the process, some other are new features to better automate the process. Changes include :

- [NEW] The manual reconcile view is now customized with Javascript, so that we can add buttons for opening our custom reconcile wizards (reconcile + put in fund, split payment + reconcile), and we can also open the partner from that view.

![manual_reconcile](https://cloud.githubusercontent.com/assets/8435180/4932456/c09a4120-6589-11e4-83fc-e0266ecdd76e.PNG)

- [FIX] Contract ids were not correctly fetched in reconcile wizards (in order to display and modify related contracts)
- [NEW] Split payment process is moved into the move_line obj, so that it can be called also when terminating a contract : in case the partner paid some futur invoices, we cancel those invoices and potentially split his payment to keep other sponsorships paid and put the left money in his balance.
- [NEW] Assets for Compassion (already in 7.0 branch!), based on big changes introduced by luc-demeyer.
- [FIX] Removed dependency of module 'account_banking_payment' in module LSV_Compassion, because it was really annoying all the useless things it brought with. I needed to import some of its code that we use directly in our module, for filtering direct debit orders by payment terms.
- [FIX] Removed simple_recurring_contract references in translation files
- [FIX] Contract group next_invoice_date calculation : the problem was that when a contract was no more active in a group, his next_invoice_date was the one kept in the group, causing the invoice generation to stop for all contracts that had an invoice_date set later. The idea is that only active contracts should be considered for next_invoice_date calculation.
- [NEW] The invoice generation commits the genrated invoices each time it finishes a contract_group, so that we don't have to start again in case of failure. The invoice validation commits every invoice validated. Added also logging messages to keep track of when the process is running (CRON tasks, debugging, ...)
- [NEW] : Check that a valid mandate exist before validating a LSV/DD contract.
- [NEW] : Generate a GIFT Invoice from a contract.
- Translations updated (it adds a lot of lines in the diff...)

As before, I will wait for you when you have time to review because there is a lot... I am not in a hurry to merge the changes. We are already using this branch on devel in order to test everything.