Commit Graph
6 Commits
Author SHA1 Message Date
kurogeek c8fb983749 feat: bank details on the Sales Invoice print in the document's language
Bank Account.account_name and Bank.bank_name are translatable (the Link
field Bank Account.bank cannot be; the Bank's name is what prints), and the
Sales Invoice format renders both through _().
2026-10-21 03:36:46 +00:00
kurogeek 5c15b6637b feat: addresses print in the document's language
Address lines, city, county and state are translatable (Property Setters),
so the Address form offers a translate button that stores the other language
as a Translation record. The Thailand Address Template renders those fields
through _(), and the print formats re-render party addresses from the linked
Address with get_print_address instead of printing the stored
address_display, which is frozen in the language of whoever saved the
document. The letter head already rendered the company address at print
time. The withholding tax certificate takes the Thai translation whatever
the print language, like its tax in words.
2026-10-21 03:36:46 +00:00
kurogeek baff8de0d3 fix: certificate button only on paid Purchase Invoices
The certificate is issued when the tax is withheld, i.e. on payment;
show the button once the submitted invoice's status is Paid.
2026-09-22 03:58:04 +00:00
kurogeek 2ee381f369 feat: Withholding Tax Certificate button on Purchase Invoice
Shown while Apply Tax Withholding Amount is ticked on a saved, not
cancelled invoice; downloads the certificate PDF in Thai.
2026-09-22 03:29:54 +00:00
kurogeek 9a8602f74e feat: Thai language for every customization
- translations/th.csv: custom field labels, messages, print format and
  letter head text, the 22 Tax Withholding Category names; overrides the
  upstream Thai for the standard labels the print formats show
- print formats embed Sarabun (public/fonts, OFL) so PDFs render Thai on
  servers without a Thai font
- letter head labels go through _()
- withholding row description is translated when stored
- in_words: Thai "...บาทถ้วน" wording via num2words when the language is
  Thai (ThaiSalesInvoice.set_total_in_words); print formats re-derive it
  in the print language (get_in_words)
- fixture `modified` bumped so migrate re-imports the changed documents
2026-09-15 06:50:55 +00:00
kurogeek 43416a2433 feat: Initialize App 2026-09-01 16:01:23 +07:00