Commit Graph

196 Commits

Author SHA1 Message Date
14ed4ca354 Added the #initializeTagButtons and #tagInputOnChange methods to the JavaScript SummaryHelper to simplify the code. 2023-03-01 00:51:24 +08:00
535ff96ab3 Revised the JavaScript regular expressions used in the summary helper, as suggested by SonarQube for security. 2023-03-01 00:51:24 +08:00
57482f81fc Revised the transaction form to start a new journal entry with the journal entry form instead of the summary helper, because it feels strange when the user want to leave the summary empty. 2023-03-01 00:51:24 +08:00
a31ce3c400 Replaced the function-based JavaScript account selector with the AccountSelector class that does things better. 2023-03-01 00:51:11 +08:00
319f0aed90 Fixed a documentation in the JavaScript summary helper. 2023-02-28 22:54:20 +08:00
826dcf0f86 Revised the documentation of the JavaScript for the summary helper. 2023-02-28 22:47:04 +08:00
731acdced0 Revised the HTML in the summary helper template. 2023-02-28 22:41:56 +08:00
35b3bca1e6 Renamed the variables for the button elements in the summary helper, to be clear. 2023-02-28 22:37:46 +08:00
3c413497ae Split the JavaScript for the account selector from transaction-form.js to account-selector.js, to modularize the complex JavaScript. 2023-02-28 22:33:14 +08:00
1b5e516413 Renamed the HTML ID and class name prefix of the account selector modal, for consistency. 2023-02-28 22:24:12 +08:00
20cb5cecc4 Renamed the accounting-selector-modal class to accounting-account-selector-modal in the account selector. 2023-02-28 22:14:03 +08:00
08dc24605d Replaced the forEach loops with the for-of loops in the JavaScript for the currency form, account form, and the drag-and-drop reorder library functions. 2023-02-28 22:09:39 +08:00
bb7e9e94ee Replaced the forEach loops with the for-of loops whenever appropriate in the JavaScript for the transaction form. 2023-02-28 22:00:19 +08:00
2680a1c872 Merged debit-account-modal.html and credit-account-modal.html into account-selector-modal.html, because they are almost the same. 2023-02-28 21:45:10 +08:00
20a7ce591c Renamed the account_selector_modals block to form_modals in the transaction form templates. 2023-02-28 21:37:08 +08:00
474e844ed9 Revised the loading of the summary helper so that only the required helpers are loaded, but not both the debit and credit helpers. 2023-02-28 21:35:02 +08:00
b34955f2fb Replaced the forEach loops with the for-of loops in the JavaScript summary helper. The for-of loops are more consistent with the other languages and the traditional for loops, and do not mess up with the "this" object. 2023-02-28 20:20:36 +08:00
2bd0f0f14d Fixed the target in the initShow method of the JavaScript summary helper. 2023-02-28 19:13:08 +08:00
8b77d9ff93 Added the suggested accounts to the summary helper. 2023-02-28 19:11:09 +08:00
a9c7360020 Renamed the variables in the #reset method of the JavaScript SummaryHelper class, for consistency. 2023-02-28 17:14:02 +08:00
d02c87602b Added validation to the summary helper. 2023-02-28 16:38:50 +08:00
9f966643b5 Added ARIA labels to the different pages in the summary helper. 2023-02-28 16:38:19 +08:00
5746e2a3d6 Added a missing amount filter to the debit entries of the transaction form. 2023-02-28 15:52:30 +08:00
d5c2231794 Added the summary helper for the transaction form. 2023-02-28 15:49:01 +08:00
fc8e257a10 Added missing documentation to the currencies_errors pseudo property of the TransactionForm form. 2023-02-28 09:36:20 +08:00
2e9bf382fb Revised the documentation of the "accounting.transaction.dispatcher" module. 2023-02-28 09:31:46 +08:00
274a38a588 Fixed a localization error in the transaction detail. 2023-02-28 00:16:12 +08:00
fff89a9957 Replaced the direct database add with the relationship append in the JournalEntryCollector class, to fix the PostgreSQL error that the new journal entries are added when the transaction is not added yet. 2023-02-28 00:04:32 +08:00
5613657c8f Fixed the JavaScript filterAccountOptions function in the transaction form so that the accounting list is not hidden when there is no account in use. 2023-02-27 23:00:49 +08:00
26bb16dd40 Revised the translation. 2023-02-27 18:59:50 +08:00
f0d39bb27b Added the action button to convert a cash income or cash expense transaction to a transfer transaction. 2023-02-27 18:59:42 +08:00
4c17310ebf Fixed an error to recognize the current transaction type in the supplied URI in the with_type filter in the "accounting.transaction.template" module. 2023-02-27 18:47:19 +08:00
fd36672877 Revised the imports in the "accounting.transaction.views" module. 2023-02-27 18:44:33 +08:00
d67c57056b Added the accounting_txn_format_amount_input template filter to properly format the decimal amount for the number input fields. 2023-02-27 18:40:54 +08:00
59c55ef574 Fixed the amount display in the template of the journal entry sub-form. 2023-02-27 18:34:02 +08:00
384bb2c46d Added the dummy commented <ul>...</ul> to the navigation menu and the journal entry sub-form templates, for SonarQube not to complain about incorrect HTML. 2023-02-27 17:20:43 +08:00
cb622f4bad Added the __get_detail_uri function to the "accounting.currency.views" module, for simplicity. 2023-02-27 16:31:41 +08:00
515d39e61c Added the __get_detail_uri and __get_list_uri functions to the "accounting.account.views" module, for simplicity. 2023-02-27 16:29:56 +08:00
0f6c23e1f3 Replaced the regular expression replace with trimEnd() in the validateNote validator in the JavaScript for the transaction form. 2023-02-27 16:03:25 +08:00
685213cdbb Revised the translation. 2023-02-27 15:29:37 +08:00
05fde3a742 Added the transaction management. 2023-02-27 15:28:45 +08:00
9383f5484f Revised aria-label in the templates, added necessary aria labels, removed excess aria labels, and added localization. 2023-02-27 12:54:41 +08:00
88314e1e45 Revised the regular expression in the find_by_code method of the Account data model. 2023-02-27 12:54:38 +08:00
83b5761bca Replaced the for loop with the for-of loop in the search-as-you-type JavaScript of the account form. 2023-02-27 10:30:21 +08:00
6d02f8033d Revised the font awesome icon of the accounting application in the navigation menu. 2023-02-27 10:18:29 +08:00
2c367703e4 Removed a debug logging in the JavaScript for the account form. 2023-02-27 10:18:29 +08:00
284b5be128 Fixed the typo "model" to "modal" in the templates. 2023-02-27 10:18:10 +08:00
a672a13789 Revised the strip_text filter to return None when the text is empty. 2023-02-26 08:00:58 +08:00
9af9afd14d Added the height for the textarea with floating labels. 2023-02-26 07:59:25 +08:00
d98e9f8f05 Added the accounting-dragged class to replace the list-group-item-dark class when reordering with drag-and-drop, because the dragged list may not be a list group. 2023-02-26 07:54:23 +08:00
652bddc07a Fixed an error in the onDragOver function in drag-and-drop-reorder.js that sometimes the dragged object may be null. 2023-02-26 07:54:20 +08:00
4cfe7c7c59 Added the flash_all_errors utility in the "accounting.utils.flash_errors" module to recursively flush all form errors in the sub-forms. 2023-02-25 12:27:55 +08:00
b0b30a8ae6 Fixed the broken action button group in the account list and currency list, by adding a separated action button group for the mobile screens. 2023-02-25 10:37:28 +08:00
2e3633b205 Revised to sort the accounts in the same base before saving an account to a new base, and added the test_change_base_code test to the AccountTestCase test case for this. 2023-02-25 09:44:17 +08:00
d68aa91c33 Removed the redundant post_update methods from the AccountForm and CurrencyForm forms. 2023-02-24 17:18:55 +08:00
3f63fb0bda Fixed a type hint in the populate_obj method of the AccountForm form. 2023-02-24 00:18:55 +08:00
d5af5de3c1 Renamed offset to pay-off, to be clear. 2023-02-23 11:32:55 +08:00
a4c89f1494 Added the type hint and the documentation for the obj parameter of the post_update method of the AccountForm and CurrencyForm forms. 2023-02-20 16:08:49 +08:00
a73e3204b9 Renamed the "accounting.utils.next_url" module to "accounting.utils.next_uri". 2023-02-20 16:08:32 +08:00
330a71ebf2 Fixed the logic in the __set_next method in the "accounting.utils.next_url" module. 2023-02-20 08:17:31 +08:00
36b0bb3a0e Revised the import in the "accounting.account.view" module. 2023-02-18 18:40:11 +08:00
36f55900c7 Renamed "fh" to "fp" when opening files, following the Python convention. 2023-02-09 00:02:14 +08:00
d99f592cff Merged the "accounting.database" module into the "accounting" module. It has only one member as "db", the database instance, and does not need to be separated into another file. 2023-02-08 11:13:09 +08:00
e24ed61b99 Added 7 currencies. 2023-02-08 11:05:59 +08:00
354f1ff3d8 Moved the currency data from the "accounting.currency.commands" module into the currencies.csv file, separating the code and the data. Rewrote the test case to test against each all the content imported. The locales are read from the CSV file instead of hard-coded in the code, so that the translations are not hard-coded to Mandarin. 2023-02-08 10:50:20 +08:00
d58859bcf3 Removed the unused BaseAccountData data type. 2023-02-08 10:39:13 +08:00
2aacb67988 Moved the base account data from the "accounting.base_account.commands" module into the data directory as a CSV file, separating the code and the data. The locales are read from the CSV file instead of hard-coded in the code, so that the translations are not hard-coded to Mandarin. 2023-02-08 10:28:02 +08:00
4b5b348270 Implemented the incremental search (search-as-you-type) in the base account selector of the account form. 2023-02-07 20:27:25 +08:00
d9585f0e53 Fixed a translated message. 2023-02-07 20:20:18 +08:00
5737d6cef4 Fixed the error message in the Javascript validateAsyncCodeIsDuplicated function in currency-form.js. 2023-02-07 20:20:16 +08:00
1d61fa93d3 Prepend all the HTML ID and class names with "accounting-" to avoid name conflict. 2023-02-07 20:20:01 +08:00
b1c7bc61c4 Renamed the can_view_accounting and can_edit_accounting template functions to accounting_can_view and accounting_can_edit, respectively. 2023-02-07 17:15:05 +08:00
708a434b5d Renamed the append_next, inherit_next, and or_next template filters to accounting_append_next, accounting_inherit_next, and accounting_or_next, to avoid name conflict. 2023-02-07 17:13:06 +08:00
8e524674a3 Added the init_app function to the "accounting.utils.next_url" module to initialize the template filters, and apply it to the init_app function of the accounting application. 2023-02-07 17:10:03 +08:00
699db20308 Revised the init_app function of the "accounting.utils.permission" module to register the "can_view" and "can_edit" functions under the blueprint instead of the whole application. 2023-02-07 17:05:27 +08:00
c3cedf714b Revised the documentation of the init_app function of the "accounting.locale", "accounting.base_account", "accounting.account", and "accounting.currency" modules. 2023-02-07 17:01:08 +08:00
c67ed4471c Fixed the permission so that the template helper also use the wrapper can_view and can_edit, that can_edit always requires the user to log in first. 2023-02-07 16:58:46 +08:00
2d3b9f68b8 Added the missing Material Floating Action Button to add a new currency for the mobile devices to the currency list. 2023-02-07 16:43:42 +08:00
f82278b48a Updated the icon of the currency management in the navigation menu. 2023-02-07 16:36:18 +08:00
85480804e7 Updated the translation. 2023-02-07 16:23:46 +08:00
9e85c14431 Changed the can_edit permission to at least require the user to log in first. 2023-02-07 16:03:13 +08:00
31dc8fab04 Changed the type hint of the "current_user" pseudo property of the AbstractUserUtils class to return None when the user has not logged in. 2023-02-07 16:00:51 +08:00
dc24af1db0 Added the get_current_user function to the "accounting.utils.user" module to retrieve the currently logged-in user and cache it in the current request. 2023-02-07 16:00:47 +08:00
399afe56c8 Added the initial values for the database instance, the user class and the user primary key column, to allow the Sphinx documentation system to work properly. 2023-02-07 11:40:48 +08:00
16e2a146db Fixed the documentation in the Account data model. 2023-02-07 11:30:25 +08:00
5cf3cb1e11 Added the "is_modified" pseudo property to the Account data model, and applied it to the update_account view, to count the localized titles for modification. 2023-02-07 11:14:15 +08:00
fb9ff1d7ff Added to validate if the base account is available in the AccountForm form with the BaseAccountAvailable validator. 2023-02-07 09:30:06 +08:00
be10984cbb Fixed the documentation of the BaseAccountExists validator. 2023-02-07 09:28:10 +08:00
2f8c6f6981 Removed the redundant unique constraint from the AccountL10n and CurrencyL10n data models. 2023-02-07 00:24:36 +08:00
cdd010427b Added documentation to the columns of the AccountL10n data model. 2023-02-07 00:23:45 +08:00
d78b941674 Applied the delete method of the Account data model to the delete_account view, to make things easier. 2023-02-07 00:22:23 +08:00
570c84c196 Added the currency management. 2023-02-07 00:13:33 +08:00
eb90e83c98 Removed an unused import from the "accounting" module. 2023-02-06 19:31:06 +08:00
6bf18be455 Revised the coding style in the title setter of the Account data model. 2023-02-06 11:42:22 +08:00
895bca2508 Fixed the documentation of the list_accounts view. 2023-02-06 11:07:18 +08:00
6af29e7df7 Updated the icon to create a new account in the account list. 2023-02-06 10:08:50 +08:00
50f8f06687 Revised the translation. 2023-02-06 09:50:03 +08:00
cd5b1b97fd Added a different the page title of the search result in the base account list and account list, to be clear. 2023-02-06 09:47:19 +08:00
e7fb2288ce Revised the parse_query_keywords utility to handle the case with an open double quotation mark without its corresponding close double quotation mark. 2023-02-04 14:51:09 +08:00
2c8d5e7c8a Revised the translation. 2023-02-04 13:27:04 +08:00