1. 21 Jul, 2020 18 commits
  2. 20 Jul, 2020 9 commits
    • Xiaowu Zhang's avatar
    • Xiaowu Zhang's avatar
    • Arnaud Fontaine's avatar
    • Arnaud Fontaine's avatar
    • Arnaud Fontaine's avatar
      eecc736c
    • Arnaud Fontaine's avatar
      185f4abe
    • Arnaud Fontaine's avatar
    • Jérome Perrin's avatar
      configurator: use business template for categories · 1937c097
      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
      1937c097
    • Jérome Perrin's avatar
      ERP5OOo: don't fail exporting documents with control character · e4e12259
      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.
      e4e12259
  3. 17 Jul, 2020 13 commits