Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
E
erp5_rtl_support
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Romain Courteaud
erp5_rtl_support
Commits
09b85674
Commit
09b85674
authored
Jul 06, 2017
by
Ayush Tiwari
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
bt5_config: Change the way sorting is carried out
parent
31a3541d
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
30 additions
and
33 deletions
+30
-33
product/ERP5/Tool/TemplateTool.py
product/ERP5/Tool/TemplateTool.py
+30
-33
No files found.
product/ERP5/Tool/TemplateTool.py
View file @
09b85674
...
...
@@ -641,13 +641,13 @@ class TemplateTool (BaseTool):
# For modules, we don'
t
need
to
create
path
for
the
module
module_list
=
import_template
.
getTemplateModuleIdList
()
for
path
in
module_list
:
template_path_list
.
append
(
path
+
' | 1 | 1'
)
template_path_list
.
append
(
path
)
# For portal_types, we have to add path and subobjects
portal_type_id_list
=
import_template
.
getTemplatePortalTypeIdList
()
portal_type_path_list
=
[]
for
id
in
portal_type_id_list
:
portal_type_path_list
.
append
(
'portal_types/'
+
id
+
' | 1 | 1'
)
portal_type_path_list
.
append
(
'portal_types/'
+
id
)
#portal_type_path_list.append('portal_types/'+id+'/**')
template_path_list
.
extend
(
portal_type_path_list
)
...
...
@@ -655,7 +655,7 @@ class TemplateTool (BaseTool):
category_list
=
import_template
.
getTemplateBaseCategoryList
()
category_path_list
=
[]
for
base_category
in
category_list
:
category_path_list
.
append
(
'portal_categories/'
+
base_category
+
' | 1 | 1'
)
category_path_list
.
append
(
'portal_categories/'
+
base_category
)
#category_path_list.append('portal_categories/'+base_category+'/**')
template_path_list
.
extend
(
category_path_list
)
...
...
@@ -663,7 +663,7 @@ class TemplateTool (BaseTool):
template_tool_id_list
=
import_template
.
getTemplateToolIdList
()
tool_id_list
=
[]
for
tool_id
in
template_tool_id_list
:
tool_id_list
.
append
(
tool_id
+
' | 1 | 1'
)
tool_id_list
.
append
(
tool_id
)
template_path_list
.
extend
(
tool_id_list
)
# Adding business template skin selection property on the portal_tempaltes
...
...
@@ -677,7 +677,7 @@ class TemplateTool (BaseTool):
portal_skin_list
=
import_template
.
getTemplateSkinIdList
()
portal_skin_path_list
=
[]
for
skin
in
portal_skin_list
:
portal_skin_path_list
.
append
(
'portal_skins/'
+
skin
+
' | 1 | 1'
)
portal_skin_path_list
.
append
(
'portal_skins/'
+
skin
)
#portal_skin_path_list.append('portal_skins/'+skin+'/**')
template_path_list
.
extend
(
portal_skin_path_list
)
...
...
@@ -691,20 +691,20 @@ class TemplateTool (BaseTool):
workflow_id_list
=
import_template
.
getTemplateWorkflowIdList
()
workflow_path_list
=
[]
for
workflow
in
workflow_id_list
:
workflow_path_list
.
append
(
'portal_workflow/'
+
workflow
+
' | 1 | 1'
)
workflow_path_list
.
append
(
'portal_workflow/'
+
workflow
)
#workflow_path_list.append('portal_workflow/' + workflow + '/**')
template_path_list
.
extend
(
workflow_path_list
)
# For paths, we add them directly to the path list
path_list
=
import_template
.
getTemplatePathList
()
for
path
in
path_list
:
template_path_list
.
append
(
path
+
' | 1 | 1'
)
template_path_list
.
append
(
path
)
# Catalog methods would be added as sub objects
catalog_method_item_list
=
import_template
.
getTemplateCatalogMethodIdList
()
catalog_method_path_list
=
[]
for
method
in
catalog_method_item_list
:
catalog_method_path_list
.
append
(
'portal_catalog/'
+
method
+
' | 1 | 1'
)
catalog_method_path_list
.
append
(
'portal_catalog/'
+
method
)
template_path_list
.
extend
(
catalog_method_path_list
)
# For catalog objects, we check if there is any catalog object, and then
...
...
@@ -768,21 +768,21 @@ class TemplateTool (BaseTool):
else
:
catalog_path
=
'portal_catalog/erp5_mysql_innodb'
removable_sub_object_path
.
append
(
catalog_path
)
template_path_list
.
append
(
catalog_path
+
' | 1 | 1'
)
template_path_list
.
append
(
catalog_path
)
removable_property
[
catalog_path
]
=
properties_removed
for
prop
in
properties_removed
:
property_path_list
.
append
(
'%s#%s
| 1 | 1
'
%
(
catalog_path
,
prop
))
property_path_list
.
append
(
'%s#%s'
%
(
catalog_path
,
prop
))
# Add these catalog items in the object_property instead of adding
# dummy path item for them
if
import_template
.
getTitle
()
==
'erp5_mysql_innodb_catalog'
:
template_path_list
.
extend
(
'portal_catalog/erp5_mysql_innodb
| 1 | 1
'
)
template_path_list
.
extend
(
'portal_catalog/erp5_mysql_innodb'
)
# Add portal_property_sheets
property_sheet_id_list
=
import_template
.
getTemplatePropertySheetIdList
()
property_sheet_path_list
=
[]
for
property_sheet
in
property_sheet_id_list
:
property_sheet_path_list
.
append
(
'portal_property_sheets/'
+
property_sheet
+
' | 1 | 1'
)
property_sheet_path_list
.
append
(
'portal_property_sheets/'
+
property_sheet
)
#property_sheet_path_list.append('portal_property_sheets/' + property_sheet + '/**')
template_path_list
.
extend
(
property_sheet_path_list
)
...
...
@@ -795,13 +795,17 @@ class TemplateTool (BaseTool):
template_path_list
.
extend
(
property_path_list
)
template_path_list
.
extend
(
selection_list
)
template_path_list
=
self
.
cleanTemplatePathList
(
template_path_list
)
template_path_list
=
self
.
sortPathList
(
template_path_list
)
template_path_list
=
sorted
(
template_path_list
,
key
=
lambda
x
:
x
[
1
])
# XXX: Add layer=1 and sign=1 for default for all paths
template_path_list
=
[
l
+
' | 1 | 1'
for
l
in
template_path_list
]
migrated_bm
.
setProperty
(
'template_path_list'
,
template_path_list
)
kw
[
'removable_property'
]
=
removable_property
kw
[
'removable_sub_object_path'
]
=
removable_sub_object_path
migrated_bm
.
build
(
**
kw
)
# Commit transaction to generate all oids before exporting
transaction
.
commit
()
# Export the newly built business package to the export directory
...
...
@@ -815,14 +819,12 @@ class TemplateTool (BaseTool):
Remove redundant paths and sub-objects' path if the object path already
exist.
"""
# Remove layer and sign
a1
=
[
l
.
split
(
' | '
)[
0
]
for
l
in
path_list
]
# Split path into list
a2
=
[
l
.
split
(
'/'
)
for
l
in
a1
]
a2
=
[
l
.
split
(
'/'
)
for
l
in
path_list
]
# Create new list for paths with **
a3
=
[
l
for
l
in
a2
if
l
[
-
1
]
==
'**'
]
a3
=
[
l
for
l
in
a2
if
l
[
-
1
]
in
(
'**'
,
'*'
)
]
# Create new list for paths without **
a4
=
[
l
for
l
in
a2
if
l
[
-
1
]
!=
'**'
]
a4
=
[
l
for
l
in
a2
if
l
[
-
1
]
not
in
(
'**'
,
'*'
)
]
# Remove ** from paths in a3
reserved_id
=
(
'portal_transforms'
,
'portal_ids'
)
a3
=
[
l
[:
-
1
]
for
l
in
a3
if
l
[
0
]
not
in
reserved_id
]
+
[
l
for
l
in
a3
if
l
[
0
]
in
reserved_id
]
...
...
@@ -833,11 +835,9 @@ class TemplateTool (BaseTool):
# Remove the redundant paths
seen
=
set
()
seen_add
=
seen
.
add
# XXX: What about redundant signs with different layers
# Maybe we will end up reducing them
a2
=
[
x
for
x
in
a2
if
not
(
x
in
seen
or
seen_add
(
x
))]
# Sort the path list
#a2.sort()
# Add the layer and signs, for now all 1
a2
=
[
l
+
' | 1 | 1'
for
l
in
a2
]
return
a2
...
...
@@ -2024,17 +2024,14 @@ class TemplateTool (BaseTool):
Custom sort for path_list according to the priorities of paths
"""
def
comparePath
(
path
):
path
=
path
.
split
(
' | '
)[
0
]
if
path
.
split
(
'/'
)[
-
1
]
==
'**'
:
return
20
elif
len
(
path
.
split
(
'/'
))
==
1
:
split_path_list
=
path
.
split
(
'/'
)
if
len
(
split_path_list
)
==
2
and
split_path_list
[
0
]
in
(
'portal_types'
,
'portal_categories'
)
:
return
1
if
len
(
split_path_list
)
>
2
:
return
10
elif
len
(
path
.
split
(
'/'
))
>
2
:
return
9
elif
path
.
split
(
'/'
)[
0
]
in
(
'portal_types'
,
'portal_categories'
):
return
-
10
else
:
return
0
if
len
(
split_path_list
)
==
1
:
return
2
return
5
return
sorted
(
path_list
,
key
=
comparePath
)
...
...
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