Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
erp5
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Labels
Merge Requests
7
Merge Requests
7
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Jobs
Commits
Open sidebar
Jérome Perrin
erp5
Commits
823decfa
Commit
823decfa
authored
2 years ago
by
Kazuhiko Shiozaki
Committed by
Jérome Perrin
9 months ago
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
py2/py3: make translation code compatible.
parent
9392222e
Changes
2
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
8 additions
and
6 deletions
+8
-6
product/ERP5/bootstrap/erp5_core/SkinTemplateItem/portal_skins/erp5_core/ERP5Site_updateTranslationTable.py
...portal_skins/erp5_core/ERP5Site_updateTranslationTable.py
+5
-5
product/Localizer/MessageCatalog.py
product/Localizer/MessageCatalog.py
+3
-1
No files found.
product/ERP5/bootstrap/erp5_core/SkinTemplateItem/portal_skins/erp5_core/ERP5Site_updateTranslationTable.py
View file @
823decfa
from
Products.ERP5Type.Utils
import
getMessageIdWithContext
from
Products.ERP5Type.Utils
import
getMessageIdWithContext
,
str2unicode
,
unicode2str
supported_languages
=
context
.
Localizer
.
get_supported_languages
()
translated_keys
=
{}
# This dict prevents entering the same key twice
...
...
@@ -34,7 +34,7 @@ for portal_type in portal_type_list:
for
lang
in
supported_languages
:
key
=
(
lang
,
portal_type
.
getId
(),
state_var
,
state_reference
)
if
key
not
in
translated_keys
:
translated_message
=
context
.
Localizer
.
erp5_ui
.
gettext
(
state_reference
,
lang
=
lang
).
encode
(
'utf-8'
)
translated_message
=
unicode2str
(
context
.
Localizer
.
erp5_ui
.
gettext
(
state_reference
,
lang
=
lang
)
)
translated_keys
[
key
]
=
None
# mark as translated
object_list
.
append
(
dict
(
language
=
lang
,
message_context
=
state_var
,
portal_type
=
portal_type
.
getId
(),
original_message
=
state_reference
,
translated_message
=
translated_message
))
...
...
@@ -43,10 +43,10 @@ for portal_type in portal_type_list:
if
state
.
getTitle
()
is
not
None
and
state
.
getTitle
()
!=
''
:
state_var_title
=
'%s_title'
%
state_var
msg_id
=
getMessageIdWithContext
(
state
.
getTitle
(),
'state'
,
wf_id
)
translated_message
=
context
.
Localizer
.
erp5_ui
.
gettext
(
msg_id
,
default
=
''
,
lang
=
lang
).
encode
(
'utf-8'
)
translated_message
=
unicode2str
(
context
.
Localizer
.
erp5_ui
.
gettext
(
msg_id
,
default
=
''
,
lang
=
lang
)
)
if
translated_message
==
''
:
msg_id
=
state
.
getTitle
()
translated_message
=
context
.
Localizer
.
erp5_ui
.
gettext
(
state
.
getTitle
().
decode
(
'utf-8'
),
lang
=
lang
).
encode
(
'utf-8'
)
translated_message
=
unicode2str
(
context
.
Localizer
.
erp5_ui
.
gettext
(
str2unicode
(
state
.
getTitle
()),
lang
=
lang
)
)
key
=
(
lang
,
portal_type
.
getId
(),
state_var_title
,
state_reference
,
msg_id
)
if
key
not
in
translated_keys
:
translated_keys
[
key
]
=
None
# mark as translated
...
...
@@ -67,7 +67,7 @@ for ptype in context.portal_types.objectValues():
if
key
not
in
translated_keys
:
translated_keys
[
key
]
=
None
# mark as translated
object_list
.
append
(
dict
(
language
=
lang
,
message_context
=
'portal_type'
,
portal_type
=
portal_type
,
original_message
=
portal_type
,
translated_message
=
context
.
Localizer
.
erp5_ui
.
gettext
(
portal_type
,
lang
=
lang
).
encode
(
'utf-8'
)))
translated_message
=
unicode2str
(
context
.
Localizer
.
erp5_ui
.
gettext
(
portal_type
,
lang
=
lang
)
)))
if
object_list
:
catalog_translation_list
(
object_list
)
...
...
This diff is collapsed.
Click to expand it.
product/Localizer/MessageCatalog.py
View file @
823decfa
...
...
@@ -688,8 +688,10 @@ class MessageCatalog(LanguageManager, ObjectManager, SimpleItem):
def
manage_import
(
self
,
lang
,
file
,
REQUEST
=
None
,
RESPONSE
=
None
):
""" """
# XXX For backwards compatibility only, use "po_import" instead.
if
isinstance
(
file
,
str
):
if
isinstance
(
file
,
str
):
# six.PY2
content
=
file
elif
isinstance
(
file
,
bytes
):
# six.PY3
content
=
file
.
decode
()
else
:
content
=
file
.
read
()
...
...
This diff is collapsed.
Click to expand it.
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment