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
Analytics
Analytics
Repository
Value Stream
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Rafael Monnerat
erp5
Commits
4922dd5b
Commit
4922dd5b
authored
Aug 10, 2020
by
Xiaowu Zhang
Browse files
Options
Browse Files
Download
Plain Diff
erp5_corporate_identity: display as data url for organisation logo
See merge request
nexedi/erp5!1233
parents
4f9569d2
413bec0c
Changes
14
Hide whitespace changes
Inline
Side-by-side
Showing
14 changed files
with
1056 additions
and
12 deletions
+1056
-12
bt5/erp5_corporate_identity/SkinTemplateItem/portal_skins/erp5_corporate_identity/Base_getSourceDict.py
...ortal_skins/erp5_corporate_identity/Base_getSourceDict.py
+9
-8
bt5/erp5_corporate_identity/SkinTemplateItem/portal_skins/erp5_corporate_identity/Base_getTemplateProxyParameter.py
...erp5_corporate_identity/Base_getTemplateProxyParameter.py
+4
-1
bt5/erp5_corporate_identity/SkinTemplateItem/portal_skins/erp5_corporate_identity/WebPage_viewAsSlideshow.py
..._skins/erp5_corporate_identity/WebPage_viewAsSlideshow.py
+2
-2
bt5/erp5_corporate_identity_test/PathTemplateItem/image_module/template_test_slideshow_for_anonymous_en_bmp.bmp
...e_module/template_test_slideshow_for_anonymous_en_bmp.bmp
+0
-0
bt5/erp5_corporate_identity_test/PathTemplateItem/image_module/template_test_slideshow_for_anonymous_en_bmp.xml
...e_module/template_test_slideshow_for_anonymous_en_bmp.xml
+155
-0
bt5/erp5_corporate_identity_test/PathTemplateItem/organisation_module/template_test_organisation_for_slide_view.xml
...tion_module/template_test_organisation_for_slide_view.xml
+134
-0
bt5/erp5_corporate_identity_test/PathTemplateItem/organisation_module/template_test_organisation_for_slide_view/default_address.xml
...late_test_organisation_for_slide_view/default_address.xml
+38
-0
bt5/erp5_corporate_identity_test/PathTemplateItem/organisation_module/template_test_organisation_for_slide_view/default_bank_account.xml
...test_organisation_for_slide_view/default_bank_account.xml
+167
-0
bt5/erp5_corporate_identity_test/PathTemplateItem/organisation_module/template_test_organisation_for_slide_view/default_email.xml
...mplate_test_organisation_for_slide_view/default_email.xml
+30
-0
bt5/erp5_corporate_identity_test/PathTemplateItem/organisation_module/template_test_organisation_for_slide_view/default_image.xml
...mplate_test_organisation_for_slide_view/default_image.xml
+245
-0
bt5/erp5_corporate_identity_test/PathTemplateItem/organisation_module/template_test_organisation_for_slide_view/default_telephone.xml
...te_test_organisation_for_slide_view/default_telephone.xml
+30
-0
bt5/erp5_corporate_identity_test/PathTemplateItem/web_page_module/template_test_organisation_logo_in_slide_view.html
...module/template_test_organisation_logo_in_slide_view.html
+98
-0
bt5/erp5_corporate_identity_test/PathTemplateItem/web_page_module/template_test_organisation_logo_in_slide_view.xml
..._module/template_test_organisation_logo_in_slide_view.xml
+121
-0
bt5/erp5_corporate_identity_test/TestTemplateItem/portal_components/test.erp5.testCorporateIdentityTemplateList.py
...components/test.erp5.testCorporateIdentityTemplateList.py
+23
-1
No files found.
bt5/erp5_corporate_identity/SkinTemplateItem/portal_skins/erp5_corporate_identity/Base_getSourceDict.py
View file @
4922dd5b
...
...
@@ -26,7 +26,6 @@ if source is None:
source_person
=
None
source_person_list
=
[]
source_organisation_list
=
[]
source_set
=
None
# source person => override => contributor => source_decision
if
override_source_person_title
is
not
None
or
override_source_person_title
==
blank
:
...
...
@@ -102,14 +101,16 @@ if source.get("corporate_registration_code") is blank:
# XXX images stored on organisation (as do images in skin folders)
if
override_logo_reference
:
source_logo_url
=
html_quote
(
override_logo_reference
)
+
"?format=png"
source_set
=
True
if
source_logo_url
is
None
:
else
:
source_logo_url
=
source
.
get
(
"logo_url"
,
blank
)
if
source_logo_url
!=
blank
and
source_set
is
None
:
# XXX: test environment fails if url with parameters are supplied
source_logo_url
=
source_logo_url
+
"?format=png"
if
source_logo_url
==
blank
and
theme_logo_url
is
not
None
:
source_logo_url
=
theme_logo_url
if
source_logo_url
!=
blank
:
# XXX: test environment fails if url with parameters are supplied
source_logo_url
=
source_logo_url
+
"?format=png"
#logo_url is organisation default image, which is not accessible for anounymous
source
[
"enhanced_logo_data_url"
]
=
source
.
get
(
"logo_data_url"
)
elif
theme_logo_url
is
not
None
:
source_logo_url
=
theme_logo_url
source
[
"enhanced_logo_url"
]
=
source_logo_url
return
source
bt5/erp5_corporate_identity/SkinTemplateItem/portal_skins/erp5_corporate_identity/Base_getTemplateProxyParameter.py
View file @
4922dd5b
...
...
@@ -8,7 +8,7 @@ Return local parameters that require proxy role to access
# pass_parameter (portal-) type of data to fetch
# pass_source_data followup uid or context for retrieving info
# pass_flag_site whether called from a web site (no follow-up)
from
base64
import
b64encode
portal_type_valid_template_list
=
[
"Web Site"
,
"Web Section"
,
"Web Page"
,
"Letter"
]
portal_type_valid_report_list
=
[
"Project"
,
"Sale Order"
,
"Sale Opportunity"
,
"Requirement Document"
,
"Person"
]
portal_type
=
context
.
getPortalType
()
...
...
@@ -127,6 +127,9 @@ def populateOrganisationDict(my_organisation_list):
#output_dict["logo_url"] = organisation.getDefaultImageAbsoluteUrl() or err("logo_url")
if
organisation_default_image
is
not
None
:
output_dict
[
"logo_url"
]
=
organisation_default_image
.
getRelativeUrl
()
output_dict
[
"logo_data_url"
]
=
'data:image/png;;base64,%s'
%
(
b64encode
(
organisation_default_image
.
convert
(
format
=
"png"
,
display
=
"thumbnail"
)[
1
])
)
else
:
output_dict
[
"logo_url"
]
=
err
(
"logo_url"
)
...
...
bt5/erp5_corporate_identity/SkinTemplateItem/portal_skins/erp5_corporate_identity/WebPage_viewAsSlideshow.py
View file @
4922dd5b
...
...
@@ -334,7 +334,7 @@ if doc_format == "html": #or doc_format == "mhtml":
doc_theme_css_font_list=doc_theme.get("
theme_css_font_list
"),
doc_theme_css_url=doc_theme.get("
theme_css_url
"),
doc_footer_url_description=doc_theme.get("
theme_logo_description
"),
doc_footer_url=doc
.Base_setUrl(path=doc_source.get("
enhanced_logo_url
"), display=None
),
doc_footer_url=doc
_source.get("
enhanced_logo_data_url
", doc.Base_setUrl(path=doc_source.get("
enhanced_logo_url
"), display=None)
),
doc_description=doc_description,
doc_creation_year=doc_creation_year,
doc_copyright=doc_source.get("
organisation_title
", blank),
...
...
@@ -372,7 +372,7 @@ if doc_format == "pdf" or doc_format == "mhtml":
doc_theme_css_font_list=doc_theme.get("
theme_css_font_list
"),
doc_theme_css_url=doc_theme.get("
theme_css_url
"),
doc_footer_url_description=doc_theme.get("
theme_logo_description
"),
doc_footer_url=doc
.Base_setUrl(path=doc_source.get("
enhanced_logo_url
"), display=None
),
doc_footer_url=doc
_source.get("
enhanced_logo_data_url
", doc.Base_setUrl(path=doc_source.get("
enhanced_logo_url
"), display=None)
),
doc_description=doc_description,
doc_creation_year=doc_creation_year,
doc_copyright=doc_source.get("
organisation_title
", blank),
...
...
bt5/erp5_corporate_identity_test/PathTemplateItem/image_module/template_test_slideshow_for_anonymous_en_bmp.bmp
0 → 100644
View file @
4922dd5b
1.91 MB
bt5/erp5_corporate_identity_test/PathTemplateItem/image_module/template_test_slideshow_for_anonymous_en_bmp.xml
0 → 100644
View file @
4922dd5b
<?xml version="1.0"?>
<ZopeData>
<record
id=
"1"
aka=
"AAAAAAAAAAE="
>
<pickle>
<global
name=
"Image"
module=
"erp5.portal_type"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
_Access_contents_information_Permission
</string>
</key>
<value>
<tuple>
<string>
Assignee
</string>
<string>
Assignor
</string>
<string>
Manager
</string>
<string>
Owner
</string>
</tuple>
</value>
</item>
<item>
<key>
<string>
_Add_portal_content_Permission
</string>
</key>
<value>
<tuple>
<string>
Assignee
</string>
<string>
Assignor
</string>
<string>
Manager
</string>
<string>
Owner
</string>
</tuple>
</value>
</item>
<item>
<key>
<string>
_Change_local_roles_Permission
</string>
</key>
<value>
<tuple>
<string>
Assignor
</string>
<string>
Manager
</string>
</tuple>
</value>
</item>
<item>
<key>
<string>
_Modify_portal_content_Permission
</string>
</key>
<value>
<tuple>
<string>
Assignee
</string>
<string>
Assignor
</string>
<string>
Manager
</string>
<string>
Owner
</string>
</tuple>
</value>
</item>
<item>
<key>
<string>
_View_Permission
</string>
</key>
<value>
<tuple>
<string>
Assignee
</string>
<string>
Assignor
</string>
<string>
Manager
</string>
<string>
Owner
</string>
</tuple>
</value>
</item>
<item>
<key>
<string>
_count
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAI=
</string>
</persistent>
</value>
</item>
<item>
<key>
<string>
_mt_index
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAM=
</string>
</persistent>
</value>
</item>
<item>
<key>
<string>
_tree
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAQ=
</string>
</persistent>
</value>
</item>
<item>
<key>
<string>
content_md5
</string>
</key>
<value>
<string>
9fdf281f148030d11f0f3e72c1057e10
</string>
</value>
</item>
<item>
<key>
<string>
content_type
</string>
</key>
<value>
<string>
image/x-bmp
</string>
</value>
</item>
<item>
<key>
<string>
default_reference
</string>
</key>
<value>
<string>
Template.Test.Slideshow.Slide
</string>
</value>
</item>
<item>
<key>
<string>
description
</string>
</key>
<value>
<string>
Screenshot generated from template_test_slideshow_input_001_en_pdf
</string>
</value>
</item>
<item>
<key>
<string>
height
</string>
</key>
<value>
<int>
595
</int>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
template_test_slideshow_for_anonymous_en_bmp
</string>
</value>
</item>
<item>
<key>
<string>
language
</string>
</key>
<value>
<string>
en
</string>
</value>
</item>
<item>
<key>
<string>
portal_type
</string>
</key>
<value>
<string>
Image
</string>
</value>
</item>
<item>
<key>
<string>
short_title
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
title
</string>
</key>
<value>
<string>
Template Test Slideshow Slide
</string>
</value>
</item>
<item>
<key>
<string>
version
</string>
</key>
<value>
<string>
001
</string>
</value>
</item>
<item>
<key>
<string>
width
</string>
</key>
<value>
<int>
842
</int>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"2"
aka=
"AAAAAAAAAAI="
>
<pickle>
<global
name=
"Length"
module=
"BTrees.Length"
/>
</pickle>
<pickle>
<int>
0
</int>
</pickle>
</record>
<record
id=
"3"
aka=
"AAAAAAAAAAM="
>
<pickle>
<global
name=
"OOBTree"
module=
"BTrees.OOBTree"
/>
</pickle>
<pickle>
<none/>
</pickle>
</record>
<record
id=
"4"
aka=
"AAAAAAAAAAQ="
>
<pickle>
<global
name=
"OOBTree"
module=
"BTrees.OOBTree"
/>
</pickle>
<pickle>
<none/>
</pickle>
</record>
</ZopeData>
bt5/erp5_corporate_identity_test/PathTemplateItem/organisation_module/template_test_organisation_for_slide_view.xml
0 → 100644
View file @
4922dd5b
<?xml version="1.0"?>
<ZopeData>
<record
id=
"1"
aka=
"AAAAAAAAAAE="
>
<pickle>
<global
name=
"Organisation"
module=
"erp5.portal_type"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
_Access_contents_information_Permission
</string>
</key>
<value>
<tuple>
<string>
Assignee
</string>
<string>
Assignor
</string>
<string>
Associate
</string>
<string>
Auditor
</string>
<string>
Author
</string>
<string>
Manager
</string>
<string>
Owner
</string>
</tuple>
</value>
</item>
<item>
<key>
<string>
_Add_portal_content_Permission
</string>
</key>
<value>
<tuple>
<string>
Assignee
</string>
<string>
Assignor
</string>
<string>
Associate
</string>
<string>
Author
</string>
<string>
Manager
</string>
<string>
Owner
</string>
</tuple>
</value>
</item>
<item>
<key>
<string>
_Modify_portal_content_Permission
</string>
</key>
<value>
<tuple>
<string>
Assignee
</string>
<string>
Assignor
</string>
<string>
Associate
</string>
<string>
Author
</string>
<string>
Manager
</string>
<string>
Owner
</string>
</tuple>
</value>
</item>
<item>
<key>
<string>
_View_Permission
</string>
</key>
<value>
<tuple>
<string>
Assignee
</string>
<string>
Assignor
</string>
<string>
Associate
</string>
<string>
Auditor
</string>
<string>
Author
</string>
<string>
Manager
</string>
<string>
Owner
</string>
</tuple>
</value>
</item>
<item>
<key>
<string>
_count
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAI=
</string>
</persistent>
</value>
</item>
<item>
<key>
<string>
_mt_index
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAM=
</string>
</persistent>
</value>
</item>
<item>
<key>
<string>
_tree
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAQ=
</string>
</persistent>
</value>
</item>
<item>
<key>
<string>
categories
</string>
</key>
<value>
<tuple>
<string>
group/template_test_group
</string>
</tuple>
</value>
</item>
<item>
<key>
<string>
corporate_name
</string>
</key>
<value>
<string>
Template Test Organisation For Slide View
</string>
</value>
</item>
<item>
<key>
<string>
description
</string>
</key>
<value>
<string>
Test Organisation for template testing
</string>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
template_test_organisation_for_slide_view
</string>
</value>
</item>
<item>
<key>
<string>
portal_type
</string>
</key>
<value>
<string>
Organisation
</string>
</value>
</item>
<item>
<key>
<string>
title
</string>
</key>
<value>
<string>
Template Test Organisation For Slide View
</string>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"2"
aka=
"AAAAAAAAAAI="
>
<pickle>
<global
name=
"Length"
module=
"BTrees.Length"
/>
</pickle>
<pickle>
<int>
0
</int>
</pickle>
</record>
<record
id=
"3"
aka=
"AAAAAAAAAAM="
>
<pickle>
<global
name=
"OOBTree"
module=
"BTrees.OOBTree"
/>
</pickle>
<pickle>
<none/>
</pickle>
</record>
<record
id=
"4"
aka=
"AAAAAAAAAAQ="
>
<pickle>
<global
name=
"OOBTree"
module=
"BTrees.OOBTree"
/>
</pickle>
<pickle>
<none/>
</pickle>
</record>
</ZopeData>
bt5/erp5_corporate_identity_test/PathTemplateItem/organisation_module/template_test_organisation_for_slide_view/default_address.xml
0 → 100644
View file @
4922dd5b
<?xml version="1.0"?>
<ZopeData>
<record
id=
"1"
aka=
"AAAAAAAAAAE="
>
<pickle>
<global
name=
"Address"
module=
"erp5.portal_type"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
city
</string>
</key>
<value>
<string>
Test City
</string>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
default_address
</string>
</value>
</item>
<item>
<key>
<string>
portal_type
</string>
</key>
<value>
<string>
Address
</string>
</value>
</item>
<item>
<key>
<string>
sid
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
street_address
</string>
</key>
<value>
<string>
Test Drive 123
</string>
</value>
</item>
<item>
<key>
<string>
zip_code
</string>
</key>
<value>
<string>
12345
</string>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
bt5/erp5_corporate_identity_test/PathTemplateItem/organisation_module/template_test_organisation_for_slide_view/default_bank_account.xml
0 → 100644
View file @
4922dd5b
<?xml version="1.0"?>
<ZopeData>
<record
id=
"1"
aka=
"AAAAAAAAAAE="
>
<pickle>
<global
name=
"Bank Account"
module=
"erp5.portal_type"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
_Access_contents_information_Permission
</string>
</key>
<value>
<tuple>
<string>
Assignee
</string>
<string>
Assignor
</string>
<string>
Associate
</string>
<string>
Auditor
</string>
<string>
Author
</string>
<string>
Manager
</string>
<string>
Owner
</string>
</tuple>
</value>
</item>
<item>
<key>
<string>
_Add_portal_content_Permission
</string>
</key>
<value>
<tuple>
<string>
Assignee
</string>
<string>
Assignor
</string>
<string>
Associate
</string>
<string>
Author
</string>
<string>
Manager
</string>
<string>
Owner
</string>
</tuple>
</value>
</item>
<item>
<key>
<string>
_Modify_portal_content_Permission
</string>
</key>
<value>
<tuple>
<string>
Assignee
</string>
<string>
Assignor
</string>
<string>
Associate
</string>
<string>
Author
</string>
<string>
Manager
</string>
<string>
Owner
</string>
</tuple>
</value>
</item>
<item>
<key>
<string>
_View_Permission
</string>
</key>
<value>
<tuple>
<string>
Assignee
</string>
<string>
Assignor
</string>
<string>
Associate
</string>
<string>
Auditor
</string>
<string>
Author
</string>
<string>
Manager
</string>
<string>
Owner
</string>
</tuple>
</value>
</item>
<item>
<key>
<string>
_local_properties
</string>
</key>
<value>
<tuple>
<dictionary>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
comment
</string>
</value>
</item>
<item>
<key>
<string>
type
</string>
</key>
<value>
<string>
string
</string>
</value>
</item>
</dictionary>
</tuple>
</value>
</item>
<item>
<key>
<string>
bank_account_holder_name
</string>
</key>
<value>
<string>
Template Test
</string>
</value>
</item>
<item>
<key>
<string>
bank_account_key
</string>
</key>
<value>
<string>
Foo
</string>
</value>
</item>
<item>
<key>
<string>
bank_account_number
</string>
</key>
<value>
<string>
0190 123 456
</string>
</value>
</item>
<item>
<key>
<string>
bank_code
</string>
</key>
<value>
<string>
12345
</string>
</value>
</item>
<item>
<key>
<string>
bank_country_code
</string>
</key>
<value>
<string>
12
</string>
</value>
</item>
<item>
<key>
<string>
branch
</string>
</key>
<value>
<string>
67890
</string>
</value>
</item>
<item>
<key>
<string>
comment
</string>
</key>
<value>
<string>
Template Test
</string>
</value>
</item>
<item>
<key>
<string>
description
</string>
</key>
<value>
<string>
Template Test Bank Account
</string>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
default_bank_account
</string>
</value>
</item>
<item>
<key>
<string>
overdraft_facility
</string>
</key>
<value>
<int>
0
</int>
</value>
</item>
<item>
<key>
<string>
portal_type
</string>
</key>
<value>
<string>
Bank Account
</string>
</value>
</item>
<item>
<key>
<string>
start_date
</string>
</key>
<value>
<object>
<klass>
<global
id=
"1.1"
name=
"DateTime"
module=
"DateTime.DateTime"
/>
</klass>
<tuple>
<none/>
</tuple>
<state>
<tuple>
<float>
946684800.0
</float>
<string>
UTC
</string>
</tuple>
</state>
</object>
</value>
</item>
<item>
<key>
<string>
stop_date
</string>
</key>
<value>
<object>
<klass>
<reference
id=
"1.1"
/>
</klass>
<tuple>
<none/>
</tuple>
<state>
<tuple>
<float>
4102358400.0
</float>
<string>
UTC
</string>
</tuple>
</state>
</object>
</value>
</item>
<item>
<key>
<string>
title
</string>
</key>
<value>
<string>
Template Test Bank Account
</string>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
bt5/erp5_corporate_identity_test/PathTemplateItem/organisation_module/template_test_organisation_for_slide_view/default_email.xml
0 → 100644
View file @
4922dd5b
<?xml version="1.0"?>
<ZopeData>
<record
id=
"1"
aka=
"AAAAAAAAAAE="
>
<pickle>
<global
name=
"Email"
module=
"erp5.portal_type"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
coordinate_text
</string>
</key>
<value>
<string>
info@test-organisation.eu
</string>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
default_email
</string>
</value>
</item>
<item>
<key>
<string>
portal_type
</string>
</key>
<value>
<string>
Email
</string>
</value>
</item>
<item>
<key>
<string>
sid
</string>
</key>
<value>
<none/>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
bt5/erp5_corporate_identity_test/PathTemplateItem/organisation_module/template_test_organisation_for_slide_view/default_image.xml
0 → 100644
View file @
4922dd5b
<?xml version="1.0"?>
<ZopeData>
<record
id=
"1"
aka=
"AAAAAAAAAAE="
>
<pickle>
<global
name=
"Embedded File"
module=
"erp5.portal_type"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
_EtagSupport__etag
</string>
</key>
<value>
<string>
ts96556196.97
</string>
</value>
</item>
<item>
<key>
<string>
_count
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAI=
</string>
</persistent>
</value>
</item>
<item>
<key>
<string>
_mt_index
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAM=
</string>
</persistent>
</value>
</item>
<item>
<key>
<string>
_tree
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAQ=
</string>
</persistent>
</value>
</item>
<item>
<key>
<string>
content_md5
</string>
</key>
<value>
<string>
ed9f76305d7d5afe74270699bef8bc49
</string>
</value>
</item>
<item>
<key>
<string>
content_type
</string>
</key>
<value>
<string>
image/png
</string>
</value>
</item>
<item>
<key>
<string>
data
</string>
</key>
<value>
<string
encoding=
"base64"
>
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
n9P/A9d7/3+TPE4eAAAAAElFTkSuQmCC
</string>
</value>
</item>
<item>
<key>
<string>
height
</string>
</key>
<value>
<int>
128
</int>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
default_image
</string>
</value>
</item>
<item>
<key>
<string>
portal_type
</string>
</key>
<value>
<string>
Embedded File
</string>
</value>
</item>
<item>
<key>
<string>
size
</string>
</key>
<value>
<int>
8973
</int>
</value>
</item>
<item>
<key>
<string>
width
</string>
</key>
<value>
<int>
128
</int>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"2"
aka=
"AAAAAAAAAAI="
>
<pickle>
<global
name=
"Length"
module=
"BTrees.Length"
/>
</pickle>
<pickle>
<int>
0
</int>
</pickle>
</record>
<record
id=
"3"
aka=
"AAAAAAAAAAM="
>
<pickle>
<global
name=
"OOBTree"
module=
"BTrees.OOBTree"
/>
</pickle>
<pickle>
<none/>
</pickle>
</record>
<record
id=
"4"
aka=
"AAAAAAAAAAQ="
>
<pickle>
<global
name=
"OOBTree"
module=
"BTrees.OOBTree"
/>
</pickle>
<pickle>
<none/>
</pickle>
</record>
</ZopeData>
bt5/erp5_corporate_identity_test/PathTemplateItem/organisation_module/template_test_organisation_for_slide_view/default_telephone.xml
0 → 100644
View file @
4922dd5b
<?xml version="1.0"?>
<ZopeData>
<record
id=
"1"
aka=
"AAAAAAAAAAE="
>
<pickle>
<global
name=
"Telephone"
module=
"erp5.portal_type"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
coordinate_text
</string>
</key>
<value>
<string>
+123 456 789 0
</string>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
default_telephone
</string>
</value>
</item>
<item>
<key>
<string>
portal_type
</string>
</key>
<value>
<string>
Telephone
</string>
</value>
</item>
<item>
<key>
<string>
sid
</string>
</key>
<value>
<none/>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
bt5/erp5_corporate_identity_test/PathTemplateItem/web_page_module/template_test_organisation_logo_in_slide_view.html
0 → 100644
View file @
4922dd5b
<section
class=
"master"
>
<h1>
TOC
</h1>
<ul>
<li>
A
</li>
<li>
B
</li>
<li>
C
</li>
</ul>
</section>
<section
class=
"chapter"
>
<h1>
A
</h1>
</section>
<section>
<h1>
Test PNG as PNG
</h1>
<img
src=
"Template.Test.Image.Map?format=png"
alt=
""
/>
<ul>
<li>
Content
</li>
<li>
Content
</li>
<li>
Content
<a
href=
""
>
with link
</a></li>
<li>
Content
</li>
<li>
Content
</li>
</ul>
<details
open=
"open"
>
This is a sample image in png format rendered as png.
</details>
</section>
<section>
<h1>
Test PNG as SVG
</h1>
<img
src=
"Template.Test.Illustration.Reach?format=svg"
type=
"image/svg+xml"
alt=
""
/>
<details
open=
"open"
>
This is a sample image in svg format, not converted.
</details>
</section>
<section>
<h1>
Test SVG as PNG
</h1>
<img
src=
"Template.Test.Illustration.Stack?format=png"
alt=
""
/>
<div
style=
"font-size:10px;margin-top:0;text-align:center;"
>
<span>
Photo by
<a
target=
"_blank"
href=
""
>
Someone
</a>
/
<a
target=
"_blank"
href=
""
>
Source
</a></span>
</div>
<details
open=
"open"
>
This is a sample image in svg format, rendered as png. With Attribution
</details>
</section>
<section>
<h1>
Test HTML
</h1>
<div
style=
"padding: 1em;margin-bottom:16px;background-size:cover;background-image: url(); background-color: #ffffff; background-position: center"
>
<div
style=
"padding:8px 8px 0 8px;"
>
<span
style=
"color:#fff;text-align:left;display: block;font-weight:bold;margin:4px;padding:4px 4px 4px 1.5em;background-color: #33A8A8"
>
A
</span>
</div>
<div
style=
"padding:0 8px 0 8px;"
>
<span
style=
"color:#fff;text-align:left;display: block;font-weight:bold;margin:4px;padding:4px 4px 4px 1.5em;background-color: #434371"
>
B
</span>
</div>
<div
style=
"padding:0 8px 0 8px;"
>
<span
style=
"color:#fff;text-align:left;display: block;font-weight:bold;margin:4px;padding:4px 4px 4px 1.5em;background-color: #1C76BB"
>
C
</span>
</div>
<div
style=
"padding:0 8px 0 8px;"
>
<span
style=
"color:#fff;text-align:left;display: block;font-weight:bold;margin:4px;padding:4px 4px 4px 1.5em;background-color: #267B87"
>
D
</span>
</div>
<div
style=
"padding:0 8px 0 8px;"
>
<span
style=
"color:#fff;text-align:left;display: block;font-weight:bold;margin:4px;padding:4px 4px 4px 1.5em;background-color: #90C3D4"
>
E
</span>
</div>
<div
style=
"padding:0 8px 0 8px;"
>
<span
style=
"color:#fff;text-align:left;display: block;font-weight:bold;margin:4px;padding:4px 4px 4px 1.5em;background-color: #A9BCC2"
>
F
</span>
</div>
<div
style=
"padding:0 8px 0 8px;"
>
<span
style=
"color:#fff;text-align:left;display: block;font-weight:bold;margin:4px;padding:4px 4px 4px 1.5em;background-color: #000000"
>
G
</span>
</div>
</div>
<ul>
<li>
Content
</li>
</ul>
<details
open=
"open"
>
This is a sample graphic generated in HTML.
</details>
</section>
<section
class=
"master"
>
<h1>
Test Side by Side and Multiple Details
</h1>
<div>
<img
src=
"Template.Test.Image.Office?format=png&display=medium"
type=
"image/png"
alt=
""
/>
</div>
<div>
<ul
style=
"list-style:none;display:block;"
>
<li>
Content
</li>
<li>
Content
</li>
<li>
Content
</li>
<li>
Content
</li>
</ul>
</div>
<details
open=
"open"
>
<p>
This is a side by side content slide with multiple details subslides.
</p>
</details>
<details>
This is the second detail subslide.
</details>
</section>
bt5/erp5_corporate_identity_test/PathTemplateItem/web_page_module/template_test_organisation_logo_in_slide_view.xml
0 → 100644
View file @
4922dd5b
<?xml version="1.0"?>
<ZopeData>
<record
id=
"1"
aka=
"AAAAAAAAAAE="
>
<pickle>
<global
name=
"Web Page"
module=
"erp5.portal_type"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
_Access_contents_information_Permission
</string>
</key>
<value>
<tuple>
<string>
Anonymous
</string>
<string>
Assignee
</string>
<string>
Assignor
</string>
<string>
Associate
</string>
<string>
Auditor
</string>
<string>
Manager
</string>
</tuple>
</value>
</item>
<item>
<key>
<string>
_Add_portal_content_Permission
</string>
</key>
<value>
<tuple>
<string>
Assignee
</string>
<string>
Assignor
</string>
<string>
Manager
</string>
</tuple>
</value>
</item>
<item>
<key>
<string>
_Change_local_roles_Permission
</string>
</key>
<value>
<tuple>
<string>
Assignor
</string>
<string>
Manager
</string>
</tuple>
</value>
</item>
<item>
<key>
<string>
_Modify_portal_content_Permission
</string>
</key>
<value>
<tuple>
<string>
Assignee
</string>
<string>
Assignor
</string>
<string>
Manager
</string>
</tuple>
</value>
</item>
<item>
<key>
<string>
_View_Permission
</string>
</key>
<value>
<tuple>
<string>
Anonymous
</string>
<string>
Assignee
</string>
<string>
Assignor
</string>
<string>
Associate
</string>
<string>
Auditor
</string>
<string>
Manager
</string>
</tuple>
</value>
</item>
<item>
<key>
<string>
categories
</string>
</key>
<value>
<tuple>
<string>
follow_up/organisation_module/template_test_organisation_for_slide_view
</string>
</tuple>
</value>
</item>
<item>
<key>
<string>
content_md5
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
content_type
</string>
</key>
<value>
<string>
text/html
</string>
</value>
</item>
<item>
<key>
<string>
default_reference
</string>
</key>
<value>
<string>
Template.Test.Organisation.Logo.In.Slide.View
</string>
</value>
</item>
<item>
<key>
<string>
description
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
template_test_organisation_logo_in_slide_view
</string>
</value>
</item>
<item>
<key>
<string>
language
</string>
</key>
<value>
<string>
en
</string>
</value>
</item>
<item>
<key>
<string>
portal_type
</string>
</key>
<value>
<string>
Web Page
</string>
</value>
</item>
<item>
<key>
<string>
short_title
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
title
</string>
</key>
<value>
<string>
Template Test Organisation Logo In Slide View
</string>
</value>
</item>
<item>
<key>
<string>
version
</string>
</key>
<value>
<string>
001
</string>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
bt5/erp5_corporate_identity_test/TestTemplateItem/portal_components/test.erp5.testCorporateIdentityTemplateList.py
View file @
4922dd5b
...
...
@@ -252,7 +252,7 @@ class TestCorporateIdentityTemplateList(ERP5TypeTestCase):
getattr
(
test_page
,
kw
.
get
(
"test_method"
)),
**
kw
)
self
.
login
()
image_source_pdf_doc
.
setData
(
pdf_data
)
_
,
bmp
=
image_source_pdf_doc
.
convert
(
"bmp"
,
frame
=
kw
.
get
(
"page_number"
))
...
...
@@ -402,6 +402,28 @@ class TestCorporateIdentityTemplateList(ERP5TypeTestCase):
)
@
changeSkin
(
'Slide'
)
def
test_pdfSlideShowForAnonymous
(
self
):
"""
Test for anonymous:
- Web Page as Slideshow
- without follow up
- without contributor
- export as pdf
"""
self
.
logout
()
self
.
tic
()
self
.
runPdfTestPattern
(
"template_test_organisation_logo_in_slide_view"
,
"template_test_slideshow_for_anonymous_en_bmp"
,
"template_test_image_source_pdf"
,
**
dict
(
page_number
=
0
,
use_skin
=
"Slide"
,
test_method
=
"WebPage_exportAsSlideshow"
,
format
=
"pdf"
)
)
@
changeSkin
(
'Slide'
)
def
test_pdfSlideshowNotes
(
self
):
"""
Test:
...
...
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