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
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Bryan Kaperick
erp5
Commits
e2fa25fc
Commit
e2fa25fc
authored
May 11, 2016
by
Julien Muchembled
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
erp5_forge: improve script to compare fields of 2 skins, to make results easier to read
parent
e1d57590
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
44 additions
and
44 deletions
+44
-44
bt5/erp5_forge/SkinTemplateItem/portal_skins/erp5_toolbox/Base_checkSkinFolderForms.py
...em/portal_skins/erp5_toolbox/Base_checkSkinFolderForms.py
+44
-44
No files found.
bt5/erp5_forge/SkinTemplateItem/portal_skins/erp5_toolbox/Base_checkSkinFolderForms.py
View file @
e2fa25fc
skin_folder
=
getattr
(
context
.
portal_skins
,
original_skin_name
)
new_skin_folder
=
getattr
(
context
.
portal_skins
,
new_skin_name
)
output_list
=
[]
from
cgi
import
escape
portal
=
context
.
getPortalObject
()
skin_folder
=
portal
.
portal_skins
[
original_skin_name
]
new_skin_folder
=
portal
.
portal_skins
[
new_skin_name
]
output_list
=
[
"""<html><head><style>
table { border-collapse: collapse; }
th, td { border: 1px solid gray; padding: 0 .3em; }
</style></head><body>"""
]
output_append
=
output_list
.
append
output_append
(
"<html>"
)
output_append
(
" <body>"
)
for
original_form
in
skin_folder
.
objectValues
():
if
(
original_form
.
meta_type
==
'ERP5 Form'
or
original_form
.
meta_type
==
'ERP5 Report'
)
and
not
original_form
.
getId
().
endswith
(
'FieldLibrary'
):
new_form
=
getattr
(
new_skin_folder
,
original_form
.
id
)
if
original_form
.
meta_type
in
(
'ERP5 Form'
,
'ERP5 Report'
)
and
\
not
original_form
.
getId
().
endswith
(
'FieldLibrary'
):
new_form
=
new_skin_folder
[
original_form
.
id
]
for
original_field
in
original_form
.
objectValues
():
new_field
=
getattr
(
new_form
,
original_field
.
id
,
None
)
if
new_field
is
None
:
output_append
(
"Missing %s in %s"
%
(
original_field
.
id
,
new_form
))
else
:
original_value_dict
,
original_value_tales
=
context
.
Base_getFieldData
(
original_field
)
try
:
new_value_dict
,
new_value_tales
=
context
.
Base_getFieldData
(
new_field
)
except
AttributeError
:
new_value_dict
=
new_value_tales
=
None
output_append
(
"Dead proxy field %s %s"
%
(
original_field
.
id
,
new_form
))
if
new_value_dict
is
not
None
:
if
(
original_value_dict
!=
new_value_dict
)
or
\
(
original_value_tales
!=
new_value_tales
):
output_append
(
"%s %s <a href='%s'>old</a> <a href='%s'>new</a>"
%
(
new_form
.
id
,
new_field
.
id
,
original_field
.
absolute_url
()
+
'/manage_main'
,
new_field
.
absolute_url
()
+
'/manage_main'
))
output_append
(
"<blockquote><ul>"
)
for
key
,
original_value
in
original_value_dict
.
items
():
if
original_value
!=
new_value_dict
[
key
]:
output_append
(
" <li>"
+
key
+
' Origin: %s '
%
original_value
\
+
' New: %s</li>'
%
new_value_dict
[
key
])
for
key
,
original_value
in
original_value_tales
.
items
():
if
original_value
!=
new_value_tales
[
key
]:
output_append
(
" <li>"
+
key
+
' Origin: %s '
%
original_value
\
+
' New: %s<br></li>'
%
new_value_tales
[
key
])
output_append
(
"</ul></blockquote>"
)
try
:
new_field
=
new_form
[
original_field
.
id
]
except
KeyError
:
output_append
(
"<p>Missing %s in %s</p>"
%
(
original_field
.
id
,
new_form
.
id
))
continue
try
:
new_value_dict
,
new_value_tales
=
portal
.
Base_getFieldData
(
new_field
)
except
AttributeError
:
output_append
(
"<p>Dead proxy field %s %s</p>"
%
(
original_field
.
id
,
new_form
.
id
))
continue
original_value_dict
,
original_value_tales
=
portal
.
Base_getFieldData
(
original_field
)
if
original_value_dict
==
new_value_dict
and
\
original_value_tales
==
new_value_tales
:
continue
output_append
(
"<p>%s/%s<blockquote><table><tr><th>name</th>"
"<th><a href='%s/manage_main'>old</a></th>"
"<th><a href='%s/manage_main'>new</a></th>"
"</tr>"
%
(
new_form
.
id
,
new_field
.
id
,
original_field
.
absolute_url
(),
new_field
.
absolute_url
()))
output_list
+=
(
"<tr><td>%s</td></tr>"
%
"</td><td>"
.
join
(
map
(
escape
,
(
'[%s]'
%
key
if
T
else
key
,
str
(
old
),
str
(
new
[
key
]))))
for
T
,
old
,
new
in
((
0
,
original_value_dict
,
new_value_dict
),
(
1
,
original_value_tales
,
new_value_tales
))
for
key
,
old
in
old
.
iteritems
()
if
old
!=
new
[
key
])
output_append
(
"</table></blockquote><p>"
)
output_append
(
"Finished<br>"
)
output_append
(
" </body>"
)
...
...
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