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
Léo-Paul Géneau
erp5
Commits
400c58e9
Commit
400c58e9
authored
Jan 19, 2023
by
Xiaowu Zhang
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
erp5_*: add ZODB History report instead of using links in History tabs
parent
241f7b53
Changes
13
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
13 changed files
with
353 additions
and
674 deletions
+353
-674
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testERP5Core.py
...tTemplateItem/portal_components/test.erp5.testERP5Core.py
+1
-0
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testZODBHistory.py
...mplateItem/portal_components/test.erp5.testZODBHistory.py
+5
-7
bt5/erp5_hal_json_style/TestTemplateItem/portal_components/test.erp5.testHalJsonStyle.py
...plateItem/portal_components/test.erp5.testHalJsonStyle.py
+0
-12
bt5/erp5_ui_test/PathTemplateItem/portal_tests/document_zuite/testZODBHistory.xml
...plateItem/portal_tests/document_zuite/testZODBHistory.xml
+58
-0
bt5/erp5_ui_test/PathTemplateItem/portal_tests/document_zuite/testZODBHistory.zpt
...plateItem/portal_tests/document_zuite/testZODBHistory.zpt
+113
-0
bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_zuite/testZODBHistoryInExportPage.xml
...l_tests/renderjs_ui_zuite/testZODBHistoryInExportPage.xml
+58
-0
bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_zuite/testZODBHistoryInExportPage.zpt
...l_tests/renderjs_ui_zuite/testZODBHistoryInExportPage.zpt
+44
-0
product/ERP5/bootstrap/erp5_core/ActionTemplateItem/portal_types/portal_actions/zodb_history.xml
...TemplateItem/portal_types/portal_actions/zodb_history.xml
+71
-0
product/ERP5/bootstrap/erp5_core/SkinTemplateItem/portal_skins/erp5_core/Base_viewHistory.xml
...nTemplateItem/portal_skins/erp5_core/Base_viewHistory.xml
+1
-3
product/ERP5/bootstrap/erp5_core/SkinTemplateItem/portal_skins/erp5_core/Base_viewHistory/your_zodb_history.xml
...al_skins/erp5_core/Base_viewHistory/your_zodb_history.xml
+0
-334
product/ERP5/bootstrap/erp5_core/SkinTemplateItem/portal_skins/erp5_core/Base_viewZODBHistory.xml
...plateItem/portal_skins/erp5_core/Base_viewZODBHistory.xml
+1
-3
product/ERP5/bootstrap/erp5_core/SkinTemplateItem/portal_skins/erp5_core/Base_viewZODBHistory/your_workflow_history.xml
.../erp5_core/Base_viewZODBHistory/your_workflow_history.xml
+0
-315
product/ERP5/bootstrap/erp5_core/bt/template_action_path_list
...uct/ERP5/bootstrap/erp5_core/bt/template_action_path_list
+1
-0
No files found.
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testERP5Core.py
View file @
400c58e9
...
...
@@ -243,6 +243,7 @@ class TestERP5Core(ERP5TypeTestCase, ZopeTestCase.Functional):
'title'
:
'View Historical Diff'
}],
'object_jio_action'
:
[{
'id'
:
'post_query'
,
'title'
:
'Post a Query'
}],
'object_jio_jump'
:
[{
'id'
:
'jump_query'
,
'title'
:
'Queries'
}],
'object_jio_report'
:
[{
'id'
:
'zodb_history'
,
'title'
:
'ZODB History'
}],
'object_jump'
:
[{
'id'
:
'jump_related_object'
,
'title'
:
'Related Objects'
}],
'object_search'
:
[{
'title'
:
'Search'
,
'id'
:
'search'
}],
'object_sort'
:
[{
'title'
:
'Sort'
,
'id'
:
'sort_on'
}],
...
...
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testZODBHistory.py
View file @
400c58e9
...
...
@@ -117,17 +117,15 @@ class TestZODBHistory(ERP5TypeTestCase):
"""
self
.
loginByUserName
(
'tatuya'
)
document
=
self
.
addOrganisation
(
'document'
)
report_id_list
=
[
x
[
'id'
]
for
x
in
self
.
portal
.
portal_actions
.
listFilteredActionsFor
(
document
).
get
(
'object_jio_report'
,[])]
# by default, users have a link to view ZODB history in history tab
self
.
assertIn
(
'your_zodb_history'
,
[
field
.
getId
()
for
field
in
document
.
Base_viewHistory
.
get_fields
()])
self
.
assertIn
(
'zodb_history'
,
report_id_list
)
# when user does not have "View History" permission, the link is not displayed
document
.
manage_permission
(
'View History'
,
[],
0
)
self
.
assertNotIn
(
'your_zodb_history'
,
[
field
.
getId
()
for
field
in
document
.
Base_viewHistory
.
get_fields
()]
)
report_id_list
=
[
x
[
'id'
]
for
x
in
self
.
portal
.
portal_actions
.
listFilteredActionsFor
(
document
).
get
(
'object_jio_report'
,[])]
self
.
assertNotIn
(
'zodb_history'
,
report_id_list
)
# accessing the form directly is not allowed either
from
zExceptions
import
Unauthorized
...
...
bt5/erp5_hal_json_style/TestTemplateItem/portal_components/test.erp5.testHalJsonStyle.py
View file @
400c58e9
...
...
@@ -1187,10 +1187,6 @@ class TestERP5Document_getHateoas_mode_traverse(ERP5HALJSONStyleSkinsMixin):
self.assertEqual(result_dict['
_embedded
']['
_view
']['
form_id
']['
required
'], 1)
self.assertEqual(result_dict['
_embedded
']['
_view
']['
form_id
']['
type
'], '
StringField
')
self.assertEqual(result_dict['
_embedded
']['
_view
']['
your_zodb_history
']['
title
'], '
View
ZODB
History
')
self.assertEqual(result_dict['
_embedded
']['
_view
']['
your_zodb_history
']['
key
'], '
field_your_zodb_history
')
self.assertEqual(result_dict['
_embedded
']['
_view
']['
your_zodb_history
']['
type
'], '
LinkField
')
# Check embedded report section rendering
self.assertEqual(result_dict['
_embedded
']['
_view
']['
report_section_list
'][1]['
form_id
']['
default
'], '
Base_viewWorkflowHistory
')
self.assertEqual(result_dict['
_embedded
']['
_view
']['
report_section_list
'][1]['
form_id
']['
editable
'], 0)
...
...
@@ -1205,14 +1201,6 @@ class TestERP5Document_getHateoas_mode_traverse(ERP5HALJSONStyleSkinsMixin):
self.assertEqual(result_dict['
_embedded
']['
_view
']['
report_section_list
'][1]['
_links
']['
form_definition
']['
href
'], '
urn
:
jio
:
get
:
portal_skins
/
erp5_core
/
Base_viewWorkflowHistory
')
self.assertEqual(result_dict['
_embedded
']['
_view
']['
report_section_list
'][1]['
_links
']['
form_definition
']['
name
'], '
Base_viewWorkflowHistory
')
self.assertEqual(
result_dict['
_embedded
']['
_view
']['
_embedded
']['
form_definition
']['
group_list
'][0][0],
'
center
'
)
self.assertEqual(
result_dict['
_embedded
']['
_view
']['
_embedded
']['
form_definition
']['
group_list
'][0][1][0],
['
your_zodb_history
', {'
meta_type
': '
LinkField
'}]
)
self.assertEqual(
result_dict['
_embedded
']['
_view
']['
_embedded
']['
form_definition
']['
pt
'],
'
report_view
'
...
...
bt5/erp5_ui_test/PathTemplateItem/portal_tests/document_zuite/testZODBHistory.xml
0 → 100644
View file @
400c58e9
<?xml version="1.0"?>
<ZopeData>
<record
id=
"1"
aka=
"AAAAAAAAAAE="
>
<pickle>
<global
name=
"ZopePageTemplate"
module=
"Products.PageTemplates.ZopePageTemplate"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
_bind_names
</string>
</key>
<value>
<object>
<klass>
<global
name=
"NameAssignments"
module=
"Shared.DC.Scripts.Bindings"
/>
</klass>
<tuple/>
<state>
<dictionary>
<item>
<key>
<string>
_asgns
</string>
</key>
<value>
<dictionary>
<item>
<key>
<string>
name_subpath
</string>
</key>
<value>
<string>
traverse_subpath
</string>
</value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</state>
</object>
</value>
</item>
<item>
<key>
<string>
content_type
</string>
</key>
<value>
<string>
text/html
</string>
</value>
</item>
<item>
<key>
<string>
expand
</string>
</key>
<value>
<int>
0
</int>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
testZODBHistory
</string>
</value>
</item>
<item>
<key>
<string>
output_encoding
</string>
</key>
<value>
<string>
utf-8
</string>
</value>
</item>
<item>
<key>
<string>
title
</string>
</key>
<value>
<unicode></unicode>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
bt5/erp5_ui_test/PathTemplateItem/portal_tests/document_zuite/testZODBHistory.zpt
0 → 100644
View file @
400c58e9
<html
xmlns:tal=
"http://xml.zope.org/namespaces/tal"
xmlns:metal=
"http://xml.zope.org/namespaces/metal"
>
<head>
<meta
http-equiv=
"Content-Type"
content=
"text/html; charset=UTF-8"
>
<title>
Test ZODB History
</title>
</head>
<body>
<table
cellpadding=
"1"
cellspacing=
"1"
border=
"1"
>
<thead>
<tr><td
rowspan=
"1"
colspan=
"3"
>
Test ZODB History
</td></tr>
</thead><tbody>
<tr>
<td>
store
</td>
<td
tal:content=
"python:here.getPortalObject().absolute_url()"
>
http://example.com/erp5
</td>
<td>
base_url
</td>
</tr>
<tr>
<td>
open
</td>
<td>
${base_url}/bar_module/ListBoxZuite_reset
</td>
<td></td>
</tr>
<tr>
<td>
assertTextPresent
</td>
<td>
Reset Successfully.
</td>
<td></td>
</tr>
<tr>
<td>
openAndWait
</td>
<td>
${base_url}/bar_module/Zuite_waitForActivities
</td>
<td></td>
</tr>
<tr>
<td>
assertTextPresent
</td>
<td>
Done.
</td>
<td></td>
</tr>
<tr>
<td>
open
</td>
<td>
${base_url}/bar_module/FooModule_createObjects?portal_type=Bar
&
num:int=1
</td>
<td></td>
</tr>
<tr>
<td>
open
</td>
<td>
${base_url}/bar_module/0
</td>
<td></td>
</tr>
<tr>
<td>
type
</td>
<td>
field_my_title
</td>
<td>
Version 1
</td>
</tr>
<tr>
<td>
clickAndWait
</td>
<td>
Base_edit:method
</td>
<td></td>
</tr>
<tr>
<td>
type
</td>
<td>
field_my_title
</td>
<td>
Version 2
</td>
</tr>
<tr>
<td>
clickAndWait
</td>
<td>
Base_edit:method
</td>
<td></td>
</tr>
<tr>
<td>
type
</td>
<td>
field_my_title
</td>
<td>
Version 3
</td>
</tr>
<tr>
<td>
clickAndWait
</td>
<td>
Base_edit:method
</td>
<td></td>
</tr>
<tr>
<td>
clickAndWait
</td>
<td>
//button[@class="report"]
</td>
<td></td>
</tr>
<tr>
<td>
verifyText
</td>
<td>
//span[@class="listbox-current-page-total-number"]
</td>
<td>
4 records
</td>
<!-- Creation + edited 3 times -->
</tr>
<tr>
<td>
verifyTextPresent
</td>
<td>
ZODB History
</td>
<td></td>
</tr>
<tr>
<td>
verifyTextPresent
</td>
<td>
title: Version 1
</td>
<td></td>
</tr>
<tr>
<td>
verifyTextPresent
</td>
<td>
title: Version 2
</td>
<td></td>
</tr>
<tr>
<td>
verifyTextPresent
</td>
<td>
title: Version 3
</td>
<td></td>
</tr>
</tbody></table>
</body>
</html>
\ No newline at end of file
bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_zuite/testZODBHistoryInExportPage.xml
0 → 100644
View file @
400c58e9
<?xml version="1.0"?>
<ZopeData>
<record
id=
"1"
aka=
"AAAAAAAAAAE="
>
<pickle>
<global
name=
"ZopePageTemplate"
module=
"Products.PageTemplates.ZopePageTemplate"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
_bind_names
</string>
</key>
<value>
<object>
<klass>
<global
name=
"NameAssignments"
module=
"Shared.DC.Scripts.Bindings"
/>
</klass>
<tuple/>
<state>
<dictionary>
<item>
<key>
<string>
_asgns
</string>
</key>
<value>
<dictionary>
<item>
<key>
<string>
name_subpath
</string>
</key>
<value>
<string>
traverse_subpath
</string>
</value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</state>
</object>
</value>
</item>
<item>
<key>
<string>
content_type
</string>
</key>
<value>
<string>
text/html
</string>
</value>
</item>
<item>
<key>
<string>
expand
</string>
</key>
<value>
<int>
0
</int>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
testZODBHistoryInExportPage
</string>
</value>
</item>
<item>
<key>
<string>
output_encoding
</string>
</key>
<value>
<string>
utf-8
</string>
</value>
</item>
<item>
<key>
<string>
title
</string>
</key>
<value>
<unicode></unicode>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_zuite/testZODBHistoryInExportPage.zpt
0 → 100644
View file @
400c58e9
<html
xmlns:tal=
"http://xml.zope.org/namespaces/tal"
xmlns:metal=
"http://xml.zope.org/namespaces/metal"
>
<head>
<meta
http-equiv=
"Content-Type"
content=
"text/html; charset=UTF-8"
>
<title>
Test ZODB History
</title>
</head>
<body>
<table
cellpadding=
"1"
cellspacing=
"1"
border=
"1"
>
<thead>
<tr><td
rowspan=
"1"
colspan=
"3"
>
Test ZODB History
</td></tr>
</thead><tbody>
<tal:block
metal:use-macro=
"here/PTZuite_CommonTemplate/macros/init"
/>
<tr>
<td>
open
</td>
<td>
${base_url}/web_site_module/renderjs_runner/#/foo_module/1?page=export
</td>
<td></td>
</tr>
<tal:block
metal:use-macro=
"here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_app_loaded"
/>
<tr>
<td>
assertElementPresent
</td>
<td>
//div[@data-gadget-url='${base_url}/web_site_module/renderjs_runner/gadget_erp5_page_export.html']
</td>
<td></td>
</tr>
<tr>
<td>
verifyTextPresent
</td>
<td>
ZODB History
</td>
<td></td>
</tr>
<tal:block
tal:define=
"click_configuration python: {'text': 'ZODB History'}"
>
<tal:block
metal:use-macro=
"here/Zuite_CommonTemplateForRenderjsUi/macros/click_on_page_link"
/>
</tal:block>
<tal:block
metal:use-macro=
"here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_content_loaded"
/>
<tr>
<td>
verifyElementPresent
</td>
<td>
//h1[contains(text(), 'ZODB History')]
</td>
<td></td>
</tr>
</tbody></table>
</body>
</html>
\ No newline at end of file
product/ERP5/bootstrap/erp5_core/ActionTemplateItem/portal_types/portal_actions/zodb_history.xml
0 → 100644
View file @
400c58e9
<?xml version="1.0"?>
<ZopeData>
<record
id=
"1"
aka=
"AAAAAAAAAAE="
>
<pickle>
<global
name=
"ActionInformation"
module=
"Products.CMFCore.ActionInformation"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
action
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAI=
</string>
</persistent>
</value>
</item>
<item>
<key>
<string>
category
</string>
</key>
<value>
<string>
object_jio_report
</string>
</value>
</item>
<item>
<key>
<string>
condition
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
description
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
icon
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
zodb_history
</string>
</value>
</item>
<item>
<key>
<string>
permissions
</string>
</key>
<value>
<tuple>
<string>
View History
</string>
</tuple>
</value>
</item>
<item>
<key>
<string>
priority
</string>
</key>
<value>
<float>
99.0
</float>
</value>
</item>
<item>
<key>
<string>
title
</string>
</key>
<value>
<string>
ZODB History
</string>
</value>
</item>
<item>
<key>
<string>
visible
</string>
</key>
<value>
<int>
1
</int>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"2"
aka=
"AAAAAAAAAAI="
>
<pickle>
<global
name=
"Expression"
module=
"Products.CMFCore.Expression"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
text
</string>
</key>
<value>
<string>
string:${object_url}/Base_viewZODBHistory
</string>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
product/ERP5/bootstrap/erp5_core/SkinTemplateItem/portal_skins/erp5_core/Base_viewHistory.xml
View file @
400c58e9
...
...
@@ -74,9 +74,7 @@
<item>
<key>
<string>
center
</string>
</key>
<value>
<list>
<string>
your_zodb_history
</string>
</list>
<list/>
</value>
</item>
<item>
...
...
product/ERP5/bootstrap/erp5_core/SkinTemplateItem/portal_skins/erp5_core/Base_viewHistory/your_zodb_history.xml
deleted
100644 → 0
View file @
241f7b53
This diff is collapsed.
Click to expand it.
product/ERP5/bootstrap/erp5_core/SkinTemplateItem/portal_skins/erp5_core/Base_viewZODBHistory.xml
View file @
400c58e9
...
...
@@ -82,9 +82,7 @@
<item>
<key>
<string>
center
</string>
</key>
<value>
<list>
<string>
your_workflow_history
</string>
</list>
<list/>
</value>
</item>
<item>
...
...
product/ERP5/bootstrap/erp5_core/SkinTemplateItem/portal_skins/erp5_core/Base_viewZODBHistory/your_workflow_history.xml
deleted
100644 → 0
View file @
241f7b53
This diff is collapsed.
Click to expand it.
product/ERP5/bootstrap/erp5_core/bt/template_action_path_list
View file @
400c58e9
...
...
@@ -207,6 +207,7 @@ portal_actions | sort_on
portal_actions | types_tool
portal_actions | view_historical_comparison
portal_actions | view_historical_diff
portal_actions | zodb_history
portal_membership | login
portal_membership | logout
portal_membership | preferences
...
...
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