Commit 52d02e40 authored by Jérome Perrin's avatar Jérome Perrin

BusinessTemplate: py3

parent 388259f4
...@@ -351,7 +351,6 @@ class BusinessTemplateArchive(object): ...@@ -351,7 +351,6 @@ class BusinessTemplateArchive(object):
if hasattr(obj, 'read'): if hasattr(obj, 'read'):
obj.seek(0) obj.seek(0)
obj = obj.read() obj = obj.read()
#import pdb; pdb.set_trace()
if not isinstance(obj, bytes): if not isinstance(obj, bytes):
obj = obj.encode('utf-8') obj = obj.encode('utf-8')
self.revision.hash(path, obj) self.revision.hash(path, obj)
...@@ -875,7 +874,7 @@ class ObjectTemplateItem(BaseTemplateItem): ...@@ -875,7 +874,7 @@ class ObjectTemplateItem(BaseTemplateItem):
f = StringIO() f = StringIO()
exportXML(obj._p_jar, obj._p_oid, f) exportXML(obj._p_jar, obj._p_oid, f)
bta.addObject(f.getvalue().encode(), key, path=path) bta.addObject(str2bytes(f.getvalue()), key, path=path)
if catalog_method_template_item: if catalog_method_template_item:
# add all datas specific to catalog inside one file # add all datas specific to catalog inside one file
...@@ -1532,7 +1531,7 @@ class ObjectTemplateItem(BaseTemplateItem): ...@@ -1532,7 +1531,7 @@ class ObjectTemplateItem(BaseTemplateItem):
# in a separate file (such as the one from # in a separate file (such as the one from
# testTemplateTool.TestTemplateTool.test_updateBusinessTemplateFromUrl_keep_list) # testTemplateTool.TestTemplateTool.test_updateBusinessTemplateFromUrl_keep_list)
# data might be loaded as a string, fix this here. # data might be loaded as a string, fix this here.
if not isinstance(obj.data, (bytes, Pdata)): if obj.data is not None and not isinstance(obj.data, (bytes, Pdata)):
obj.data = obj.data.encode() obj.data = obj.data.encode()
# XXX Calling obj._setData() would call Interaction Workflow such # XXX Calling obj._setData() would call Interaction Workflow such
# as document_conversion_interaction_workflow which would update # as document_conversion_interaction_workflow which would update
...@@ -6114,8 +6113,8 @@ Business Template is a set of definitions, such as skins, portal types and categ ...@@ -6114,8 +6113,8 @@ Business Template is a set of definitions, such as skins, portal types and categ
'_test_item', '_message_translation_item',] '_test_item', '_message_translation_item',]
if item_name in item_list_1: if item_name in item_list_1:
f1 = BytesIO() # for XML export of New Object f1 = StringIO() # for XML export of New Object
f2 = BytesIO() # For XML export of Installed Object f2 = StringIO() # For XML export of Installed Object
# Remove unneeded properties # Remove unneeded properties
new_object = new_item.removeProperties(new_object, 1) new_object = new_item.removeProperties(new_object, 1)
installed_object = installed_item.removeProperties(installed_object, 1) installed_object = installed_item.removeProperties(installed_object, 1)
...@@ -6759,7 +6758,9 @@ Business Template is a set of definitions, such as skins, portal types and categ ...@@ -6759,7 +6758,9 @@ Business Template is a set of definitions, such as skins, portal types and categ
from base64 import b64encode from base64 import b64encode
def __newTempComponent(portal_type, reference, source_reference, migrate=False): def __newTempComponent(portal_type, reference, source_reference, migrate=False):
uid = b64encode("%s|%s|%s" % (portal_type, reference, source_reference)) uid = b64encode(("%s|%s|%s" % (portal_type, reference, source_reference)).encode())
if six.PY3:
uid = uid.decode()
if migrate: if migrate:
bt_migratable_uid_list.append(uid) bt_migratable_uid_list.append(uid)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment