Commit Graph

658 Commits

Author SHA1 Message Date
b4d390c33a Renamed the isMatches method to isMatched in the JavaScript RecurringAccount class. 2023-03-23 00:00:39 +08:00
a4ab8a761c Renamed the "content" dataset to "text" in the base account selector of the account form, for consistency. 2023-03-22 23:56:37 +08:00
907ce6d06e Renamed the "content" dataset to "text" in the account selector of the journal entry form, for consistency. 2023-03-22 23:55:28 +08:00
6f773dd837 Added the ACCOUNT_REQUIRED validator to the account_code field of the RecurringExpenseForm and RecurringIncomeForm forms. 2023-03-22 23:25:20 +08:00
87fa5aa6bc Moved the ACCOUNT_REQUIRED validator from the "accounting.journal_entry.forms.line_item" module to the "accounting.forms" module, in order to share it. 2023-03-22 23:23:53 +08:00
35e05b3708 Revised the IsDebitAccount and IsCreditAccount validators to require the error message, and moved their default error messages to the DebitLineItemForm and CreditLineItemForm forms. 2023-03-22 23:19:52 +08:00
7ccc96bda0 Added the CurrentAccountExists and AccountNotCurrent validators to the default_ie_account_code field of the OptionForm form, to validate that the current account exists and is a current account. 2023-03-22 23:16:31 +08:00
b673c7aeaf Renamed the "default_currency" option to "default_currency_code". 2023-03-22 22:34:13 +08:00
0ad2ac53dd Added the "sql_condition" method to the CurrentAccount data model to simplify the queries. 2023-03-22 21:43:58 +08:00
7e90ec5a8f Replaced the "current_accounts" function with the "accounts" class method of the CurrentAccount data model. 2023-03-22 21:39:18 +08:00
7755365467 Revised the documentation of the CurrentAccount data model. 2023-03-22 21:36:07 +08:00
979eea606a Added the missing documentation to the account property of the CurrentAccount data model. 2023-03-22 20:40:43 +08:00
5a9e08f2c4 Moved the AccountExists, IsDebitAccount, and IsCreditAccount validators from the "accounting.journal_entry.forms.line_item" module to the "accounting.forms" module, to share it with the "accounting.option.forms" module. Removed the redundant AccountExists, IsExpenseAccount, and IsIncomeAccount validators from the "accounting.option.forms" module. 2023-03-22 20:37:53 +08:00
68c810d492 Renamed the debit and credit methods in the Account data model to selectable_debit and selectable_credit, to be clear. 2023-03-22 20:21:52 +08:00
5f88260507 Revised the elements in the option detail page for better layout. 2023-03-22 20:16:08 +08:00
779d89f8c4 Replaced the "clear" method with the "onOpen" method when the account is clicked in the RecurringItemEditor in the JavaScript RecurringAccountSelector class. 2023-03-22 20:09:41 +08:00
5d4bf4361b Revised the error messages of the NotStartPayableFromExpense and NotStartReceivableFromIncome validators. 2023-03-22 20:00:17 +08:00
10170d613d Fixed the debit and credit methods of the Account data model, removing the payable accounts that need offset from the debit accounts, and the receivable accounts that need offset from the credit accounts. They should not be selectable. 2023-03-22 19:54:27 +08:00
c885c08c37 Moved the "accounting.option.options" module to "accounting.utils.options", because it is meant to shared by other submodules. 2023-03-22 19:47:37 +08:00
e2a4340f2a Revised the imports in the "accounting.option.views" module. 2023-03-22 19:43:10 +08:00
9728ff30e0 Renamed the IsDebitAccount, IsCreditAccount, NotStartPayableFromDebit, and NotStartReceivableFromCredit validators to IsExpenseAccount, IsIncomeAccount, NotStartPayableFromExpense, and NotStartReceivableFromIncome, respectively, in the "accounting.option.forms" module. 2023-03-22 19:41:54 +08:00
a4644ede5f Fixed and replaced the IsDebitAccount validator with the IsCreditAccount validator in the account_code field of the RecurringIncomeForm form. 2023-03-22 19:39:02 +08:00
8f477dd6f1 Added the all_errors pseudo property to the RecurringItemForm form, and applied it to the form-recurring-item.html template. 2023-03-22 19:37:20 +08:00
44ac53f15c Fixed and added the missing validation in the update_options route. 2023-03-22 19:33:21 +08:00
5edb5465c5 Fixed the incomes field of the RecurringForm form to use the RecurringIncomeForm form instead of the RecurringExpenseForm form as its sub-forms. 2023-03-22 19:29:42 +08:00
067afdb165 Fixed and moved the account_text pseudo property from the RecurringExpenseForm form to its base RecurringItemForm form. 2023-03-22 19:28:46 +08:00
37a4c26f86 Fixed the label in the option detail and option form. 2023-03-22 19:21:24 +08:00
89e43830b4 Fixed the __get_accounts method of the DescriptionEditor class not to do empty queries. 2023-03-22 19:17:25 +08:00
671dbfb692 Moved the CURRENCY_REQUIRED validator back from the "accounting.forms" module to the "accounting.journal_entry.forms.currency" module. It is not shared with other module anymore. 2023-03-22 19:14:51 +08:00
2014344d25 Revised to use its own error message for the DataRequired validator in the default_currency field of the OptionForm form. 2023-03-22 19:13:08 +08:00
f9c39709c8 Revised the text messages in the option forms. 2023-03-22 19:11:07 +08:00
b394c58ec6 Added support to sort the recurring items. 2023-03-22 19:01:02 +08:00
0af3e2785b Removed an unused import from the "accounting.option.forms" module. 2023-03-22 18:50:24 +08:00
7066f75e72 Added the read-only view for the options. 2023-03-22 16:08:16 +08:00
619540da49 Fixed the documentation of the form-recurring-expense-income.html template. 2023-03-22 15:47:19 +08:00
567004f7d9 Renamed IncomeExpensesAccount to CurrentAccount. 2023-03-22 15:42:44 +08:00
761d5a5824 Added the option management, and moved the configuration of the default currency, the default account for the income and expenses log, and the recurring expenses and incomes to the options. 2023-03-22 15:34:28 +08:00
fa3cdace7f Renamed the #validateForm method to #validate in the JavaScript AccountForm and CurrencyForm. 2023-03-22 11:22:46 +08:00
656762850c Moved the IncomeExpensesAccount data model from the "accounting.report.utils.ie_account" module to the "accounting.utils.ie_account" module. 2023-03-22 07:29:41 +08:00
e2325f08d0 Moved the CURRENCY_REQUIRED and CurrencyExists validators from the "accounting.journal_entry.forms.currency" module to the "accounting.forms" module. 2023-03-22 07:17:45 +08:00
855356084e Fixed the documentation of the can_view and can_edit functions in the "accounting.utils.permission" module. 2023-03-22 04:50:12 +08:00
7aaeb32a3d Added the missing "role=" to the "<a...></a>" links that act like buttons. 2023-03-22 02:35:07 +08:00
b376cf1580 Revised the toolbar layout so that it looks better with only one toolbar button on the mobile devices. 2023-03-22 02:28:58 +08:00
ccbdc779ac Restored the "Back" button on the toolbar for the mobile devices. It is still necessary, because the user may get lost in the navigation history. 2023-03-22 02:28:29 +08:00
61ee08fda2 Revised the date format in the journal entry order page, and removed the individual date in the page, as it is redundant. 2023-03-22 02:12:19 +08:00
c8e1270d8f Updated the translation. 2023-03-22 01:50:18 +08:00
2a78799404 Revised the page to reorder the journal entries in a same day. 2023-03-22 01:47:11 +08:00
863d7a9368 Simplified the "can_delete" pseudo property of the JournalEntry data model. SQLAlchemy caches the query result. There is no need to cache the result again. 2023-03-22 01:02:09 +08:00
6fd37b21d9 Fixed so that the journal entries that has offset cannot be deleted. 2023-03-22 00:59:43 +08:00
bbf3ee3320 Added the limitation so that the default currency and the currencies in use cannot be deleted. 2023-03-22 00:37:39 +08:00
d0d2d77a2e Added the limitation so that essential accounts, like cash, and the accounts in use, cannot be deleted. 2023-03-22 00:37:26 +08:00
494faeffea Revised the toolbar of the reports to fit better in desktop browsers. 2023-03-21 23:16:47 +08:00
871a5fd1d8 Changed the "settings" button to "edit" in the account, currency, and journal entry detail pages. 2023-03-21 23:10:33 +08:00
e615ad2690 Revised the style of the toolbar buttons for better layout on mobile devices. Hid the "Back" button on mobile devices for better layout and saving spaces. 2023-03-21 23:07:05 +08:00
da92a0b42c Replaced the BABEL_DEFAULT_LOCALE configuration variable with the default_locale from the Flask-Babel instance, to get rid of the dependency to the specific configuration variable. 2023-03-21 22:34:44 +08:00
9248ba7e3b Removed the redundant Flask App context from the default_currency_code Jinja2 global and the default_ie_account_code function. They are always under the Flask app context. 2023-03-21 21:17:10 +08:00
a42e7d13a2 Renamed the configuration DEFAULT_CURRENCY, DEFAULT_IE_ACCOUNT, and RECURRING to "ACCOUNTING_DEFAULT_CURRENCY", "ACCOUNTING_DEFAULT_IE_ACCOUNT", and "ACCOUNTING_RECURRING", respectively. 2023-03-21 21:13:03 +08:00
a82f5091f1 Revised the styles of the buttons in the description editor. 2023-03-21 19:50:57 +08:00
3455827c09 Added the recurring transactions. 2023-03-21 19:45:56 +08:00
5dccf99a55 Renamed "regular" to "recurring" in the description editor. 2023-03-21 17:48:19 +08:00
8818b46e01 Moved the tag initialization from the constructor to the __init_tags method in the DescriptionEditor class. 2023-03-21 17:32:07 +08:00
2f3ad99467 Removed redundant code in the templates of the journal entry form. 2023-03-21 11:54:45 +08:00
592910187b Added the common form-debit-credit.html template to reduce the duplicated code for the currency sub-forms in the transaction form. 2023-03-21 11:47:05 +08:00
cb7a0d377f Added the common form-currency.html template to reduce the duplicated code for the currency sub-forms in the transaction form. 2023-03-21 11:26:28 +08:00
79175285f8 Changed "to transfer" to "as transfer", and updated its Font Awesome icon in the toolbar of the journal entries. 2023-03-21 11:04:45 +08:00
fef474977c Adjust the location of the Material Design floating action buttons for mobile screen. 2023-03-21 10:57:08 +08:00
fa1a55cd3d Adjusted the style for the mobile toolbar for Firefox on Android with large font size. 2023-03-21 10:56:21 +08:00
56138f7de3 Updated the translation. 2023-03-21 00:53:52 +08:00
21ef944259 Fixed the error in the navigation menu when there is no matching endpoint. 2023-03-21 00:53:27 +08:00
760f1c2877 Fixed the query to be case-insensitive in the base account selector in the account form and the account selector in the journal entry form. 2023-03-20 23:54:50 +08:00
e377eac407 Fixed the capitalization of the currencies, base accounts, and accounts. 2023-03-20 23:54:49 +08:00
77787eee9f Fixed the search queries to be case-insensitive. 2023-03-20 23:54:38 +08:00
03265a1232 Fixed the text in the buttons to add new journal entries. 2023-03-20 23:16:57 +08:00
079dc1ab6d Renamed the "eid" field to "id" in the LineItemForm form, since the problem is found. It was the "id" property of the enclosing FormField. If we extract the form from FormField, we can still access the "id" field. 2023-03-20 23:06:57 +08:00
d4fe91ec4a Fixed the capitalization of the shortcut periods in the period chooser. 2023-03-20 22:57:04 +08:00
acc5b4d6ea Fixed the capitalization of the label of the number of items in the description editor. 2023-03-20 22:52:35 +08:00
19a93cb4c3 Fixed the text message in the add_journal_entry view. 2023-03-20 22:44:55 +08:00
116089d1d2 Fixed the text message in the add_currency view. 2023-03-20 22:44:26 +08:00
50dd6078c7 Replaced "Need offset" with "Needs Offset" as the text of the badge. 2023-03-20 22:43:53 +08:00
9a4531b26c Revised the title of the delete confirmation modal from "Delete XXX Confirmation" to "Confirm Delete XXX", as suggested by ChatGPT. 2023-03-20 22:38:35 +08:00
b1af1d7425 Renamed "voucher" to "journal entry". 2023-03-20 22:33:14 +08:00
8f909965a9 Renamed "voucher line item" to "journal entry line item". 2023-03-20 20:52:35 +08:00
e26af6f3fc Renamed "side" to "debit-credit". 2023-03-20 20:35:10 +08:00
02fffc3400 Removed the unused offset_original_line_item_id field from the DebitLineItemForm form. 2023-03-20 18:56:38 +08:00
d7d6929bf2 Fixed the parameter passed to the credit line item subform in the transfer voucher form. 2023-03-20 18:53:16 +08:00
e4cc61552e Simplified the parameter passed to the "form-line-item.html" template for the line item subform of the voucher form, to be less error-prone. 2023-03-20 18:53:11 +08:00
d18dd7d4d2 Renamed "summary" to "description" in the voucher line item. 2023-03-20 18:45:50 +08:00
c1235608d8 Renamed "journal entry" to "voucher line item", and "entry type" to "side". 2023-03-19 22:09:40 +08:00
25c45b16ae Removed the unused imports from the "accounting.voucher.utils.original_entries" module. 2023-03-19 14:15:50 +08:00
5db13393cc Renamed "transaction" to "voucher", "cash expense transaction" to "cash disbursement voucher", and "cash income transaction" to "cash receipt voucher". 2023-03-19 13:56:46 +08:00
1e286fbeba Renamed the #originalEntry, #summary, #account, and #amount private attributes of the JavaScript JournalEntryEditor class to #originalEntryText, #summaryText, #accountText, and #amountInput, to avoid confusion with the public attributes with similar names. 2023-03-19 10:42:37 +08:00
d4b3fe67b9 Removed the originalEntryId parameter from the onOpen method of the JavaScript OriginalEntrySelector class. It can be obtained from the JournalEntryEditor instance, and the parameter is not needed anymore. 2023-03-19 10:25:33 +08:00
5d0757c845 Added the JavaScript JournalEntryEditor instance to the parameters of the constructor of the JavaScript OriginalEntrySelector class, so that it always have access to the JournalEntryEditor instance. Removed the JournalEntryEditor instance from the parameters of the onOpen method of the JournalEntryEditor class. 2023-03-19 10:22:18 +08:00
122b7b059c Changed the default date and min date for the Tempus Dominus month chooser from strings to the JavaScript Date objects. 2023-03-19 10:15:32 +08:00
4977847dd8 Changed the entryType attribute of the JavaScript AccountSelector class from public to private, renamed it from entryType to #entryType. 2023-03-19 07:30:03 +08:00
b9b197ea27 Removed the unused #modal property from the JavaScript OriginalEntrySelector class. 2023-03-19 07:27:25 +08:00
2299b86d0f Updated the translation. 2023-03-18 23:37:08 +08:00
6d293a1aac Added the JavaScript getInstances method to the SummaryEditor and AccountSelector classes, so that it is easier to deal with the case when the debit and credit versions are not both exist. 2023-03-18 23:36:38 +08:00
a2311aee24 Revised to prevent word wrapping in the button to choose the original entry in the summary editor. 2023-03-18 23:20:49 +08:00
5571c0d01f Renamed all the is_XXX_needed properties to is_need_XXX. For example, especially the is_offset_needed property to is_need_offset, to be clear and understandable. 2023-03-18 22:52:29 +08:00