- 05 Apr, 2019 4 commits
-
-
Roque authored
-
Roque authored
-
Roque authored
- signature layer for appcachestorage sync changed to memory type - obsolete post view removed
-
Roque authored
erp5_discussion: initial commit for discussion tool (WIP) erp5_officejs: web site and gadgets for discussion tool erp5_officejs_connector: forms for discussion tool erp5_post: html post jio view for discussion tool erp5_officejs_ui_test: unit tests for discussion tool [HARDCODED] only discussion tool tests erp5_discussion: adding officejs dependency to install the discussion tool site testing a fix for migration test in discussion tool erp5_hal_json_style: hateoas script extended to retrieve raw form definition erp5_officejs: rendering form on JS side - hardcoded JSON was removed - form definition is get from jio storage (erp5 for now) - rendering is done in controller.js using form definition and context (jio document) erp5_officejs_connector: changes on HTML post view as jio for discussion tool erp5_post: changes on html post view for discussion tool erp5_officejs: store json form definition in indexedDB erp5_officejs: adding a layer in jio data storage to replicate appcache content erp5_officejs: bug fix - missing resource in appcache file WIP: erp5_officejs: replicate appcache content into local storage erp5_officejs: new file manifest to list form json urls and other configurations - this prevents the appcache-local storage sync to store unnecessary resources like gadgets erp5_officejs: replicate appcache content into local storage - configurations like form definitions are saved as objects into data-storage.metadata to allow jio.get erp5_officejs: minor fixes and cleanup erp5_officejs: include non-json resources from appcache as blobs WIP erp5_officejs: getting rid of editable view for form rendering erp5_officejs: got rid of editable view form and using gadget_erp5_form directly erp5_officejs: removing unnecessary redirect erp5_officejs_ui_test: updating test erp5_officejs: fix in appcachestorage sync [HARCODED] erp5_hal_json_style: remove permission controls to appcache hatoas return-dict erp5_officejs: removing comments in appcache manifest erp5_officejs: revert get rid of editable view - editable view is generic enough for form editing, so it will be kept - but submit handling is done in controller gadget erp5_officejs: cleanup in controller html erp5_officejs: bug fixing on storage migration - new appcachestorage hash layer is created when new storage is selected erp5_hal_json_style: missing jio_view action in ERP5 Form portal type - needed to get the form definition from hateoas script erp5_officejs: new parameter appcache in hateoas script - this new parameter disable permission check when hateoas is called by bootloader - appcache storage sync is canceled if storage requires authentication - WIP: redirect to login not working erp5_officejs: extra controls in appcachestorage sync error handling erp5_officejs: logging more error details for failing unit test erp5_officejs: more error logging for tests - attempt to fix test erp5_officejs: more details in log for test erp5_officejs: adding configuration manifest explicitly - even is it committed, test fails due to "can't get manifest" erp5_officejs: using old appcache manifest instead of the configuration one erp5_officejs: no need of explicitly commit the configuration manifest or use old manifest - the test failed the same with both attempts erp5_officejs_ui_test: add a check for manifest configuration file erp5_officejs_ui_test: fix in configuration manifest url erp5_officejs: attempt to fix unit test appcache sync erp5_officejs_ui_test: cleanup erp5_officejs: clean up after test fix erp5_hal_json_style: fix permission issue for appcache storage sync - new parameter added for this scenario [HARDCODED] erp5_hal_json_style: forcing value of html post action jio_view erp5_hal_json_style: error handling in hardcoded action value [WIP] erp5_officejs: get rid of hardcoded form name in controller gadget - form name comes from the document portal type action - for now, path to action is hardcoded. It will come from a allDocs query (not implemented yet in appcachestorage sync) erp5_hal_json_style: fix test due to hardcode erp5_officejs: jio_allDocs queries can be done on local data storage after appcachestorage sync erp5_officejs: missing hateoas urls in appcache and configuration manifests Removing unnecessary modified files from merge request erp5_officejs: minor refactoring erp5_officejs: code cleanup
-
- 04 Apr, 2019 8 commits
-
-
Tristan Cavelier authored
/bug #20190204-1BF3A5A https://nexedijs.erp5.net/#/bug_module/20190204-1BF3A5A /reviewed-on nexedi/erp5!848
-
Tristan Cavelier authored
-
Tristan Cavelier authored
- local_roles: ( Assignee OR Assignor ) AND other_unknown_id: value [All criterions (AND)_______ v] [-][local_roles_____________ v] -> |Type | -. [Equal to (at least one)_ v] |Modification Date| : [Assignee________________ ] |Title | : [Assignor________________ ] |Reference | : [________________________ ] |Description | : search_column_list |State | : [-][other_unknown_id________ v] |Searchable Text | : [Equal to________________ v] |Search Expression| -' [value___________________ ] |local_roles | -. |other_unknown_id | -' additional_search_column_list
-
Tristan Cavelier authored
- the "Equal to (at least one)" operator is displayed in the same listbox as "Equal to" and "Contains" ; - this filter item can have multiple input value field ; - one input value field has to be filled (required) like on the other filter items ; - when extended_search is `title: ( "One" OR "Two" )`, behavior changed : ________before________ ______________now______________ Filter Editor Filter Editor [ At least one (OR) v] [ All criterions (AND)______ v] [-][ Title_________ v] [-][ Title__________________ v] [ Equal to______ v] [ Equal to (at least one) v] [ One___________ x] [ One____________________ x] [-][ Title_________ v] [ Two____________________ x] [ Equal to______ v] [ _______________________ ] [ Two___________ x] [+] [+] Search bar Search bar [One][Two][ _______ ] [One][Two][ ________________ ]
-
Romain Courteaud authored
Activate copy/paste/delete buttons on form list and form view. When selection listbox lines, only use what is visible / checked. This is required because of list methods which do not support catalog queries. This changes the behaviour of mass workflow transition action and delete action, but at least, it is consistent everywhere now, and so, easier to explain (what you see is what you change).
-
Romain Courteaud authored
-
Romain Courteaud authored
The listboxes in mass delete / state change dialogs are only used to confirm the lines selection.
-
Romain Courteaud authored
-
- 03 Apr, 2019 1 commit
-
-
Jérome Perrin authored
-
- 29 Mar, 2019 1 commit
-
-
Jérome Perrin authored
/reviewed-on nexedi/erp5!852
-
- 28 Mar, 2019 2 commits
-
-
Jérome Perrin authored
/reviewed-on nexedi/erp5!850
-
Jérome Perrin authored
Introduce a new ERP5Site_resetAccountingTransactionLineGroupingReference script to reset grouping reference on accounting transaction lines. This solve a problem with the way we activated on AccountingTransactionLine_resetGroupingReference the context of the line, if line was removed from OFS before activity was executed, the activity was discarded and grouping references on related lines was not reset. Also drop the unused `keep_if_valid_group` parameter, it was not making sense. /reviewed-on nexedi/erp5!849
-
- 26 Mar, 2019 3 commits
-
-
Vincent Pelletier authored
Also, make some existing sanitation happen earlier than before, to store values in a cleaner format.
-
Vincent Pelletier authored
-
Vincent Pelletier authored
-
- 25 Mar, 2019 2 commits
-
-
Jérome Perrin authored
-
Jérome Perrin authored
default is to run all tests
-
- 22 Mar, 2019 1 commit
-
-
Jérome Perrin authored
When there was parallel execution of this alarm with lots of non grouped lines, it can happen that lines are grouped but not indexed yet.
-
- 20 Mar, 2019 4 commits
-
-
Julien Muchembled authored
With recent changes in CMFActivity, getServerAddress is now used when setting up the site, before the ZServer is started, which means: - getServerAddress memoized a wrong return value; - the test didn't fail with --load.
-
Aurélien Vermylen authored
The button "Subscribe/Unsubscribe from Timer Service" does not clearly explain the fact that it determines whether or not Alarms are enabled in ERP5. It is very counter-intuitive to see Alarms on "enabled" in the "Configure Alarms" screen and yet not have them being run because the Alarm Node is not subscribed to the Timer Service. /reviewed-on nexedi/erp5!539
-
Jérome Perrin authored
Since the introduction of ERP5 Login, authentication by Access Token is broken, and it is only working if `erp5_login.getReference() == person.getUserId()` The scriptable part of access token changed, now scripts must return a user object - on which the plugin will call `getUserId` (it was not clear what they should return before, maybe login, but they should return a user id, not a login, as the token plays the same role as a login). To make it clear and to intentionally break compatibility as this is now something different, these scripts have been renamed to be `getUserValue` type based methods. /reviewed-on nexedi/erp5!838
-
Jérome Perrin authored
(because my editor runs python3 pytlint)
-
- 19 Mar, 2019 9 commits
-
-
Jérome Perrin authored
/reviewed-on nexedi/erp5!839
-
Jérome Perrin authored
This fallback seems useless in this context, getClientAddr should be available.
-
Jérome Perrin authored
This test does not need to create an actual user as it just check plugin extract login & password from request. This test does not need to install the plugin in PAS, the actual check instanciate another ERP5DumbHTTPExtractionPlugin.
-
Jérome Perrin authored
- no longer needed to have same user id and logins. - upgrader activate the plugin
-
Jérome Perrin authored
This keep the current behavior. Invalidating all logins is also a way to disable login for this user without having to find all tokens and invalidate them one by one
-
Jérome Perrin authored
for compatibility with login/password
-
Jérome Perrin authored
-
Jérome Perrin authored
Because this was broken, we took the liberty to introduce a breaking change to fix naming, now type based scripts are *_getUserValue and must return a user document, with a getUserId method returning the user id. Make this plugin also an IAuthenticationPlugin which does all the job of returning the user id. It does not really make sense to delegate this to default authenticator. A side effect is that token can still authenticate users with no assignments, since tokens are scriptable, if this is a requirement, it can be implemented in scripts. also update test: - plugin must be enabled for IAuthenticationPlugin - check complete authentication sequence, not just extraction - update scripts to new names - simplify transaction management - don't set self.person, it was not used anywhere - update _createPerson to reindex, as said in docstring - merge all tests in on test component
-
Jérome Perrin authored
-
- 14 Mar, 2019 5 commits
-
-
Xiaowu Zhang authored
benefit is very small and unusable for user nexedi/erp5@1f254aa7
-
Vincent Pelletier authored
This is called when checking access permission on objects, which happens very often. CachingMethod has a hit cost which is too high for this use. Instead, generate this method as part of the portal type class, removing all call-time logic.
-
Vincent Pelletier authored
It is superseded by __self__, which (where applicable) prevents acquisition and getattr-based traversal, improving performance. Patch AccessControl.users.BasicUser._check_context to extend this change to zope code (and simplify it in the process). Also, make __ac_local_roles__ accesses consistent with other places in our own code as well as in PAS & AccessControl.
-
Vincent Pelletier authored
getRoles is called a lot (on every restricted access, so hundreds of times per transaction), it is definitely not the right place to do extra computation, especially when their result does not change from one call to the next (configuration should only change on process restart, so not during a transaction - and even if it someday did, it should be fine to wait for next transaction for it to take effect). Instead, do the extra work when creating the user (typically once per transaction). Also, modernise python syntax (simplifications & style). Also, reduce code duplication from ERP5Security.ERP5UserFactory.
-
Vincent Pelletier authored
Simplifies callers, as they then do not have to test for None. Also, use sort(key=...), which removes the need for internal 2-tuple wrapping & unwrapping of all result entries. Also, coding style (helps line-based profiling readability) & better naming.
-