The last change did not check for the left screen edge. This update
checks for the calendar pop up going over the left, right, and
bottom edges of the screen. The top should not be an issue.
Only auto-post if:
The posted_to account name is valid.
There's no currency conversion.
The invoice customer's currency matches the A/R account currency.
Tell the user what happened with a dialog.
Add a new namespace “ALL NON-CURRENCY” to the namespace (type) selector
lists on the security picker and price editor which causes the commodity
list to include all non-security commodities.
Fix the neutral offset calculations so that the fixed UTC time doesn't
change the date in the timezones near the international date line. Divide
offset by 60 instead of 3600 so that the Chatham Islands (GMT-12:45 with DST)
use 9:59 instead of 10:59 like the rest of NZ (GMT-12).
Remove the scheme from file URIs before displaying
error messages and change the one file error message that can show up in
database dialogs to say "file/URI foo" instead of "file foo".
This series of changes modifies the Average Cost report function to
finding the average amount-weighted price of all transactions recording
a "buy" of the report commodity so that the correct amount is now
reported without the need of a capital gains split--though one is still
needed to get the Trial Balance report to balance.
Since book-wide averages are not what most users expect, it also changes
the default pricing option on all reports to "Nearest in Time", which is
what most confused users have selected after asking about it in the
mailing lists. This also fixes
Bug 340991 - Default price source for reports not good.
Reverse the direction of splits with negative amounts as they represent a
sale of the transaction commodity. Accumulate buys and sells of commodities
into separate comm-lists and use only the buy-side ones for the report-commodity
in the calculation.
Extract helper functions and add a parameter, eliminating gnc:make-exchange-cost-alist
and gnc:get-exchange-cost-totals.
This makes it more clear the differences between the two algorithms and
makes it easier to correct the algorithm for the cost case.