- 11 Mar, 2019 27 commits
-
-
Romain Courteaud authored
-
Vincent Pelletier authored
As noted in a comment in this BT's Base_redirect implementation, original code does raise when abort_transaction is true. Not raising in this implementation means that this script will return to caller, while it never does on original code. Also, to add insult to injury, this utterly bogus implementation interferes with transaction boundaries. So suddenly, a single publication spans over 2 transactions, which can lead to: - ZODB Connection sharing, breaking transaction isolation - the second transaction implicitly created by this abort (actually, by the next transactional connector registration to transaction) may be committed, in which case anything done after Base_redirect returns will be persistently committed, against caller's explicitly specified intent, and against all developer expectations. NEVER TOUCH TRANSACTION ! Only CMFActivity and unittests are allowed this level of access (and CMFActivity should be modified out of this exceptional state).
-
Romain Courteaud authored
Linshare Use the same configuration than ERP5 Thanks to Vincent Bechu for his work on this topic.
-
Romain Courteaud authored
-
Romain Courteaud authored
-
Romain Courteaud authored
-
Sebastien Robin authored
This reverts commit fba5767e. Sorry, I went too quickly, there was difference between self and context
-
Sebastien Robin authored
-
Jérome Perrin authored
This reverts commit 7aa5fb76 > this change makes title empty when reply nexedi/erp5!823 (comment 73439) /reviewed-on nexedi/erp5!826
-
Romain Courteaud authored
-
Xiaowu Zhang authored
-
Romain Courteaud authored
-
Romain Courteaud authored
-
Xiaowu Zhang authored
-
Xiaowu Zhang authored
only calculate exchange rate if necessary use transaction cache make getExchangeRate as local function
-
Xiaowu Zhang authored
-
Xiaowu Zhang authored
-
Xiaowu Zhang authored
-
Xiaowu Zhang authored
-
Xiaowu Zhang authored
-
Xiaowu Zhang authored
-
Xiaowu Zhang authored
-
Xiaowu Zhang authored
-
Xiaowu Zhang authored
remove useless test_21 update test_20 with various packing list
-
Xiaowu Zhang authored
-
Xiaowu Zhang authored
-
Xiaowu Zhang authored
multiple owner test case multiple cancel packing list test circular movement test
-
- 21 Jan, 2019 2 commits
-
-
Xiaowu Zhang authored
if i have a url like: https://erp5xxx/form_idxxx?relative_item_relative_url=item_module/7817 with the old way, form id will be 7817 /reviewed-on nexedi/erp5!824
-
Jérome Perrin authored
According to pep-0263, python scripts can define encoding magic on first or second line. If we use for example such a script: ```python # coding: utf-8 return "héhé" ``` then using .read() was wrong, because it return the script with headers, ie: ```python ## Script (Python) "test_coding" ##bind container=container ##bind context=context ##bind namespace= ##bind script=script ##bind subpath=traverse_subpath ##parameters= ##title= ## # coding: utf-8 return "héhé" ``` so the coding magic is no longer in first line and pylint complains with error like: Cannot decode using encoding "ascii", unexpected byte at position 11 (invalid-encoded-data)] /reviewed-on nexedi/erp5!825
-
- 18 Jan, 2019 1 commit
-
-
Arnaud Fontaine authored
This method is used to import ZODB Components when fallback on filesystem is needed and used when loading Document and Extension Components. 1,000,000 executions: * Before: timeit("erp5.component.extension.find_load_module(module_name)", setup="import erp5.component.extension; module_name='Hoge'") 59.073 59.324 * b45914fa ExternalMethod optimization: timeit("__import__('erp5.component.extension.' + module_name, fromlist='*', level=0)", setup="module_name='Hoge'") 1.754 1.845 * This commit: timeit("import_module('erp5.component.extension.' + module_name)", setup="from importlib import import_module; module_name='Hoge'") 1.346 1.311 => Faster because import_module() calls __import__() without fromlist (not needed as it returns module from sys.modules after this) and level parameters. => Introduced in python3 and backported to python2.7. Recommended over __import__ in Python documentation for non-internal usage and when getting the module itself and not its top-level one.
-
- 17 Jan, 2019 2 commits
-
-
Jérome Perrin authored
When clicking "Reply" on a discussion post, this script adds a hidden input to mark which post we are replying to. This cause problem when ctrl+clicking reply to reply in a new tab, because it leaves the page with the extra hidden input, which cause problems, like clicking reply again cause `Error Value: You are not allowed to access '['1', '1']`' in this context , or clicking change page will reply. This is a minimal effort fix, just remove the added element after click. /reviewed-on nexedi/erp5!823
-
Jérome Perrin authored
This reverts commit b7d9590c. Users are not supposed to edit templates because documents are not in their "normal" context, if user edit templates some unexpected things might happen. We don't want user to change state or do some actions that may cause interactions on other documents from a template. This was never strongly enforced, but there was not supposed to be an easy way for users to access the template document. With old versions of ERP5 (before the rework of isIndexable / isSubTreeIndexable ), users could also add lines inside the template document and these lines where indexable. Note that the way of editing templates is: * make a "real" document from the template * modify this document * use "Make Template" again - this will replace the document with the same title. /reviewed-on nexedi/erp5!822
-
- 16 Jan, 2019 6 commits
-
-
Romain Courteaud authored
This allow to pick up only few document on which to execute the action. Listbox 'Edit' mode will contain copy/paste/delete actions. Listbox 'Select' mode will contain include/exclude and all other erp5 actions (except delete). Define the action on erp5 with the object_list_action category value.
-
Romain Courteaud authored
-
Romain Courteaud authored
Stop using change command by default. This was a hack to hope that some parameters were propagated. Propagate instead a cancel parameter to correctly quit dialog. Stop hardcoding extended search parameter propagation.
-
Romain Courteaud authored
This allow user to revert his change by using the browser back button.
-
Romain Courteaud authored
-
Romain Courteaud authored
See nexedi/erp5@9dcbc756
-
- 13 Jan, 2019 1 commit
-
-
Julien Muchembled authored
This fixes: Traceback (innermost last): Module Products.CMFActivity.ActivityTool, line 1373, in invokeGroup traverse(method_id)(expanded_object_list) Module Products.ERP5Catalog.CatalogTool, line 946, in catalogObjectList super(CatalogTool, self).catalogObjectList(tmp_object_list, **m.kw) Module Products.ZSQLCatalog.ZSQLCatalog, line 813, in catalogObjectList **kw TypeError: catalogObjectList() got an unexpected keyword argument 'group_id'
-
- 08 Jan, 2019 1 commit
-
-
Julien Muchembled authored
-