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
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