- 22 Jul, 2020 5 commits
-
-
Jérome Perrin authored
-
Jérome Perrin authored
Base_viewDict does not produce valid html, showing the dict using showDict is enough
-
Jérome Perrin authored
- use html5 doctype - don't use i18n: tags where they are not processed - use class instead of id for elements that are repeated - remove Content-*-Type meta that are reported as invalid by nvu
-
Jérome Perrin authored
this class does nothing and does not seem used
-
Jérome Perrin authored
-
- 20 Jul, 2020 6 commits
-
-
Arnaud Fontaine authored
-
Arnaud Fontaine authored
-
Arnaud Fontaine authored
-
Arnaud Fontaine authored
-
Jérome Perrin authored
Make `erp5_configurator_standard` use `erp5_configurator_standard_categories`. Since this is the business templates for standard (SME) configurator categories, it seems logical to install this business template when installing SME configuration. Before these changes, standard configurator was using a spreadsheet ( `standard_category.ods` ) to define the categories. Now this spreadsheet is almost empty, it only contain group and site that are custom and the configurated instance will install `erp5_configurator_standard_categories` business template. The main goal was to make generated configuration use unit conversion module instead of the obsolete quantity properties on quantity unit categories, but I thought it would make sense to use this `erp5_configurator_standard_categories` business template that is otherwise not used. See merge request nexedi/erp5!1172
-
Jérome Perrin authored
if for some reason an ERP5 document has some control characters in title of description and is exported in ODS/ODT, the export will fail with an etree error like this: Exception: Module Products.CMFActivity.ActivityTool, line 356, in __call__ result = method(*self.args, **self.kw) Module Products.ERP5Type.patches.PythonScript, line 179, in __call__ return self._orig_bindAndExec(args, kw, None) Module Shared.DC.Scripts.Bindings, line 359, in _bindAndExec return self._exec(bound_data, args, kw) Module Products.PythonScripts.PythonScript, line 344, in _exec result = f(*args, **kw) Module script, line 15, in Base_renderSimpleView - <PythonScript at /erp5/Base_renderSimpleView used for /erp5/sale_packing_list_module> - Line 15 report_data = getattr(context, deferred_style_dialog_method)(**params) Module AccessControl.ZopeGuards, line 369, in guarded_apply return builtin_guarded_apply(func, args, kws) Module AccessControl.ZopeGuards, line 391, in builtin_guarded_apply return func(*arglist, **argdict) Module Products.ERP5Form.Form, line 705, in __call__ return pt.pt_render(extra_context=extra_context) Module Products.ERP5OOo.OOoTemplate, line 484, in pt_render extra_context, request) Module Products.ERP5OOo.OOoTemplate, line 422, in renderIncludes xml_doc = etree.XML(text) Module lxml.etree, line 3192, in lxml.etree.XML (src/lxml/lxml.etree.c:78763) Module lxml.etree, line 1848, in lxml.etree._parseMemoryDocument (src/lxml/lxml.etree.c:118341) Module lxml.etree, line 1736, in lxml.etree._parseDoc (src/lxml/lxml.etree.c:117021) Module lxml.etree, line 1102, in lxml.etree._BaseParser._parseDoc (src/lxml/lxml.etree.c:111265) Module lxml.etree, line 595, in lxml.etree._ParserContext._handleParseResultDoc (src/lxml/lxml.etree.c:105109) Module lxml.etree, line 706, in lxml.etree._handleParseResult (src/lxml/lxml.etree.c:106817) Module lxml.etree, line 635, in lxml.etree._raiseParseError (src/lxml/lxml.etree.c:105671) XMLSyntaxError: PCDATA invalid Char value 20, line 228761, column 21 (line 228761) This is because XML does not accept the full range of characters, there are a few characters that are not allowed. To prevent these errors, we replace these invalid characters by an error character (�) before manipulating the XML with lxml.
-
- 17 Jul, 2020 13 commits
-
-
Xiaowu Zhang authored
See merge request nexedi/erp5!1193
-
Arnaud Fontaine authored
-
Jérome Perrin authored
We use to have consulting_configurator_sample_categories.ods and standard_category.ods . standard_category.ods was more complete, it contained standard_category.ods that was missing in consulting_configurator_sample_categories.ods . Now standard_category.ods no longer contain "standard" categories, these categories are now installed by business template, so update consulting_configurator_sample_categories.ods to the content of standard_category.ods with all categories (ie. before remove them all in 5e0091a6 )
-
Jérome Perrin authored
Use same spreadsheet for all consulting configurator tests
-
Jérome Perrin authored
When there's only one quantity unit in the group a conversion group, one definition is needed (this might be a bug).
-
Jérome Perrin authored
Instead of using a spreadsheet for categories, use erp5_configurator_standard_categories business template. This business template also configures quantity unit definition in the new way and no longer use obsolete way of setting quantity property on quantity unit categories. The included spreadsheet is still used, but all categories except group and site have been removed, it now only contain group/my_group and site/main.
-
Jérome Perrin authored
-
Jérome Perrin authored
Some configurator profiles uses a spreadsheet to define categories (consulting configurator), some use a business templates. For the ones using business template, because the categories are not available yet we have the values directly in the script.
-
Jérome Perrin authored
from erp5_configurator_standard/standard_category.ods
-
Jérome Perrin authored
from erp5_configurator_standard/standard_category.ods
-
Jérome Perrin authored
trade/order trade/discount and trade/tax were only in erp5_configurator_standard/standard_category.ods
-
Gabriel Monnerat authored
It seems that with ${here/portal_url} returns the ERP5 url , for example http://nohost/erp5 instead of http://nohost/erp5/web_site_module/renderjs_runner/
-
Jérome Perrin authored
Since a89afa43 (Formulator: Support disabled items in all ItemWidget subclasses., 2014-04-02) we can include disabled items in listfields. This was used for example in erp5_crm to show the services with their hierarchy as disabled items and was useful to display the hierarchy. In some fields, we don't want user to select "nodes" categories, but only select "leaves" categories (ie. select the most precise category). This always had a problem when using "Indented title" as display method for categories, because the user can not see the actual hierarchy. This is about making it possible to display hierarchy of categories in this case where we select only leaves, so that it displays like this: ![screenshot of a category with disabled items for hierarchy](/uploads/0f3e8ef68ab6e2ec424e4e8d42fc5e2a/image.png) This required to: - introduce a new category API, `disable_node`, which is semantically very close to `filter_node` except that instead of filtering out node categories that are kept with `None` as related URL. Symmetrically, we also introduce `disable_leave` - make `ParallelListField` support disabled items. Even if this was properly supported in underlying fields, some parts in `ParallelListField` did not differentiate between `None` and `''`. - modify several forms to use `disable_node` instead of `filter_node` See merge request nexedi/erp5!1199
-
- 16 Jul, 2020 5 commits
-
-
Lu Xu authored
-
Jérome Perrin authored
For PDM/Trade we use: - "Site" for node category - "Warehouse" for node - "Owner" for section category - "Owner" for section For Invoicing/Accounting this does not change. Also, since in PDM/Trade context we are sometimes only taking care of physical movements/quantities and not the ownership, make sure that: - "Site" is first in report dialogs - "Section Category" is not initialised from preference, so that reports show the quantities in a location regardless of the ownership See merge request nexedi/erp5!1202
-
Jérome Perrin authored
- add an empty item to the list, so that user have to choose something. The empty item was missing here: ![image](/uploads/5be3e9d5acf1233270516c7463dbfdd4/image.png) If there's an empty item and we force user to choose, there will not be the problem that user can forget to select the good value and mistakenly generates for the Fifo because it's the first value. - translate values See merge request nexedi/erp5!1204
-
Jérome Perrin authored
A few small fixes to form and page templates to allow their translations Missing messages in french translation See merge request nexedi/erp5!1201
-
Jérome Perrin authored
See merge request nexedi/erp5!1198
-
- 15 Jul, 2020 5 commits
-
-
Rafael Monnerat authored
See merge request nexedi/erp5!1197
-
Xiaowu Zhang authored
See merge request nexedi/erp5!1196
-
Arnaud Fontaine authored
Also, as OAuthTool class is only used as a Folder ({Google,Facebook}Connector) remove {unused,unmaintained,unfinished} code: * Properties are statically set on portal_oauth directly with non-persistent classes define in OAuthTool.py. This prevents migration to ZODB Components as migrating OAuthTool.py to erp5_oauth would break upgrade: chicken & egg issue: we need these classes on importFile(portal_oauth.xml) (portal_templates.download()) but they are not available until the bt5 is installed.... * Several properties are supposed to be secret but statically set in OAuthTool.py. * This code has never been used since its introduction 9 years ago.
-
Xiaowu Zhang authored
-
Xiaowu Zhang authored
-
- 14 Jul, 2020 1 commit
-
-
Jérome Perrin authored
Unlike trade and like accounting, for invoice we are using "Section Category" term for section category, it's no longer about "who is the owner of this stock" like in trade, but already "who is the entity" like in accounting
-
- 13 Jul, 2020 5 commits
-
-
Rafael Monnerat authored
-
Jérome Perrin authored
- add an empty item to the list, so that user have to choose something - translate values
-
Jérome Perrin authored
for consistency with other stock reports such as Base_viewStockReportBySiteDialog
-
Jérome Perrin authored
-
Jérome Perrin authored
-