- 07 Jun, 2019 7 commits
-
-
Tristan Cavelier authored
-
Nicolas Wavrant authored
-
Nicolas Wavrant authored
-
Romain Courteaud authored
OfficeJS's user blocking third party cookie will at least stop entering their credentials many times for nothing
-
Romain Courteaud authored
Followup of nexedi/erp5@340accd1
-
Romain Courteaud authored
-
Vincent Pelletier authored
-
- 06 Jun, 2019 7 commits
-
-
Valentin Benozillo authored
Conflicts: bt5/erp5_web_renderjs_ui/PathTemplateItem/web_page_module/rjs_gadget_erp5_nojqm_css.xml
-
Jérome Perrin authored
In ERP5 software release we now have `mock` egg installed, so we can use it in tests instead of doing manually like this: ```python saved_method = Class.method def patched_method(): ... try: Class.method = patched_method ... finally: Class.method = saved_method ``` /reviewed-on nexedi/erp5!882
-
Romain Courteaud authored
-
Romain Courteaud authored
Change the caching policy to one hour. Use the CDN to publish the page if the backend is down Cache the manifest like the HTML page but force refreshing the manifest to prevent CDN cache inconsistency.
-
Romain Courteaud authored
Defining it inside portal_components ledds to business template update issue. Bypass it by defining the expected behaviour into the web section hook.
-
Romain Courteaud authored
Allow the CDN to cache the content. Use stale_if_error to allow the CDN to return content if backend is down Unify Vary Header.
-
Xiaowu Zhang authored
-
- 05 Jun, 2019 1 commit
-
-
Vincent Pelletier authored
erp5_banking_cash depends from erp5_trade via erp5_banking_core.
-
- 04 Jun, 2019 1 commit
-
-
Jérome Perrin authored
Gadgets: * Support `changed` flag from `erp5.js`: ![unsaved changes sreenshot](/uploads/cff30eae0a5d87df26bac13d43e1da3f/image.png) * Comply with translation protocol used in ERP5JS. This does not translate, because it would not be easy ( ERP5JS translate client side with a json database of message, but in xhtml style the translation is performed server side with localizer) and not so important now. What matters is just that we can somehow reuse gadgets. Style: * While we are at it, fix a minor annoyance that the button in "long" dialogs where not easy to reach, at least on chrome ![before](/uploads/e03a8311571806a55fd72f6923cf855a/Screenshot_2019-05-31_at_10.38.05.png) ![after](/uploads/5753bc44fbc0f69b6adfeb14b3367236/Screenshot_2019-05-31_at_10.38.37.png) /reviewed-on nexedi/erp5!880
-
- 03 Jun, 2019 5 commits
-
-
Romain Courteaud authored
-
Romain Courteaud authored
Remove all globals to allow multiple live tests running on the same page. Stop reading the test output if the browser tab doesn't have the focus. Stop hardcoding the URL in the javascript. Stop hardcoding other fields path in the javascript (+ embed the textarea in the gadget). Propagate all parameters via formulator. It will allow to use this gadget from another context document. Run live test from the RJS UI
-
Jérome Perrin authored
This way we can use gadgets using of ERP5JS translation API in xhtml style. This is really minimal compatibility layer and translation is not actually performed.
-
Vincent Pelletier authored
Sorting in a module is terrible for performance as soon as there is more than a trivial amount of documents in that module.
-
Jérome Perrin authored
Test was failing because family mapping is loaded while connection is already closed. ``` Traceback (most recent call last): File "erp5/Products/ERP5/tests/testInvalidationBug.py", line 156, in testLateInvalidationFromZEO activity_tool.tic() File "erp5/product/ERP5Type/tests/ProcessingNodeTestCase.py", line 96, in tic self._orig_tic(processing_node, force) File "erp5/product/CMFActivity/ActivityTool.py", line 1326, in tic node_family_id_set = self.getCurrentNodeFamilyIdSet() File "erp5/product/CMFActivity/ActivityTool.py", line 921, in getCurrentNodeFamilyIdSet return self._getNodeFamilyIdDict().get(getCurrentNode(), ()) File "ZODB/Connection.py", line 909, in setstate self._setstate(obj, oid) File "ZODB/Connection.py", line 953, in _setstate p, serial = self._storage.load(oid, '') File "ZEO/ClientStorage.py", line 825, in load result = self.loadBefore(oid, m64) File "ZEO/ClientStorage.py", line 839, in loadBefore raise ClientDisconnected() ClientDisconnected ``` Load the object explicitly before so that it's in cache. /reviewed-on nexedi/erp5!881
-
- 31 May, 2019 5 commits
-
-
Alain Takoudjou authored
SlapOS and NMS documentation are moved into bt and committed in erp5-doc.git. This will allow to install documentation in another erp5 and also to test them. /reviewed-on nexedi/erp5!875
-
Vincent Pelletier authored
3 independent conditions does not guarantee to find the next row sorted simultaneously on those 3 values.
-
Vincent Pelletier authored
listActions result is cached, and may refer to non-existing workflows and/or worklists. Tolerate either of these being missing.
-
Jérome Perrin authored
This way the "you have unsaved changes" pops up also when navigating away after changing gadget content.
-
Jérome Perrin authored
When the page height is larger than viewport, the scrollbar hides the button on chrome. Also does the "Loading" status message on chrome. By using a margin, we make sure buttons are not behind scrollbar or status message and are easier to reach.
-
- 29 May, 2019 6 commits
-
-
Tristan Cavelier authored
It was failing due to addition of module actions in the menu panel. The test was checking the content of the menu panel before the page was fully loaded, so getting the old menu panel entries and failing.
-
Tristan Cavelier authored
- Hardcodes a panel "VIEWS: List" to hide "consistency", "history" and "metadata". - Only show "WORKFLOWS" on module document. For instance, on Foo Module the menu panel shows now : VIEWS List ACTIONS Do Something /reviewed-on nexedi/erp5!673
-
Tristan Cavelier authored
-
Tristan Cavelier authored
-
Yusei Tahara authored
[erp5_accounting_ui_test] Update check_row_in_transactions_table and check_row_in_accounts_ledger_table macros in AccountingZuite_reportMacros to follow the bugfix 17c0aa5a. But renderjs listbox still creates unneeded broken links and this problem is reproduced in test_journal although it is not tested yet.
-
Jérome Perrin authored
If event has an aggregate relation already, merge it with the aggregate relation of notification message. /reviewed-on nexedi/erp5!873
-
- 28 May, 2019 2 commits
-
-
Xiaowu Zhang authored
/reviewed-on nexedi/erp5!876
-
Yusei Tahara authored
When a cell value was empty, listbox js created a link that did not work.
-
- 24 May, 2019 6 commits
-
-
Romain Courteaud authored
The pagination was not working when using the limit parameter, and when the total number of documents is equal to the pagination limit + 1.
-
Tatuya Kamada authored
Before: Float Equivalence Tester does not test the divergence even if Divergence Provider is ON After: Float Equivalence Tester test the divergence with the epsilon-span if Divergence Provider is ON Before, we needed the following condition to test the divergence at Float Equivalence Tester: "Divergence Provider is ON" AND ("Absolute Tolerance has some value" OR "Relative Tolerance has some value" ) However this default behavior was not consistent with other testers, and difficult to notice from the user interface. Thus test the divergence by default with the epsilon span which is defined in FloatEquivalenceTester class. The epsilon-span is the same amount that when we put 0.0 into the ranges. The 0.0 has been the configuration of erp5_configurator_standard_trade_template. /reviewed-on nexedi/erp5!865
-
Vincent Pelletier authored
-
Vincent Pelletier authored
-
Vincent Pelletier authored
When an object is being indexed, it get wrapped so it has magic properties, like security definitions as they will be accessed by indexation methods. One such property is used to trigger the insertion of rows in roles_and_users table. That property has the special feature that it is only produced on the first object needing a new set of rows added to roles_and_users, other objects will get a None value instead for that property so that no further lines are inserted. Then, SQCatalog iterates over that wrapper list to compute all indexation method parameters. It does so via a cache (LazyIndexationParameterList) so that unused parameters are not computed. The cache key is wrapped object's uid. All this together means that if an object is indexed multiple times in a single call (which happens at site creation, for example) and it needs a new set of rows added in roles_and_users, only one of produced wrappers will get the appropriate value. If that object is not the first on which that parameter is evaluated (which gets more likely with every copy of the same object being indexed), it will be cached as None and shared between all copies, causing no row to be added to roles_and_users. Full investigation done by by Yusei Tahara. wrappers will get the
-
Nicolas Wavrant authored
As we may reach database limits, and to avoid them to be logged.
-