Commit a2747dde authored by Xiaowu Zhang's avatar Xiaowu Zhang

erp5_corporate_identity: imporve

/reviewed-on nexedi/erp5!765
parents 84d00418 0844222d
<?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>categories</string> </key>
<value>
<tuple>
<string>action_type/object_view</string>
</tuple>
</value>
</item>
<item>
<key> <string>category</string> </key>
<value> <string>object_view</string> </value>
</item>
<item>
<key> <string>condition</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>description</string> </key>
<value> <string>Default parameters (theme, css-files, js-files) for template configuration.</string> </value>
</item>
<item>
<key> <string>icon</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>corporate_identity_style_preferences</string> </value>
</item>
<item>
<key> <string>permissions</string> </key>
<value>
<tuple>
<string>View</string>
</tuple>
</value>
</item>
<item>
<key> <string>portal_type</string> </key>
<value> <string>Action Information</string> </value>
</item>
<item>
<key> <string>priority</string> </key>
<value> <float>51.0</float> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string>Template Defaults</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}/Preference_viewCorporateIdentityStyle</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Property Sheet" module="erp5.portal_type"/>
</pickle>
<pickle>
<dictionary>
<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>description</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>CorporateIdentityTemplatePreference</string> </value>
</item>
<item>
<key> <string>portal_type</string> </key>
<value> <string>Property Sheet</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>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Standard Property" module="erp5.portal_type"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>categories</string> </key>
<value>
<tuple>
<string>elementary_type/string</string>
</tuple>
</value>
</item>
<item>
<key> <string>description</string> </key>
<value> <string>Document prefix to use when generating new Book documents.</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>preferred_corporate_identity_template_book_document_prefix_property</string> </value>
</item>
<item>
<key> <string>portal_type</string> </key>
<value> <string>Standard Property</string> </value>
</item>
<item>
<key> <string>preference</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>property_default</string> </key>
<value>
<none/>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Standard Property" module="erp5.portal_type"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>categories</string> </key>
<value>
<tuple>
<string>elementary_type/string</string>
</tuple>
</value>
</item>
<item>
<key> <string>description</string> </key>
<value> <string>The default bank account of the default organisation used in corporate identity templates.</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>preferred_corporate_identity_template_default_bank_account_relative_url_property</string> </value>
</item>
<item>
<key> <string>portal_type</string> </key>
<value> <string>Standard Property</string> </value>
</item>
<item>
<key> <string>preference</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>property_default</string> </key>
<value>
<none/>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Standard Property" module="erp5.portal_type"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>categories</string> </key>
<value>
<tuple>
<string>elementary_type/string</string>
</tuple>
</value>
</item>
<item>
<key> <string>description</string> </key>
<value> <string>Default currency symbol to be used on letter footers et al.</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>preferred_corporate_identity_template_default_currency_relative_url_property</string> </value>
</item>
<item>
<key> <string>portal_type</string> </key>
<value> <string>Standard Property</string> </value>
</item>
<item>
<key> <string>preference</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>property_default</string> </key>
<value>
<none/>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Standard Property" module="erp5.portal_type"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>categories</string> </key>
<value>
<tuple>
<string>elementary_type/string</string>
</tuple>
</value>
</item>
<item>
<key> <string>description</string> </key>
<value> <string>Logo prefix to use when loading theme based logos.</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>preferred_corporate_identity_template_default_logo_prefix_property</string> </value>
</item>
<item>
<key> <string>portal_type</string> </key>
<value> <string>Standard Property</string> </value>
</item>
<item>
<key> <string>preference</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>property_default</string> </key>
<value>
<none/>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Standard Property" module="erp5.portal_type"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>categories</string> </key>
<value>
<tuple>
<string>elementary_type/string</string>
</tuple>
</value>
</item>
<item>
<key> <string>description</string> </key>
<value> <string>Registered Court of the default organisation for letter footer.</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>preferred_corporate_identity_template_default_organisation_registered_court_property</string> </value>
</item>
<item>
<key> <string>portal_type</string> </key>
<value> <string>Standard Property</string> </value>
</item>
<item>
<key> <string>preference</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>property_default</string> </key>
<value>
<none/>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Standard Property" module="erp5.portal_type"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>categories</string> </key>
<value>
<tuple>
<string>elementary_type/string</string>
</tuple>
</value>
</item>
<item>
<key> <string>description</string> </key>
<value> <string>The default organisation to use on corporate identity templates.</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>preferred_corporate_identity_template_default_organisation_relative_url_property</string> </value>
</item>
<item>
<key> <string>portal_type</string> </key>
<value> <string>Standard Property</string> </value>
</item>
<item>
<key> <string>preference</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>property_default</string> </key>
<value>
<none/>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Standard Property" module="erp5.portal_type"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>categories</string> </key>
<value>
<tuple>
<string>elementary_type/lines</string>
</tuple>
</value>
</item>
<item>
<key> <string>description</string> </key>
<value> <string>Fonts to be used for all templates</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>preferred_corporate_identity_template_default_theme_font_property</string> </value>
</item>
<item>
<key> <string>multivalued</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>portal_type</string> </key>
<value> <string>Standard Property</string> </value>
</item>
<item>
<key> <string>preference</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>property_default</string> </key>
<value>
<none/>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Standard Property" module="erp5.portal_type"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>categories</string> </key>
<value>
<tuple>
<string>elementary_type/string</string>
</tuple>
</value>
</item>
<item>
<key> <string>description</string> </key>
<value> <string>The default theme to use when for styling templates. Will be used if no other override is found.</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>preferred_corporate_identity_template_default_theme_property</string> </value>
</item>
<item>
<key> <string>portal_type</string> </key>
<value> <string>Standard Property</string> </value>
</item>
<item>
<key> <string>preference</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>property_default</string> </key>
<value> <string>python: "default"</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Standard Property" module="erp5.portal_type"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>categories</string> </key>
<value>
<tuple>
<string>elementary_type/string</string>
</tuple>
</value>
</item>
<item>
<key> <string>description</string> </key>
<value> <string>The relative path to a portal skin folder containing a fallback image to be used as logo.</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>preferred_corporate_identity_template_fallback_logo_relative_url_property</string> </value>
</item>
<item>
<key> <string>portal_type</string> </key>
<value> <string>Standard Property</string> </value>
</item>
<item>
<key> <string>preference</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>property_default</string> </key>
<value> <string>python: "image_module/template_test_image_logo_png"</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Standard Property" module="erp5.portal_type"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>categories</string> </key>
<value>
<tuple>
<string>elementary_type/string</string>
</tuple>
</value>
</item>
<item>
<key> <string>description</string> </key>
<value> <string>Document prefix to use when generating new Leaflet documents.</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>preferred_corporate_identity_template_leaflet_document_prefix_property</string> </value>
</item>
<item>
<key> <string>portal_type</string> </key>
<value> <string>Standard Property</string> </value>
</item>
<item>
<key> <string>preference</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>property_default</string> </key>
<value>
<none/>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Standard Property" module="erp5.portal_type"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>categories</string> </key>
<value>
<tuple>
<string>elementary_type/string</string>
</tuple>
</value>
</item>
<item>
<key> <string>description</string> </key>
<value> <string>Document prefix to use when generating new Letter documents.</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>preferred_corporate_identity_template_letter_document_prefix_property</string> </value>
</item>
<item>
<key> <string>portal_type</string> </key>
<value> <string>Standard Property</string> </value>
</item>
<item>
<key> <string>preference</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>property_default</string> </key>
<value>
<none/>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Standard Property" module="erp5.portal_type"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>categories</string> </key>
<value>
<tuple>
<string>elementary_type/string</string>
</tuple>
</value>
</item>
<item>
<key> <string>description</string> </key>
<value> <string>Document prefix to use when generating new Release documents.</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>preferred_corporate_identity_template_release_document_prefix_property</string> </value>
</item>
<item>
<key> <string>portal_type</string> </key>
<value> <string>Standard Property</string> </value>
</item>
<item>
<key> <string>preference</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>property_default</string> </key>
<value>
<none/>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Standard Property" module="erp5.portal_type"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>categories</string> </key>
<value>
<tuple>
<string>elementary_type/lines</string>
</tuple>
</value>
</item>
<item>
<key> <string>description</string> </key>
<value> <string>List of additional css files located in portal-skins that should be used in report generation.</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>preferred_corporate_identity_template_report_css_property</string> </value>
</item>
<item>
<key> <string>multivalued</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>portal_type</string> </key>
<value> <string>Standard Property</string> </value>
</item>
<item>
<key> <string>preference</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>property_default</string> </key>
<value> <string>python: []</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Standard Property" module="erp5.portal_type"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>categories</string> </key>
<value>
<tuple>
<string>elementary_type/string</string>
</tuple>
</value>
</item>
<item>
<key> <string>description</string> </key>
<value> <string>Document prefix to use when generating new Report documents.</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>preferred_corporate_identity_template_report_document_prefix_property</string> </value>
</item>
<item>
<key> <string>portal_type</string> </key>
<value> <string>Standard Property</string> </value>
</item>
<item>
<key> <string>preference</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>property_default</string> </key>
<value>
<none/>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Standard Property" module="erp5.portal_type"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>categories</string> </key>
<value>
<tuple>
<string>elementary_type/lines</string>
</tuple>
</value>
</item>
<item>
<key> <string>description</string> </key>
<value> <string>List of additional JS files located in portal skins that should be used during report generation.</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>preferred_corporate_identity_template_report_js_property</string> </value>
</item>
<item>
<key> <string>multivalued</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>portal_type</string> </key>
<value> <string>Standard Property</string> </value>
</item>
<item>
<key> <string>preference</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>property_default</string> </key>
<value> <string>python: []</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Standard Property" module="erp5.portal_type"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>categories</string> </key>
<value>
<tuple>
<string>elementary_type/string</string>
</tuple>
</value>
</item>
<item>
<key> <string>description</string> </key>
<value> <string>The company registration id issued by Miibeian (required to offer services in China).</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>preferred_corporate_identity_template_site_registration_id_property</string> </value>
</item>
<item>
<key> <string>portal_type</string> </key>
<value> <string>Standard Property</string> </value>
</item>
<item>
<key> <string>preference</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>property_default</string> </key>
<value>
<none/>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Standard Property" module="erp5.portal_type"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>categories</string> </key>
<value>
<tuple>
<string>elementary_type/string</string>
</tuple>
</value>
</item>
<item>
<key> <string>description</string> </key>
<value> <string>The company registration provider url issued by Miibeian (required to offer services in China).</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>preferred_corporate_identity_template_site_registration_url_property</string> </value>
</item>
<item>
<key> <string>portal_type</string> </key>
<value> <string>Standard Property</string> </value>
</item>
<item>
<key> <string>preference</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>property_default</string> </key>
<value>
<none/>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Standard Property" module="erp5.portal_type"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>categories</string> </key>
<value>
<tuple>
<string>elementary_type/string</string>
</tuple>
</value>
</item>
<item>
<key> <string>description</string> </key>
<value> <string>Document prefix to use when generating new Slideshow documents.</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>preferred_corporate_identity_template_slide_document_prefix_property</string> </value>
</item>
<item>
<key> <string>portal_type</string> </key>
<value> <string>Standard Property</string> </value>
</item>
<item>
<key> <string>preference</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>property_default</string> </key>
<value>
<none/>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Standard Property" module="erp5.portal_type"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>categories</string> </key>
<value>
<tuple>
<string>elementary_type/string</string>
</tuple>
</value>
</item>
<item>
<key> <string>description</string> </key>
<value> <string>Url to profile on Facebook.</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>preferred_corporate_identity_template_social_media_handle_facebook_property</string> </value>
</item>
<item>
<key> <string>portal_type</string> </key>
<value> <string>Standard Property</string> </value>
</item>
<item>
<key> <string>preference</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>property_default</string> </key>
<value>
<none/>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Standard Property" module="erp5.portal_type"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>categories</string> </key>
<value>
<tuple>
<string>elementary_type/string</string>
</tuple>
</value>
</item>
<item>
<key> <string>description</string> </key>
<value> <string>Url to profile on Google.</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>preferred_corporate_identity_template_social_media_handle_google_property</string> </value>
</item>
<item>
<key> <string>portal_type</string> </key>
<value> <string>Standard Property</string> </value>
</item>
<item>
<key> <string>preference</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>property_default</string> </key>
<value>
<none/>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Standard Property" module="erp5.portal_type"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>categories</string> </key>
<value>
<tuple>
<string>elementary_type/string</string>
</tuple>
</value>
</item>
<item>
<key> <string>description</string> </key>
<value> <string>Url to profile on Twitter.</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>preferred_corporate_identity_template_social_media_handle_twitter_property</string> </value>
</item>
<item>
<key> <string>portal_type</string> </key>
<value> <string>Standard Property</string> </value>
</item>
<item>
<key> <string>preference</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>property_default</string> </key>
<value>
<none/>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Standard Property" module="erp5.portal_type"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>categories</string> </key>
<value>
<tuple>
<string>elementary_type/string</string>
</tuple>
</value>
</item>
<item>
<key> <string>description</string> </key>
<value> <string>The relative path to a portal skin folder containing the theme css.</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>preferred_corporate_identity_template_theme_css_relative_url_property</string> </value>
</item>
<item>
<key> <string>portal_type</string> </key>
<value> <string>Standard Property</string> </value>
</item>
<item>
<key> <string>preference</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>property_default</string> </key>
<value> <string>python: "template_themes/themes.css"</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
...@@ -16,16 +16,16 @@ from Products.PythonScripts.standard import html_quote ...@@ -16,16 +16,16 @@ from Products.PythonScripts.standard import html_quote
# ------------------------------- Set Source ---------------------------------- # ------------------------------- Set Source ----------------------------------
source_logo_url = None source_logo_url = None
default_bank_account_uid=context.Base_getTemplateParameter("default_bank_account_uid")
source_organisation = None source_organisation = None
pref = context.getPortalObject().portal_preferences
default_bank_account_relative_url=pref.getPreferredCorporateIdentityTemplateDefaultBankAccountRelativeUrl()
if source is None: if source is None:
default_company_title=context.Base_getTemplateParameter("default_company_title") default_company_relative_url=pref.getPreferredCorporateIdentityTemplateDefaultOrganisationRelativeUrl()
contributor_title_string = blank contributor_title_string = blank
source_person = None source_person = None
source_person_list = [] source_person_list = []
source_organisation_list = [] source_organisation_list = []
source_organisation_uid = None
source_set = None source_set = None
# source person => override => contributor => source_decision # source person => override => contributor => source_decision
...@@ -42,17 +42,13 @@ if source is None: ...@@ -42,17 +42,13 @@ if source is None:
contributor_title_string = ', '.join(x.get("name", blank) for x in source_person_list) contributor_title_string = ', '.join(x.get("name", blank) for x in source_person_list)
# source organisation # source organisation
# order: override => follow-up => default_organisation_uid => default_company_title => source_person career subordinate => source decision # order: override => follow-up => default_organisation_uid => default_company_relative_url => source_person career subordinate => source decision
if override_source_organisation_title is not None or override_source_organisation_title == blank: if override_source_organisation_title is not None or override_source_organisation_title == blank:
source_organisation_list = context.Base_getTemplateProxyParameter(parameter="override_organisation", source_data=override_source_organisation_title) source_organisation_list = context.Base_getTemplateProxyParameter(parameter="override_organisation", source_data=override_source_organisation_title)
if len(source_organisation_list) == 0: if len(source_organisation_list) == 0:
source_organisation_list = context.Base_getTemplateProxyParameter(parameter="organisation", source_data=None) or [] source_organisation_list = context.Base_getTemplateProxyParameter(parameter="organisation", source_data=None) or []
if len(source_organisation_list) == 0: if len(source_organisation_list) == 0 and default_company_relative_url:
source_organisation_uid = context.Base_getTemplateParameter("default_source_organisation_uid") source_organisation_list = context.Base_getTemplateProxyParameter(parameter="override_organisation_relative_url", source_data=default_company_relative_url) or []
if source_organisation_uid:
source_organisation_list = context.Base_getTemplateProxyParameter(parameter="sender", source_data=source_organisation_uid) or []
if len(source_organisation_list) == 0 and default_company_title:
source_organisation_list = context.Base_getTemplateProxyParameter(parameter="override_organisation", source_data=default_company_title) or []
if len(source_organisation_list) == 0 and source_person is not None: if len(source_organisation_list) == 0 and source_person is not None:
for organisation_candidate in source_person_list: for organisation_candidate in source_person_list:
organisation_candidate_list = context.Base_getTemplateProxyParameter(parameter="source", source_data=organisation_candidate.get("uid")) or [] organisation_candidate_list = context.Base_getTemplateProxyParameter(parameter="source", source_data=organisation_candidate.get("uid")) or []
...@@ -77,25 +73,31 @@ else: ...@@ -77,25 +73,31 @@ else:
source = context.Base_getTemplateProxyParameter(parameter="source", source_data=source_uid)[0] source = context.Base_getTemplateProxyParameter(parameter="source", source_data=source_uid)[0]
# override specific bank account (no default to pick correct one if multiple exist) # override specific bank account (no default to pick correct one if multiple exist)
if default_bank_account_uid is not None: if default_bank_account_relative_url is not None:
override_bank_account_list = context.Base_getTemplateProxyParameter(parameter="bank", source_data=default_bank_account_uid) or [] override_bank_account_list = context.Base_getTemplateProxyParameter(parameter="bank", source_data=default_bank_account_relative_url) or []
if len(override_bank_account_list) > 0: if len(override_bank_account_list) > 0:
override_bank_account = override_bank_account_list[0] override_bank_account = override_bank_account_list[0]
source["bank"] = override_bank_account.get("bank") source["bank"] = override_bank_account.get("bank")
source["bic"] = override_bank_account.get("bic") source["bic"] = override_bank_account.get("bic")
source["iban"] = override_bank_account.get("iban") source["iban"] = override_bank_account.get("iban")
# social media # social media, used for website (WIP)
if source_organisation is not None: if source_organisation is not None:
source["social_media_handle_facebook"] = context.Base_getTemplateParameter('social_media_handle_facebook') source["social_media_handle_facebook"] = pref.getPreferredCorporateIdentityTemplateSocialMediaHandleFacebook()
source["social_media_handle_twitter"] = context.Base_getTemplateParameter('social_media_handle_twitter') source["social_media_handle_twitter"] = pref.getPreferredCorporateIdentityTemplateSocialMediaHandleTwitter()
source["social_media_handle_google"] = context.Base_getTemplateParameter('social_media_handle_google') source["social_media_handle_google"] = pref.getPreferredCorporateIdentityTemplateSocialMediaHandleGoogle()
source["site_registration_url"] = pref.getPreferredCorporateIdentityTemplateSiteRegistrationUrl()
source["site_registration_id"] = pref.getPreferredCorporateIdentityTemplateSiteRegistrationId()
# social capital currency and registered court fallbacks # social capital currency and registered court fallbacks
if source.get("social_capital_currency") is blank: if source.get("social_capital_currency") is blank:
source["social_capital_currency"] = context.Base_getTemplateParameter("default_source_company_capital_currency") currency_short_title = None
currency_relative_url = pref.getPreferredCorporateIdentityTemplateDefaultCurrencyRelativeUrl()
if currency_relative_url:
currency_short_title = context.restrictedTraverse(currency_relative_url).getShortTitle()
source["social_capital_currency"] = currency_short_title or ""
if source.get("corporate_registration_code") is blank: if source.get("corporate_registration_code") is blank:
source["corporate_registration_code"] = context.Base_getTemplateParameter("default_source_registered_court") source["corporate_registration_code"] = pref.getPreferredCorporateIdentityTemplateDefaultOrganisationRegisteredCourt()
# XXX images stored on organisation (as do images in skin folders) # XXX images stored on organisation (as do images in skin folders)
if override_logo_reference: if override_logo_reference:
......
...@@ -228,7 +228,8 @@ if pass_parameter is not None and pass_source_data is not None: ...@@ -228,7 +228,8 @@ if pass_parameter is not None and pass_source_data is not None:
return populatePersonDict(context.getContributorValueList(*args, **kw)) return populatePersonDict(context.getContributorValueList(*args, **kw))
return [] return []
# ------------- Override Sender/Recipient Organisation ----------------------- # --------- Override Sender/Recipient Organisation (TITLE) ---------------------
# XXX remove, too much ambiguity if multiple results
# returns [{organisation_dict}] # returns [{organisation_dict}]
if pass_parameter == "override_organisation": if pass_parameter == "override_organisation":
return populateOrganisationDict(portal_object.portal_catalog( return populateOrganisationDict(portal_object.portal_catalog(
...@@ -237,13 +238,10 @@ if pass_parameter is not None and pass_source_data is not None: ...@@ -237,13 +238,10 @@ if pass_parameter is not None and pass_source_data is not None:
title=pass_source_data title=pass_source_data
)) ))
# ----------------------- Sender (Override) ---------------------------------- # ------------ Override Sender/Recipient Organisation (URL) --------------------
# returns [{organisation_dict}] # returns [{organisation_dict}]
if pass_parameter == "sender": if pass_parameter == "override_organisation_relative_url":
return populateOrganisationDict(portal_object.portal_catalog( return populateOrganisationDict([context.restrictedTraverse(pass_source_data)])
portal_type="Organisation",
uid=pass_source_data
))
# -------------- Source/Destination (Person => Organisation) ----------------- # -------------- Source/Destination (Person => Organisation) -----------------
# returns [{organisation_dict}] # returns [{organisation_dict}]
...@@ -289,16 +287,22 @@ if pass_parameter is not None and pass_source_data is not None: ...@@ -289,16 +287,22 @@ if pass_parameter is not None and pass_source_data is not None:
# --------------------- Bank (Default Bank Account) -------------------------- # --------------------- Bank (Default Bank Account) --------------------------
# returns [{bank_account_dict}] used in letter # returns [{bank_account_dict}] used in letter
if pass_parameter == "bank": if pass_parameter == "bank":
return populateBankDict(portal_object.portal_catalog( return populateBankDict([context.restrictedTraverse(pass_source_data)])
portal_type="Bank Account",
uid=pass_source_data
))
# ------------------ Theme Logo (Prefix + Theme) ----------------------------- # ------------------ Theme Logo (Prefix + Theme) -----------------------------
# returns [{logo_dict}] used in themes # returns [{logo_dict}] used in themes, needs to be language-agnostic, but not
# all contexts (eg sale-order) have language
# XXX improve
if pass_parameter == "logo": if pass_parameter == "logo":
try:
use_language = context.getLanguage() or "en"
except AttributeError:
use_language = "en"
return populateImageDict(portal_object.portal_catalog( return populateImageDict(portal_object.portal_catalog(
portal_type="Image", portal_type="Image",
language=use_language,
validation_state=validation_state, validation_state=validation_state,
reference=pass_source_data reference=pass_source_data
)) ))
......
...@@ -14,9 +14,7 @@ blank = '' ...@@ -14,9 +14,7 @@ blank = ''
# XXX images in portal_skins folders don't convert with ?params. Only format # XXX images in portal_skins folders don't convert with ?params. Only format
# is kept in Base_convertHtmlToSingleFile # is kept in Base_convertHtmlToSingleFile
pdf = ".pdf.css" if doc_format == "pdf" else ".css" pdf = ".pdf.css" if doc_format == "pdf" else ".css"
css = "default_theme_css_url" pref = context.getPortalObject().portal_preferences
font = "default_theme_font_css_url_list"
param = "?format=png"
# theme content might not be visible on the default View # theme content might not be visible on the default View
lookup_skin = blank lookup_skin = blank
...@@ -28,35 +26,38 @@ theme_logo_dict = {} ...@@ -28,35 +26,38 @@ theme_logo_dict = {}
theme_reference = None theme_reference = None
theme = ( theme = (
context.Base_getTemplateProxyParameter(parameter="theme", source_data=None) or context.Base_getTemplateProxyParameter(parameter="theme", source_data=None) or
context.Base_getTemplateParameter("theme") or pref.getPreferredCorporateIdentityTemplateDefaultTheme()
context.Base_getTemplateParameter("default_company_title")
) )
if theme is not None: if theme is not None:
theme = theme.lower() theme = theme.lower()
theme_logo_prefix = context.Base_getTemplateParameter("default_logo_prefix") theme_logo_prefix = pref.getPreferredCorporateIdentityTemplateDefaultLogoPrefix()
if theme_logo_prefix: if theme_logo_prefix:
theme_reference = theme_logo_prefix + theme.capitalize() theme_reference = theme_logo_prefix + theme.capitalize()
theme_logo_list = context.Base_getTemplateProxyParameter(parameter="logo", source_data=theme_reference) or [] theme_logo_list = context.Base_getTemplateProxyParameter(parameter="logo", source_data=theme_reference) or []
if len(theme_logo_list) > 0: if len(theme_logo_list) > 0:
theme_logo_dict = theme_logo_list[0] theme_logo_dict = theme_logo_list[0]
if theme is None:
theme = "default"
theme_dict = {} theme_dict = {}
theme_logo_url = pref.getPreferredCorporateIdentityTemplateFallbackLogoRelativeUrl()
theme_dict["theme"] = theme theme_dict["theme"] = theme
theme_dict["theme_logo_description"] = theme_logo_dict.get("description", blank) theme_dict["theme_logo_description"] = theme_logo_dict.get("description", blank)
theme_dict["theme_logo_url"] = context.Base_getTemplateParameter("fallback_image") theme_dict["theme_logo_url"] = theme_logo_url
# if a theme logo is available, use it instead and add format=png (note, image
# conversion doesn't seem to work with files loaded from skins folders)
if theme_logo_dict.get("relative_url", None) is not None: if theme_logo_dict.get("relative_url", None) is not None:
theme_dict["theme_logo_url"] = theme_logo_dict.get("relative_url") + param theme_dict["theme_logo_url"] = theme_logo_dict.get("relative_url") + "?format=png"
theme_dict["template_css_url"] = css_path + pdf theme_dict["template_css_url"] = css_path + pdf
theme_dict["fallback_img_url"] = context.Base_getTemplateParameter("fallback_image") or blank theme_dict["fallback_img_url"] = theme_logo_url or blank
theme_dict["theme_css_font_list"] = [] theme_dict["theme_css_font_list"] = []
theme_font_list = context.Base_getTemplateParameter(font) or [] theme_font_list = pref.getPreferredCorporateIdentityTemplateDefaultThemeFontList() or []
for font in theme_font_list: for font in theme_font_list:
theme_dict["theme_css_font_list"].append(font + pdf) theme_dict["theme_css_font_list"].append(font + pdf)
theme_css_url = context.Base_getTemplateParameter(css) theme_css_url = pref.getPreferredCorporateIdentityTemplateThemeCssRelativeUrl()
if theme_css_url: if theme_css_url:
theme_dict["theme_css_url"] = context.Base_getTemplateParameter(css) + lookup_skin theme_dict["theme_css_url"] = theme_css_url + lookup_skin
else: else:
theme_dict["theme_css_url"] = blank theme_dict["theme_css_url"] = blank
return theme_dict return theme_dict
...@@ -30,6 +30,7 @@ import re ...@@ -30,6 +30,7 @@ import re
from base64 import b64encode from base64 import b64encode
blank = '' blank = ''
pref = context.getPortalObject().portal_preferences
# -------------------------- Setup --------------------------------------------- # -------------------------- Setup ---------------------------------------------
letter = context letter = context
...@@ -50,7 +51,7 @@ override_batch_mode = kw.get('batch_mode', None) ...@@ -50,7 +51,7 @@ override_batch_mode = kw.get('batch_mode', None)
# -------------------------- Document Parameters ------------------------------ # -------------------------- Document Parameters ------------------------------
letter_portal_type = letter.getPortalType() letter_portal_type = letter.getPortalType()
letter_relative_url = letter.getRelativeUrl() letter_relative_url = letter.getRelativeUrl()
letter_prefix = "Letter." letter_prefix = pref.getPreferredCorporateIdentityTemplateLetterDocumentPrefix() or "Letter."
# letter can be Web Page or Event created in Ticket module # letter can be Web Page or Event created in Ticket module
if letter_portal_type == "Web Page": if letter_portal_type == "Web Page":
......
...@@ -39,12 +39,15 @@ from Products.PythonScripts.standard import html_quote ...@@ -39,12 +39,15 @@ from Products.PythonScripts.standard import html_quote
from base64 import b64encode from base64 import b64encode
blank = '' blank = ''
pref = context.getPortalObject().portal_preferences
# ------------------ HTML cleanup/converter methods ---------------------------- # ------------------ HTML cleanup/converter methods ----------------------------
def translateText(snip): def translateText(snip):
return doc_localiser.erp5_ui.gettext(snip, lang=doc_language).encode('utf-8').strip() return doc_localiser.erp5_ui.gettext(snip, lang=doc_language).encode('utf-8').strip()
# -------------------------- Setup --------------------------------------------- # -------------------------- Setup ---------------------------------------------
doc = context doc = context
doc_prefix = pref.getPreferredCorporateIdentityTemplateReportDocumentPrefix() or "Report."
doc_download = None #XXX not yet implemented doc_download = None #XXX not yet implemented
doc_save = int(kw.get('document_save') or 0) doc_save = int(kw.get('document_save') or 0)
doc_display_header = int(kw.get('display_header') or 0) doc_display_header = int(kw.get('display_header') or 0)
...@@ -80,7 +83,7 @@ doc_embed = doc_format == 'html' and (doc_display_embedded or doc_display_sandbo ...@@ -80,7 +83,7 @@ doc_embed = doc_format == 'html' and (doc_display_embedded or doc_display_sandbo
# -------------------------- Document Parameters ------------------------------ # -------------------------- Document Parameters ------------------------------
doc_localiser = doc.getPortalObject().Localizer doc_localiser = doc.getPortalObject().Localizer
doc_rendering_fix = doc.Base_getTemplateParameter('wkhtmltopdf_rendering_fix') or blank doc_rendering_fix = doc.WebPage_getPdfOutputRenderingFix() or blank
doc_report = getattr(doc, doc_report_name) doc_report = getattr(doc, doc_report_name)
doc_aggregate_list = [] doc_aggregate_list = []
doc_revision = "1" doc_revision = "1"
...@@ -124,7 +127,7 @@ if doc_language is not None: ...@@ -124,7 +127,7 @@ if doc_language is not None:
if doc_language is None: if doc_language is None:
doc_language = blank doc_language = blank
if doc_reference == blank: if doc_reference == blank:
doc_reference = "Report." + doc_title.replace(" ", ".") doc_reference = doc_prefix + doc_title.replace(" ", ".")
doc_full_reference = '-'.join([doc_reference, doc_version, doc_language]) doc_full_reference = '-'.join([doc_reference, doc_version, doc_language])
doc_short_date = doc_modification_date.strftime('%Y-%m-%d') doc_short_date = doc_modification_date.strftime('%Y-%m-%d')
...@@ -154,8 +157,8 @@ if doc_format == "html": ...@@ -154,8 +157,8 @@ if doc_format == "html":
book_template_css_url=doc_theme.get("template_css_url"), book_template_css_url=doc_theme.get("template_css_url"),
book_logo_url=doc.Base_setUrl(path=doc_source.get("enhanced_logo_url"), display=None), book_logo_url=doc.Base_setUrl(path=doc_source.get("enhanced_logo_url"), display=None),
book_logo_title=doc_source.get("theme_logo_description"), book_logo_title=doc_source.get("theme_logo_description"),
book_report_css_list=doc.Base_getTemplateParameter("report_css_list") or [], book_report_css_list=pref.getPreferredCorporateIdentityTemplateReportCssList() or [],
book_report_js_list=doc.Base_getTemplateParameter("report_js_list") or [], book_report_js_list=pref.getPreferredCorporateIdentityTemplateReportJsList() or [],
book_short_title=doc_short_title, book_short_title=doc_short_title,
book_reference=doc_reference, book_reference=doc_reference,
book_revision=doc_revision, book_revision=doc_revision,
...@@ -190,8 +193,8 @@ if doc_format == "pdf": ...@@ -190,8 +193,8 @@ if doc_format == "pdf":
book_theme_css_font_list=doc_theme.get("theme_css_font_list"), book_theme_css_font_list=doc_theme.get("theme_css_font_list"),
book_theme_css_url=doc_theme.get("theme_css_url"), book_theme_css_url=doc_theme.get("theme_css_url"),
book_template_css_url=doc_theme.get("template_css_url"), book_template_css_url=doc_theme.get("template_css_url"),
book_report_css_list=doc.Base_getTemplateParameter("report_css_list") or [], book_report_css_list=pref.getPreferredCorporateIdentityTemplateReportCssList() or [],
book_report_js_list=doc.Base_getTemplateParameter("report_js_list") or [], book_report_js_list=pref.getPreferredCorporateIdentityTemplateReportJsList() or [],
book_content=doc_content, book_content=doc_content,
) )
......
"""
================================================================================
Return list of bank accounts for default organisation defined in preferences
================================================================================
"""
# parameters:
# ------------------------------------------------------------------------------
# parameter Parameter to lookup
from zExceptions import Unauthorized
preference = context.getPortalObject().portal_preferences
fallback_logo_relative_url = preference.getPreferredCorporateIdentityTemplateFallbackLogoRelativeUrl()
if fallback_logo_relative_url:
try:
return context.restrictedTraverse(fallback_logo_relative_url).absolute_url()
except Unauthorized:
return None
return None
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="PythonScript" module="Products.PythonScripts.PythonScript"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>Script_magic</string> </key>
<value> <int>3</int> </value>
</item>
<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_container</string> </key>
<value> <string>container</string> </value>
</item>
<item>
<key> <string>name_context</string> </key>
<value> <string>context</string> </value>
</item>
<item>
<key> <string>name_m_self</string> </key>
<value> <string>script</string> </value>
</item>
<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>_params</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>Preference_getDefaultFallbackLogoAbsoluteUrl</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
"""
================================================================================
Return list of bank accounts for default organisation defined in preferences
================================================================================
"""
# parameters:
# ------------------------------------------------------------------------------
# parameter Parameter to lookup
from zExceptions import Unauthorized
preference = context.getPortalObject().portal_preferences
organisation_relative_url = preference.getPreferredCorporateIdentityTemplateDefaultOrganisationRelativeUrl()
if organisation_relative_url:
try:
organisation = context.restrictedTraverse(organisation_relative_url)
return [('', '')] + [(account.getTitle(), account.getRelativeUrl()) for account in organisation.searchFolder(portal_type='Bank Account', sort_on='title')]
except Unauthorized:
return None
return None
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="PythonScript" module="Products.PythonScripts.PythonScript"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>Script_magic</string> </key>
<value> <int>3</int> </value>
</item>
<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_container</string> </key>
<value> <string>container</string> </value>
</item>
<item>
<key> <string>name_context</string> </key>
<value> <string>context</string> </value>
</item>
<item>
<key> <string>name_m_self</string> </key>
<value> <string>script</string> </value>
</item>
<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>_params</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>Preference_getDefaultOrganisationBankAccountList</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="ERP5 Form" module="erp5.portal_type"/>
</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/>
</value>
</item>
</dictionary>
</state>
</object>
</value>
</item>
<item>
<key> <string>_objects</string> </key>
<value>
<tuple/>
</value>
</item>
<item>
<key> <string>action</string> </key>
<value> <string>Base_edit</string> </value>
</item>
<item>
<key> <string>description</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>edit_order</string> </key>
<value>
<list/>
</value>
</item>
<item>
<key> <string>encoding</string> </key>
<value> <string>UTF-8</string> </value>
</item>
<item>
<key> <string>enctype</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>group_list</string> </key>
<value>
<list>
<string>left</string>
<string>right</string>
<string>bottom</string>
<string>listbox</string>
<string>hidden</string>
</list>
</value>
</item>
<item>
<key> <string>groups</string> </key>
<value>
<dictionary>
<item>
<key> <string>bottom</string> </key>
<value>
<list/>
</value>
</item>
<item>
<key> <string>hidden</string> </key>
<value>
<list/>
</value>
</item>
<item>
<key> <string>left</string> </key>
<value>
<list>
<string>my_preferred_corporate_identity_template_default_organisation_relative_url</string>
<string>my_preferred_corporate_identity_template_default_theme</string>
<string>my_preferred_corporate_identity_template_theme_css_relative_url</string>
<string>my_preferred_corporate_identity_template_fallback_logo_absolute_url</string>
<string>my_preferred_corporate_identity_template_fallback_logo_relative_url</string>
</list>
</value>
</item>
<item>
<key> <string>listbox</string> </key>
<value>
<list/>
</value>
</item>
<item>
<key> <string>right</string> </key>
<value>
<list/>
</value>
</item>
</dictionary>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>Preference_viewCorporateIdentityStyle</string> </value>
</item>
<item>
<key> <string>method</string> </key>
<value> <string>POST</string> </value>
</item>
<item>
<key> <string>name</string> </key>
<value> <string>Preference_viewCorporateIdentityStyle</string> </value>
</item>
<item>
<key> <string>pt</string> </key>
<value> <string>form_view</string> </value>
</item>
<item>
<key> <string>row_length</string> </key>
<value> <int>4</int> </value>
</item>
<item>
<key> <string>stored_encoding</string> </key>
<value> <string>UTF-8</string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string>Corporate Identity Template Preferences</string> </value>
</item>
<item>
<key> <string>unicode_mode</string> </key>
<value> <int>0</int> </value>
</item>
<item>
<key> <string>update_action</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>update_action_title</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="ProxyField" module="Products.ERP5Form.ProxyField"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>delegated_list</string> </key>
<value>
<list>
<string>description</string>
<string>items</string>
<string>title</string>
</list>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>my_preferred_corporate_identity_template_default_organisation_relative_url</string> </value>
</item>
<item>
<key> <string>message_values</string> </key>
<value>
<dictionary>
<item>
<key> <string>external_validator_failed</string> </key>
<value> <string>The input failed the external validator.</string> </value>
</item>
</dictionary>
</value>
</item>
<item>
<key> <string>overrides</string> </key>
<value>
<dictionary>
<item>
<key> <string>field_id</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>form_id</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</value>
</item>
<item>
<key> <string>tales</string> </key>
<value>
<dictionary>
<item>
<key> <string>description</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>field_id</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>form_id</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>items</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
</value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</value>
</item>
<item>
<key> <string>values</string> </key>
<value>
<dictionary>
<item>
<key> <string>description</string> </key>
<value> <string>Default organisation that should be used on templates.</string> </value>
</item>
<item>
<key> <string>field_id</string> </key>
<value> <string>my_list_field</string> </value>
</item>
<item>
<key> <string>form_id</string> </key>
<value> <string>Base_viewFieldLibrary</string> </value>
</item>
<item>
<key> <string>items</string> </key>
<value>
<list/>
</value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string>Default Organisation Title</string> </value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</pickle>
</record>
<record id="2" aka="AAAAAAAAAAI=">
<pickle>
<global name="TALESMethod" module="Products.Formulator.TALESField"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_text</string> </key>
<value> <string>python: [(\'\', \'\')] + [(organisation.getTitle(), organisation.getRelativeUrl()) for organisation in here.getPortalObject().portal_catalog(portal_type=\'Organisation\', group_relative_url=\'group/%\', sort_on=\'title\')]</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="ProxyField" module="Products.ERP5Form.ProxyField"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>delegated_list</string> </key>
<value>
<list>
<string>description</string>
<string>items</string>
<string>title</string>
</list>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>my_preferred_corporate_identity_template_default_theme</string> </value>
</item>
<item>
<key> <string>message_values</string> </key>
<value>
<dictionary>
<item>
<key> <string>external_validator_failed</string> </key>
<value> <string>The input failed the external validator.</string> </value>
</item>
</dictionary>
</value>
</item>
<item>
<key> <string>overrides</string> </key>
<value>
<dictionary>
<item>
<key> <string>field_id</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>form_id</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</value>
</item>
<item>
<key> <string>tales</string> </key>
<value>
<dictionary>
<item>
<key> <string>description</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>field_id</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>form_id</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>items</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</value>
</item>
<item>
<key> <string>values</string> </key>
<value>
<dictionary>
<item>
<key> <string>description</string> </key>
<value> <string>The default theme used to style templates if no other override applies.</string> </value>
</item>
<item>
<key> <string>field_id</string> </key>
<value> <string>my_string_field</string> </value>
</item>
<item>
<key> <string>form_id</string> </key>
<value> <string>Base_viewFieldLibrary</string> </value>
</item>
<item>
<key> <string>items</string> </key>
<value>
<list/>
</value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string>Default Theme</string> </value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="ProxyField" module="Products.ERP5Form.ProxyField"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>delegated_list</string> </key>
<value>
<list>
<string>default</string>
<string>description</string>
<string>enabled</string>
<string>image_display</string>
<string>title</string>
</list>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>my_preferred_corporate_identity_template_fallback_logo_absolute_url</string> </value>
</item>
<item>
<key> <string>message_values</string> </key>
<value>
<dictionary>
<item>
<key> <string>external_validator_failed</string> </key>
<value> <string>The input failed the external validator.</string> </value>
</item>
</dictionary>
</value>
</item>
<item>
<key> <string>overrides</string> </key>
<value>
<dictionary>
<item>
<key> <string>field_id</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>form_id</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>target</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</value>
</item>
<item>
<key> <string>tales</string> </key>
<value>
<dictionary>
<item>
<key> <string>default</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
</value>
</item>
<item>
<key> <string>description</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>enabled</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>field_id</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>form_id</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>image_display</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>target</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</value>
</item>
<item>
<key> <string>values</string> </key>
<value>
<dictionary>
<item>
<key> <string>default</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>description</string> </key>
<value> <string>(no value specified/image not found in Fallback Logo Relative Url)</string> </value>
</item>
<item>
<key> <string>enabled</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>field_id</string> </key>
<value> <string>my_thumbnail</string> </value>
</item>
<item>
<key> <string>form_id</string> </key>
<value> <string>File_viewFieldLibrary</string> </value>
</item>
<item>
<key> <string>image_display</string> </key>
<value> <string>thumbnail</string> </value>
</item>
<item>
<key> <string>target</string> </key>
<value> <string>Click to edit the target</string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string>Logo</string> </value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</pickle>
</record>
<record id="2" aka="AAAAAAAAAAI=">
<pickle>
<global name="TALESMethod" module="Products.Formulator.TALESField"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_text</string> </key>
<value> <string>python: here.Preference_getDefaultFallbackLogoAbsoluteUrl()</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="ProxyField" module="Products.ERP5Form.ProxyField"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>delegated_list</string> </key>
<value>
<list>
<string>default</string>
<string>description</string>
<string>title</string>
</list>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>my_preferred_corporate_identity_template_fallback_logo_relative_url</string> </value>
</item>
<item>
<key> <string>message_values</string> </key>
<value>
<dictionary>
<item>
<key> <string>external_validator_failed</string> </key>
<value> <string>The input failed the external validator.</string> </value>
</item>
</dictionary>
</value>
</item>
<item>
<key> <string>overrides</string> </key>
<value>
<dictionary>
<item>
<key> <string>field_id</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>form_id</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</value>
</item>
<item>
<key> <string>tales</string> </key>
<value>
<dictionary>
<item>
<key> <string>description</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>field_id</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>form_id</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>items</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</value>
</item>
<item>
<key> <string>values</string> </key>
<value>
<dictionary>
<item>
<key> <string>default</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>description</string> </key>
<value> <string>Relative url of logo to be used if no theme logo can be found.</string> </value>
</item>
<item>
<key> <string>field_id</string> </key>
<value> <string>my_string_field</string> </value>
</item>
<item>
<key> <string>form_id</string> </key>
<value> <string>Base_viewFieldLibrary</string> </value>
</item>
<item>
<key> <string>items</string> </key>
<value>
<list/>
</value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string>Fallback Logo Relative Url</string> </value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="ProxyField" module="Products.ERP5Form.ProxyField"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>delegated_list</string> </key>
<value>
<list>
<string>default</string>
<string>description</string>
<string>title</string>
</list>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>my_preferred_corporate_identity_template_theme_css_relative_url</string> </value>
</item>
<item>
<key> <string>message_values</string> </key>
<value>
<dictionary>
<item>
<key> <string>external_validator_failed</string> </key>
<value> <string>The input failed the external validator.</string> </value>
</item>
</dictionary>
</value>
</item>
<item>
<key> <string>overrides</string> </key>
<value>
<dictionary>
<item>
<key> <string>field_id</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>form_id</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</value>
</item>
<item>
<key> <string>tales</string> </key>
<value>
<dictionary>
<item>
<key> <string>default</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>description</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>field_id</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>form_id</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</value>
</item>
<item>
<key> <string>values</string> </key>
<value>
<dictionary>
<item>
<key> <string>default</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>description</string> </key>
<value> <string>relative Url pointing to a portal skin folder containing themes css</string> </value>
</item>
<item>
<key> <string>field_id</string> </key>
<value> <string>my_string_field</string> </value>
</item>
<item>
<key> <string>form_id</string> </key>
<value> <string>Base_viewFieldLibrary</string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string>Theme CSS (relative url)</string> </value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
""" """
================================================================================ ================================================================================
Return custom hardcoded parameters Scripts correcting wrong behaviors in WkHTMLtoPDF rendering
================================================================================ ================================================================================
""" """
# parameters: # parameters:
# ------------------------------------------------------------------------------ # ------------------------------------------------------------------------------
# parameter Parameter to lookup # parameter Parameter to lookup
if parameter == "fallback_image": # included:
return "template_images/fallback.png" # - prevent resizing of document and font-size based on width of widest element
if parameter == "default_theme_css_url":
return "template_themes/themes.css"
if parameter == "wkhtmltopdf_rendering_fix":
return """ return """
<script> <script>
(function () { (function () {
var table_list = document.body.querySelectorAll("table"), var table_list = document.body.querySelectorAll("table"),
......
...@@ -50,11 +50,11 @@ ...@@ -50,11 +50,11 @@
</item> </item>
<item> <item>
<key> <string>_params</string> </key> <key> <string>_params</string> </key>
<value> <string>parameter=None, source_data=None</string> </value> <value> <string></string> </value>
</item> </item>
<item> <item>
<key> <string>id</string> </key> <key> <string>id</string> </key>
<value> <string>Base_getTemplateParameter</string> </value> <value> <string>WebPage_getPdfOutputRenderingFix</string> </value>
</item> </item>
</dictionary> </dictionary>
</pickle> </pickle>
......
...@@ -18,21 +18,48 @@ if img_string is None or img_string == "": ...@@ -18,21 +18,48 @@ if img_string is None or img_string == "":
return img_string return img_string
img_src = re.findall("src=['\"](.*?)['\"]", img_string)[0] img_src = re.findall("src=['\"](.*?)['\"]", img_string)[0]
img_obj = context.restrictedTraverse(img_src.split("?")[0], None) img_type = None
# flag broken link until further notice # START user ignoring guidelines:
if img_obj is None: validation_freebie = None
raise NotFound('The following image could not be found in erp5: %s' % (img_src.split("?")[0])) new_src = None
img_type = img_obj.getContentType() # Guideline: no relative links. we cover
if img_src.startswith("./"):
new_src = img_src.replace("./", "")
img_string = img_string.replace(img_src, new_src)
# Guideline: include format. we cover
img_src = new_src or img_src
if img_src.find("format=") == -1:
if img_src.find("?") == -1:
new_src = img_src + "?format="
else:
new_src = img_src + "&amp;format="
img_string = img_string.replace(img_src, new_src)
# ensure alt attributes are set # Guideline: images must be stored locally, don't complain if your pdf breaks
if img_string.find('alt=') == -1: img_src = new_src or img_src
if img_src.startswith("http"):
validation_freebie = True
if validation_freebie is None:
#END user ignoring guidelines
img_obj = context.restrictedTraverse(img_src.split("?")[0], None)
# flag broken link until further notice
if img_obj is None:
raise NotFound('The following image could not be found in erp5 OR is not following guidelines for links (eg no ./ prefix): %s' % (img_src.split("?")[0]))
img_type = img_obj.getContentType()
# ensure alt attributes are set
if img_string.find('alt=') == -1:
img_string.replace ("src=", 'alt="%s" src=' % img_caption or img_obj.getTitle()) img_string.replace ("src=", 'alt="%s" src=' % img_caption or img_obj.getTitle())
# force svg display as svg or png # force svg display as svg or png
if img_type == "image/svg+xml": if img_type == "image/svg+xml":
if img_svg_format == "png" or img_svg_format is None: if img_svg_format == "png" or img_svg_format is None:
img_string = img_string.replace('type="image/svg+xml"', '') img_string = img_string.replace('type="image/svg+xml"', '')
img_string = img_string.replace("type='image/svg+xml'", '') img_string = img_string.replace("type='image/svg+xml'", '')
...@@ -42,8 +69,8 @@ if img_type == "image/svg+xml": ...@@ -42,8 +69,8 @@ if img_type == "image/svg+xml":
img_string = img_string.replace('src=', "type='image/svg+xml' src=") img_string = img_string.replace('src=', "type='image/svg+xml' src=")
img_string = img_string.replace('format=png', 'format=svg') img_string = img_string.replace('format=png', 'format=svg')
# wrap image in fullscreen link # wrap image in fullscreen link
if img_fullscreen_link: if img_fullscreen_link:
img_string = ''.join([ img_string = ''.join([
'<a target="_blank" rel="noopener noreferrer" href="%s" title="%s">%s<a>' % ( '<a target="_blank" rel="noopener noreferrer" href="%s" title="%s">%s<a>' % (
img_src, img_src,
...@@ -52,8 +79,8 @@ if img_fullscreen_link: ...@@ -52,8 +79,8 @@ if img_fullscreen_link:
) )
]) ])
# wrap image in <p> tag # wrap image in <p> tag
if img_wrap: if img_wrap:
img_string = '<p class="ci-book-img" style="text-align:center">' + img_string + '</p>' img_string = '<p class="ci-book-img" style="text-align:center">' + img_string + '</p>'
return img_string return img_string
...@@ -38,6 +38,7 @@ from Products.PythonScripts.standard import html_quote ...@@ -38,6 +38,7 @@ from Products.PythonScripts.standard import html_quote
from base64 import b64encode from base64 import b64encode
blank = '' blank = ''
pref = context.getPortalObject().portal_preferences
# ------------------ HTML cleanup/converter methods ---------------------------- # ------------------ HTML cleanup/converter methods ----------------------------
def translateText(snip): def translateText(snip):
...@@ -69,8 +70,8 @@ override_batch_mode = kw.get('batch_mode') ...@@ -69,8 +70,8 @@ override_batch_mode = kw.get('batch_mode')
# -------------------------- Document Parameters ------------------------------ # -------------------------- Document Parameters ------------------------------
book_localiser = book.getPortalObject().Localizer book_localiser = book.getPortalObject().Localizer
book_relative_url = book.getRelativeUrl() book_relative_url = book.getRelativeUrl()
book_prefix = "Book." book_prefix = pref.getPreferredCorporateIdentityTemplateBookDocumentPrefix() or "Book."
book_rendering_fix = book.Base_getTemplateParameter('wkhtmltopdf_rendering_fix') or blank book_rendering_fix = book.WebPage_getPdfOutputRenderingFix() or blank
book_content = book.getTextContent() book_content = book.getTextContent()
book_aggregate_list = [] book_aggregate_list = []
book_revision = book.getRevision() book_revision = book.getRevision()
...@@ -143,8 +144,8 @@ if book_include_linked_content: ...@@ -143,8 +144,8 @@ if book_include_linked_content:
# embed reports # embed reports
if book_include_report_content: if book_include_report_content:
book_report_css_list = book.Base_getTemplateParameter("report_css_list") or [] book_report_css_list = pref.getPreferredCorporateIdentityTemplateReportCssList() or []
book_report_js_list = book.Base_getTemplateParameter("report_js_list") or [] book_report_js_list = pref.getPreferredCorporateIdentityTemplateReportJsList() or []
book_content = book.WebPage_embedReportDocumentList(doc_content=book_content, doc_language=book_language, doc_format=book_format) book_content = book.WebPage_embedReportDocumentList(doc_content=book_content, doc_language=book_language, doc_format=book_format)
# table of links # table of links
......
...@@ -27,6 +27,7 @@ from Products.PythonScripts.standard import html_quote ...@@ -27,6 +27,7 @@ from Products.PythonScripts.standard import html_quote
from base64 import b64encode from base64 import b64encode
blank = '' blank = ''
pref = context.getPortalObject().portal_preferences
# ------------------ HTML cleanup/converter methods ---------------------------- # ------------------ HTML cleanup/converter methods ----------------------------
def removeLegalesePlaceholders(content): def removeLegalesePlaceholders(content):
...@@ -36,7 +37,7 @@ def removeLegalesePlaceholders(content): ...@@ -36,7 +37,7 @@ def removeLegalesePlaceholders(content):
# -------------------------- Setup --------------------------------------------- # -------------------------- Setup ---------------------------------------------
leaflet = context leaflet = context
leaflet_prefix = "Leaflet." leaflet_prefix = pref.getPreferredCorporateIdentityTemplateLeafletDocumentPrefix() or "Leaflet."
leaflet_format = kw.get('format') or 'html' leaflet_format = kw.get('format') or 'html'
leaflet_display_svg = kw.get('display_svg') or "png" leaflet_display_svg = kw.get('display_svg') or "png"
leaflet_download = int(kw.get('document_download') or 0) leaflet_download = int(kw.get('document_download') or 0)
......
...@@ -24,6 +24,7 @@ import re ...@@ -24,6 +24,7 @@ import re
from base64 import b64encode from base64 import b64encode
blank = '' blank = ''
pref = context.getPortalObject().portal_preferences
re_tag = re.compile(r'<[^>]+>') re_tag = re.compile(r'<[^>]+>')
# ------------------ HTML cleanup/converter methods ---------------------------- # ------------------ HTML cleanup/converter methods ----------------------------
...@@ -38,7 +39,7 @@ def removeHardcodedAbout(my_content): ...@@ -38,7 +39,7 @@ def removeHardcodedAbout(my_content):
# -------------------------- Setup --------------------------------------------- # -------------------------- Setup ---------------------------------------------
release = context release = context
release_prefix = "Release." release_prefix = pref.getPreferredCorporateIdentityTemplateReleaseDocumentPrefix() or "Release."
release_format = kw.get('format') or 'html' release_format = kw.get('format') or 'html'
release_display_about = int(kw.get('display_about') or 0) release_display_about = int(kw.get('display_about') or 0)
release_display_svg = kw.get('display_svg') or "png" release_display_svg = kw.get('display_svg') or "png"
......
...@@ -29,6 +29,7 @@ from base64 import b64encode ...@@ -29,6 +29,7 @@ from base64 import b64encode
blank = '' blank = ''
details_separator = '</section><section class="ci-notes-continue"><section><h1>cont.</h1></section>' details_separator = '</section><section class="ci-notes-continue"><section><h1>cont.</h1></section>'
pref = context.getPortalObject().portal_preferences
# ------------------ HTML cleanup/converter methods ---------------------------- # ------------------ HTML cleanup/converter methods ----------------------------
def getSlideList(my_content): def getSlideList(my_content):
...@@ -148,7 +149,7 @@ def sortContent(my_page_list): ...@@ -148,7 +149,7 @@ def sortContent(my_page_list):
# -------------------------- Setup --------------------------------------------- # -------------------------- Setup ---------------------------------------------
doc = context doc = context
doc_prefix = "Slideshow." doc_prefix = pref.getPreferredCorporateIdentityTemplateSlideDocumentPrefix() or "Slideshow."
doc_converted_content = None doc_converted_content = None
doc_format = kw.get('format') or 'html' doc_format = kw.get('format') or 'html'
doc_display_notes = int(kw.get('display_note') or 0) doc_display_notes = int(kw.get('display_note') or 0)
......
Preference | corporate_identity_style_preferences
Web Page | export_book Web Page | export_book
Web Page | export_leaflet Web Page | export_leaflet
Web Page | export_letter Web Page | export_letter
......
CorporateIdentityTemplatePreference
\ No newline at end of file
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Category" 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>Authenticated</string>
<string>Author</string>
<string>Manager</string>
<string>Member</string>
<string>Owner</string>
<string>Reviewer</string>
</tuple>
</value>
</item>
<item>
<key> <string>_Add_portal_content_Permission</string> </key>
<value>
<tuple>
<string>Assignor</string>
<string>Manager</string>
</tuple>
</value>
</item>
<item>
<key> <string>_Add_portal_folders_Permission</string> </key>
<value>
<tuple>
<string>Assignor</string>
<string>Manager</string>
</tuple>
</value>
</item>
<item>
<key> <string>_Copy_or_Move_Permission</string> </key>
<value>
<tuple>
<string>Assignor</string>
<string>Manager</string>
</tuple>
</value>
</item>
<item>
<key> <string>_Delete_objects_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>Authenticated</string>
<string>Author</string>
<string>Manager</string>
<string>Member</string>
<string>Owner</string>
<string>Reviewer</string>
</tuple>
</value>
</item>
<item>
<key> <string>categories</string> </key>
<value>
<tuple>
<string>group/web</string>
</tuple>
</value>
</item>
<item>
<key> <string>codification</string> </key>
<value> <string>TEST</string> </value>
</item>
<item>
<key> <string>default_reference</string> </key>
<value> <string>template-test-group</string> </value>
</item>
<item>
<key> <string>description</string> </key>
<value> <string>Group to associate organisations with.</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>template_test_group</string> </value>
</item>
<item>
<key> <string>int_index</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>portal_type</string> </key>
<value> <string>Category</string> </value>
</item>
<item>
<key> <string>short_title</string> </key>
<value> <string>Template Test Group</string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string>Tepmlate Test Group</string> </value>
</item>
<item>
<key> <string>workflow_history</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
</value>
</item>
</dictionary>
</pickle>
</record>
<record id="2" aka="AAAAAAAAAAI=">
<pickle>
<global name="PersistentMapping" module="Persistence.mapping"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>data</string> </key>
<value>
<dictionary>
<item>
<key> <string>category_publication_workflow</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent>
</value>
</item>
<item>
<key> <string>edit_workflow</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAQ=</string> </persistent>
</value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</pickle>
</record>
<record id="3" aka="AAAAAAAAAAM=">
<pickle>
<global name="WorkflowHistoryList" module="Products.ERP5Type.patches.WorkflowTool"/>
</pickle>
<pickle>
<tuple>
<none/>
<list>
<dictionary>
<item>
<key> <string>action</string> </key>
<value> <string>publish</string> </value>
</item>
<item>
<key> <string>actor</string> </key>
<value> <string>zope</string> </value>
</item>
<item>
<key> <string>comment</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>error_message</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>time</string> </key>
<value>
<object>
<klass>
<global name="DateTime" module="DateTime.DateTime"/>
</klass>
<tuple>
<none/>
</tuple>
<state>
<tuple>
<float>1537195468.01</float>
<string>UTC</string>
</tuple>
</state>
</object>
</value>
</item>
<item>
<key> <string>validation_state</string> </key>
<value> <string>published</string> </value>
</item>
</dictionary>
</list>
</tuple>
</pickle>
</record>
<record id="4" aka="AAAAAAAAAAQ=">
<pickle>
<global name="WorkflowHistoryList" module="Products.ERP5Type.patches.WorkflowTool"/>
</pickle>
<pickle>
<tuple>
<none/>
<list>
<dictionary>
<item>
<key> <string>action</string> </key>
<value> <string>edit</string> </value>
</item>
<item>
<key> <string>actor</string> </key>
<value> <string>zope</string> </value>
</item>
<item>
<key> <string>comment</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>error_message</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>serial</string> </key>
<value> <string>969.56682.45078.47052</string> </value>
</item>
<item>
<key> <string>state</string> </key>
<value> <string>current</string> </value>
</item>
<item>
<key> <string>time</string> </key>
<value>
<object>
<klass>
<global name="DateTime" module="DateTime.DateTime"/>
</klass>
<tuple>
<none/>
</tuple>
<state>
<tuple>
<float>1537195460.2</float>
<string>UTC</string>
</tuple>
</state>
</object>
</value>
</item>
</dictionary>
</list>
</tuple>
</pickle>
</record>
</ZopeData>
...@@ -39,7 +39,7 @@ ...@@ -39,7 +39,7 @@
</item> </item>
<item> <item>
<key> <string>_EtagSupport__etag</string> </key> <key> <string>_EtagSupport__etag</string> </key>
<value> <string>ts36831120.16</string> </value> <value> <string>ts37950729.85</string> </value>
</item> </item>
<item> <item>
<key> <string>_Modify_portal_content_Permission</string> </key> <key> <string>_Modify_portal_content_Permission</string> </key>
...@@ -83,7 +83,7 @@ ...@@ -83,7 +83,7 @@
</item> </item>
<item> <item>
<key> <string>content_md5</string> </key> <key> <string>content_md5</string> </key>
<value> <string>1800cf6c656efd64f7fd39bde885c592</string> </value> <value> <string>4bfc2552cadf568a4fac05ad5ea9fd3f</string> </value>
</item> </item>
<item> <item>
<key> <string>content_type</string> </key> <key> <string>content_type</string> </key>
......
...@@ -39,7 +39,7 @@ ...@@ -39,7 +39,7 @@
</item> </item>
<item> <item>
<key> <string>_EtagSupport__etag</string> </key> <key> <string>_EtagSupport__etag</string> </key>
<value> <string>ts36831147.45</string> </value> <value> <string>ts37950753.99</string> </value>
</item> </item>
<item> <item>
<key> <string>_Modify_portal_content_Permission</string> </key> <key> <string>_Modify_portal_content_Permission</string> </key>
...@@ -83,7 +83,7 @@ ...@@ -83,7 +83,7 @@
</item> </item>
<item> <item>
<key> <string>content_md5</string> </key> <key> <string>content_md5</string> </key>
<value> <string>e8d12cb895d034eb4d99f822791385d4</string> </value> <value> <string>4f1a0d16414a4f29976970048cab16ec</string> </value>
</item> </item>
<item> <item>
<key> <string>content_type</string> </key> <key> <string>content_type</string> </key>
......
...@@ -39,7 +39,7 @@ ...@@ -39,7 +39,7 @@
</item> </item>
<item> <item>
<key> <string>_EtagSupport__etag</string> </key> <key> <string>_EtagSupport__etag</string> </key>
<value> <string>ts36831198.37</string> </value> <value> <string>ts37950829.52</string> </value>
</item> </item>
<item> <item>
<key> <string>_Modify_portal_content_Permission</string> </key> <key> <string>_Modify_portal_content_Permission</string> </key>
...@@ -83,7 +83,7 @@ ...@@ -83,7 +83,7 @@
</item> </item>
<item> <item>
<key> <string>content_md5</string> </key> <key> <string>content_md5</string> </key>
<value> <string>24cddfd9e91daa81526120cff93f59ed</string> </value> <value> <string>8b379454e584fda3bd33269520dcfdae</string> </value>
</item> </item>
<item> <item>
<key> <string>content_type</string> </key> <key> <string>content_type</string> </key>
......
...@@ -39,7 +39,7 @@ ...@@ -39,7 +39,7 @@
</item> </item>
<item> <item>
<key> <string>_EtagSupport__etag</string> </key> <key> <string>_EtagSupport__etag</string> </key>
<value> <string>ts36831285.39</string> </value> <value> <string>ts37950954.73</string> </value>
</item> </item>
<item> <item>
<key> <string>_Modify_portal_content_Permission</string> </key> <key> <string>_Modify_portal_content_Permission</string> </key>
...@@ -83,7 +83,7 @@ ...@@ -83,7 +83,7 @@
</item> </item>
<item> <item>
<key> <string>content_md5</string> </key> <key> <string>content_md5</string> </key>
<value> <string>a21ec21eee7dba797e655095d0bd0dc6</string> </value> <value> <string>4d609cca5a42c9e95c281de46ae2049f</string> </value>
</item> </item>
<item> <item>
<key> <string>content_type</string> </key> <key> <string>content_type</string> </key>
......
...@@ -39,7 +39,7 @@ ...@@ -39,7 +39,7 @@
</item> </item>
<item> <item>
<key> <string>_EtagSupport__etag</string> </key> <key> <string>_EtagSupport__etag</string> </key>
<value> <string>ts36831306.03</string> </value> <value> <string>ts37950975.16</string> </value>
</item> </item>
<item> <item>
<key> <string>_Modify_portal_content_Permission</string> </key> <key> <string>_Modify_portal_content_Permission</string> </key>
...@@ -83,7 +83,7 @@ ...@@ -83,7 +83,7 @@
</item> </item>
<item> <item>
<key> <string>content_md5</string> </key> <key> <string>content_md5</string> </key>
<value> <string>f3229410316c9cf781e8cd07e412be3e</string> </value> <value> <string>bf241b0cfed1e71947dbb920796084f7</string> </value>
</item> </item>
<item> <item>
<key> <string>content_type</string> </key> <key> <string>content_type</string> </key>
......
...@@ -39,7 +39,7 @@ ...@@ -39,7 +39,7 @@
</item> </item>
<item> <item>
<key> <string>_EtagSupport__etag</string> </key> <key> <string>_EtagSupport__etag</string> </key>
<value> <string>ts36831327.15</string> </value> <value> <string>ts37950993.69</string> </value>
</item> </item>
<item> <item>
<key> <string>_Modify_portal_content_Permission</string> </key> <key> <string>_Modify_portal_content_Permission</string> </key>
...@@ -83,7 +83,7 @@ ...@@ -83,7 +83,7 @@
</item> </item>
<item> <item>
<key> <string>content_md5</string> </key> <key> <string>content_md5</string> </key>
<value> <string>f428db364c00bdb9e343f73e3f03a892</string> </value> <value> <string>aa66df6af2a67a876b3254003ca11f55</string> </value>
</item> </item>
<item> <item>
<key> <string>content_type</string> </key> <key> <string>content_type</string> </key>
......
...@@ -39,7 +39,7 @@ ...@@ -39,7 +39,7 @@
</item> </item>
<item> <item>
<key> <string>_EtagSupport__etag</string> </key> <key> <string>_EtagSupport__etag</string> </key>
<value> <string>ts36831415.1</string> </value> <value> <string>ts37951144.88</string> </value>
</item> </item>
<item> <item>
<key> <string>_Modify_portal_content_Permission</string> </key> <key> <string>_Modify_portal_content_Permission</string> </key>
...@@ -83,7 +83,7 @@ ...@@ -83,7 +83,7 @@
</item> </item>
<item> <item>
<key> <string>content_md5</string> </key> <key> <string>content_md5</string> </key>
<value> <string>8a00224bf348c801a68b1e34ce3a88cf</string> </value> <value> <string>c044f0bc599d83547b91b878f12643d6</string> </value>
</item> </item>
<item> <item>
<key> <string>content_type</string> </key> <key> <string>content_type</string> </key>
......
...@@ -39,7 +39,7 @@ ...@@ -39,7 +39,7 @@
</item> </item>
<item> <item>
<key> <string>_EtagSupport__etag</string> </key> <key> <string>_EtagSupport__etag</string> </key>
<value> <string>ts36831433.43</string> </value> <value> <string>ts37951160.16</string> </value>
</item> </item>
<item> <item>
<key> <string>_Modify_portal_content_Permission</string> </key> <key> <string>_Modify_portal_content_Permission</string> </key>
...@@ -83,7 +83,7 @@ ...@@ -83,7 +83,7 @@
</item> </item>
<item> <item>
<key> <string>content_md5</string> </key> <key> <string>content_md5</string> </key>
<value> <string>ca5350229660bc2cd6ccdb6a85c8562e</string> </value> <value> <string>2941d0ae9969d740a111ddcc62f688e4</string> </value>
</item> </item>
<item> <item>
<key> <string>content_type</string> </key> <key> <string>content_type</string> </key>
...@@ -125,7 +125,7 @@ ...@@ -125,7 +125,7 @@
</item> </item>
<item> <item>
<key> <string>size</string> </key> <key> <string>size</string> </key>
<value> <int>19857</int> </value> <value> <int>19887</int> </value>
</item> </item>
<item> <item>
<key> <string>title</string> </key> <key> <string>title</string> </key>
......
...@@ -39,7 +39,7 @@ ...@@ -39,7 +39,7 @@
</item> </item>
<item> <item>
<key> <string>_EtagSupport__etag</string> </key> <key> <string>_EtagSupport__etag</string> </key>
<value> <string>ts36831450.13</string> </value> <value> <string>ts37951174.41</string> </value>
</item> </item>
<item> <item>
<key> <string>_Modify_portal_content_Permission</string> </key> <key> <string>_Modify_portal_content_Permission</string> </key>
...@@ -83,7 +83,7 @@ ...@@ -83,7 +83,7 @@
</item> </item>
<item> <item>
<key> <string>content_md5</string> </key> <key> <string>content_md5</string> </key>
<value> <string>4146b9de9b4b8d8ff7e26238a41c6641</string> </value> <value> <string>d4c50e14d1064a40714e0a82b400e09a</string> </value>
</item> </item>
<item> <item>
<key> <string>content_type</string> </key> <key> <string>content_type</string> </key>
......
...@@ -39,7 +39,7 @@ ...@@ -39,7 +39,7 @@
</item> </item>
<item> <item>
<key> <string>_EtagSupport__etag</string> </key> <key> <string>_EtagSupport__etag</string> </key>
<value> <string>ts36831466.25</string> </value> <value> <string>ts37951208.4</string> </value>
</item> </item>
<item> <item>
<key> <string>_Modify_portal_content_Permission</string> </key> <key> <string>_Modify_portal_content_Permission</string> </key>
...@@ -83,7 +83,7 @@ ...@@ -83,7 +83,7 @@
</item> </item>
<item> <item>
<key> <string>content_md5</string> </key> <key> <string>content_md5</string> </key>
<value> <string>47b73e4605981025aee5af58454f4885</string> </value> <value> <string>f0c49148ba9244d1bbba411302b256aa</string> </value>
</item> </item>
<item> <item>
<key> <string>content_type</string> </key> <key> <string>content_type</string> </key>
...@@ -125,7 +125,7 @@ ...@@ -125,7 +125,7 @@
</item> </item>
<item> <item>
<key> <string>size</string> </key> <key> <string>size</string> </key>
<value> <int>24697</int> </value> <value> <int>24753</int> </value>
</item> </item>
<item> <item>
<key> <string>title</string> </key> <key> <string>title</string> </key>
......
...@@ -39,7 +39,7 @@ ...@@ -39,7 +39,7 @@
</item> </item>
<item> <item>
<key> <string>_EtagSupport__etag</string> </key> <key> <string>_EtagSupport__etag</string> </key>
<value> <string>ts36831650.44</string> </value> <value> <string>ts37951394.93</string> </value>
</item> </item>
<item> <item>
<key> <string>_Modify_portal_content_Permission</string> </key> <key> <string>_Modify_portal_content_Permission</string> </key>
...@@ -83,7 +83,7 @@ ...@@ -83,7 +83,7 @@
</item> </item>
<item> <item>
<key> <string>content_md5</string> </key> <key> <string>content_md5</string> </key>
<value> <string>c3ebe97d224414d74ab3afd70f065e7d</string> </value> <value> <string>4428e0301e3e21c695aa0576e55245e0</string> </value>
</item> </item>
<item> <item>
<key> <string>content_type</string> </key> <key> <string>content_type</string> </key>
...@@ -125,7 +125,7 @@ ...@@ -125,7 +125,7 @@
</item> </item>
<item> <item>
<key> <string>size</string> </key> <key> <string>size</string> </key>
<value> <int>12150</int> </value> <value> <int>12176</int> </value>
</item> </item>
<item> <item>
<key> <string>title</string> </key> <key> <string>title</string> </key>
......
...@@ -39,7 +39,7 @@ ...@@ -39,7 +39,7 @@
</item> </item>
<item> <item>
<key> <string>_EtagSupport__etag</string> </key> <key> <string>_EtagSupport__etag</string> </key>
<value> <string>ts36831676.64</string> </value> <value> <string>ts37951419.82</string> </value>
</item> </item>
<item> <item>
<key> <string>_Modify_portal_content_Permission</string> </key> <key> <string>_Modify_portal_content_Permission</string> </key>
...@@ -83,7 +83,7 @@ ...@@ -83,7 +83,7 @@
</item> </item>
<item> <item>
<key> <string>content_md5</string> </key> <key> <string>content_md5</string> </key>
<value> <string>5bd4c58cc31a686952f104e4c1ae6cf1</string> </value> <value> <string>fff5b9974a245dba62f09c6f27f641ae</string> </value>
</item> </item>
<item> <item>
<key> <string>content_type</string> </key> <key> <string>content_type</string> </key>
......
...@@ -39,7 +39,7 @@ ...@@ -39,7 +39,7 @@
</item> </item>
<item> <item>
<key> <string>_EtagSupport__etag</string> </key> <key> <string>_EtagSupport__etag</string> </key>
<value> <string>ts36831563.94</string> </value> <value> <string>ts37951312.42</string> </value>
</item> </item>
<item> <item>
<key> <string>_Modify_portal_content_Permission</string> </key> <key> <string>_Modify_portal_content_Permission</string> </key>
...@@ -83,7 +83,7 @@ ...@@ -83,7 +83,7 @@
</item> </item>
<item> <item>
<key> <string>content_md5</string> </key> <key> <string>content_md5</string> </key>
<value> <string>9998fd627ba1add5fded6a6ea9fdc65e</string> </value> <value> <string>b311e13aebe00e66ed9b90a475a615f5</string> </value>
</item> </item>
<item> <item>
<key> <string>content_type</string> </key> <key> <string>content_type</string> </key>
......
...@@ -39,7 +39,7 @@ ...@@ -39,7 +39,7 @@
</item> </item>
<item> <item>
<key> <string>_EtagSupport__etag</string> </key> <key> <string>_EtagSupport__etag</string> </key>
<value> <string>ts36831582.85</string> </value> <value> <string>ts37951333.1</string> </value>
</item> </item>
<item> <item>
<key> <string>_Modify_portal_content_Permission</string> </key> <key> <string>_Modify_portal_content_Permission</string> </key>
...@@ -83,7 +83,7 @@ ...@@ -83,7 +83,7 @@
</item> </item>
<item> <item>
<key> <string>content_md5</string> </key> <key> <string>content_md5</string> </key>
<value> <string>a2b84a60d5c12d1520846fbf9cb79ea7</string> </value> <value> <string>af0fd8bc81a94b859f20af8e413d7a70</string> </value>
</item> </item>
<item> <item>
<key> <string>content_type</string> </key> <key> <string>content_type</string> </key>
......
...@@ -39,7 +39,7 @@ ...@@ -39,7 +39,7 @@
</item> </item>
<item> <item>
<key> <string>_EtagSupport__etag</string> </key> <key> <string>_EtagSupport__etag</string> </key>
<value> <string>ts36830746.23</string> </value> <value> <string>ts37950506.8</string> </value>
</item> </item>
<item> <item>
<key> <string>_Modify_portal_content_Permission</string> </key> <key> <string>_Modify_portal_content_Permission</string> </key>
...@@ -83,7 +83,7 @@ ...@@ -83,7 +83,7 @@
</item> </item>
<item> <item>
<key> <string>content_md5</string> </key> <key> <string>content_md5</string> </key>
<value> <string>1347a0ac51a4ccba25cdc2ac1b9ec10e</string> </value> <value> <string>5f25cd0f43a49e15e603c5762696c120</string> </value>
</item> </item>
<item> <item>
<key> <string>content_type</string> </key> <key> <string>content_type</string> </key>
......
...@@ -39,7 +39,7 @@ ...@@ -39,7 +39,7 @@
</item> </item>
<item> <item>
<key> <string>_EtagSupport__etag</string> </key> <key> <string>_EtagSupport__etag</string> </key>
<value> <string>ts36830811.1</string> </value> <value> <string>ts37950562.66</string> </value>
</item> </item>
<item> <item>
<key> <string>_Modify_portal_content_Permission</string> </key> <key> <string>_Modify_portal_content_Permission</string> </key>
...@@ -83,7 +83,7 @@ ...@@ -83,7 +83,7 @@
</item> </item>
<item> <item>
<key> <string>content_md5</string> </key> <key> <string>content_md5</string> </key>
<value> <string>0f812c098ecdab01bfc987059e4004c8</string> </value> <value> <string>d486cf9d9b2e51371e2c43abd54d465a</string> </value>
</item> </item>
<item> <item>
<key> <string>content_type</string> </key> <key> <string>content_type</string> </key>
......
...@@ -39,7 +39,7 @@ ...@@ -39,7 +39,7 @@
</item> </item>
<item> <item>
<key> <string>_EtagSupport__etag</string> </key> <key> <string>_EtagSupport__etag</string> </key>
<value> <string>ts36830842.07</string> </value> <value> <string>ts37950594.73</string> </value>
</item> </item>
<item> <item>
<key> <string>_Modify_portal_content_Permission</string> </key> <key> <string>_Modify_portal_content_Permission</string> </key>
...@@ -83,7 +83,7 @@ ...@@ -83,7 +83,7 @@
</item> </item>
<item> <item>
<key> <string>content_md5</string> </key> <key> <string>content_md5</string> </key>
<value> <string>760600ccb9366e7f4a4b35d10fcb09e9</string> </value> <value> <string>94dea255972bf4c598e5a7720c1cd89a</string> </value>
</item> </item>
<item> <item>
<key> <string>content_type</string> </key> <key> <string>content_type</string> </key>
......
...@@ -39,7 +39,7 @@ ...@@ -39,7 +39,7 @@
</item> </item>
<item> <item>
<key> <string>_EtagSupport__etag</string> </key> <key> <string>_EtagSupport__etag</string> </key>
<value> <string>ts36830779.5</string> </value> <value> <string>ts37950535.94</string> </value>
</item> </item>
<item> <item>
<key> <string>_Modify_portal_content_Permission</string> </key> <key> <string>_Modify_portal_content_Permission</string> </key>
...@@ -83,7 +83,7 @@ ...@@ -83,7 +83,7 @@
</item> </item>
<item> <item>
<key> <string>content_md5</string> </key> <key> <string>content_md5</string> </key>
<value> <string>99655de2a23499c325e02c5e1f139f83</string> </value> <value> <string>6944a887889bc89a79f81e78f80cdbf7</string> </value>
</item> </item>
<item> <item>
<key> <string>content_type</string> </key> <key> <string>content_type</string> </key>
......
...@@ -39,7 +39,7 @@ ...@@ -39,7 +39,7 @@
</item> </item>
<item> <item>
<key> <string>_EtagSupport__etag</string> </key> <key> <string>_EtagSupport__etag</string> </key>
<value> <string>ts36830873.95</string> </value> <value> <string>ts37950625.11</string> </value>
</item> </item>
<item> <item>
<key> <string>_Modify_portal_content_Permission</string> </key> <key> <string>_Modify_portal_content_Permission</string> </key>
...@@ -83,7 +83,7 @@ ...@@ -83,7 +83,7 @@
</item> </item>
<item> <item>
<key> <string>content_md5</string> </key> <key> <string>content_md5</string> </key>
<value> <string>78b18dfe4630d1460833c1ba7678f8e3</string> </value> <value> <string>57d8e62e74b969d47c0f86545d727a3d</string> </value>
</item> </item>
<item> <item>
<key> <string>content_type</string> </key> <key> <string>content_type</string> </key>
...@@ -125,7 +125,7 @@ ...@@ -125,7 +125,7 @@
</item> </item>
<item> <item>
<key> <string>size</string> </key> <key> <string>size</string> </key>
<value> <int>381275</int> </value> <value> <int>680293</int> </value>
</item> </item>
<item> <item>
<key> <string>title</string> </key> <key> <string>title</string> </key>
......
...@@ -79,7 +79,7 @@ ...@@ -79,7 +79,7 @@
</item> </item>
<item> <item>
<key> <string>content_md5</string> </key> <key> <string>content_md5</string> </key>
<value> <string>1fa4ce97d8ab6401164a4f774cdad85f</string> </value> <value> <string>a5a69b7067fad35fe505e713a39926b3</string> </value>
</item> </item>
<item> <item>
<key> <string>content_type</string> </key> <key> <string>content_type</string> </key>
......
...@@ -79,7 +79,7 @@ ...@@ -79,7 +79,7 @@
</item> </item>
<item> <item>
<key> <string>content_md5</string> </key> <key> <string>content_md5</string> </key>
<value> <string>8f96654e4aac086390251c0959a5d23b</string> </value> <value> <string>c6bef2ea51fccf25726a99d95bb775f6</string> </value>
</item> </item>
<item> <item>
<key> <string>content_type</string> </key> <key> <string>content_type</string> </key>
......
...@@ -79,7 +79,7 @@ ...@@ -79,7 +79,7 @@
</item> </item>
<item> <item>
<key> <string>content_md5</string> </key> <key> <string>content_md5</string> </key>
<value> <string>843faf512ca711b1ebd3339fa6581610</string> </value> <value> <string>d9d6b3fcc977c59003b7c3ff45b712dc</string> </value>
</item> </item>
<item> <item>
<key> <string>content_type</string> </key> <key> <string>content_type</string> </key>
......
...@@ -79,7 +79,7 @@ ...@@ -79,7 +79,7 @@
</item> </item>
<item> <item>
<key> <string>content_md5</string> </key> <key> <string>content_md5</string> </key>
<value> <string>4a92af525f76b275d4d73a8ead62d4f0</string> </value> <value> <string>7a44a54d7983374d6d78fa236086f3f9</string> </value>
</item> </item>
<item> <item>
<key> <string>content_type</string> </key> <key> <string>content_type</string> </key>
......
...@@ -79,7 +79,7 @@ ...@@ -79,7 +79,7 @@
</item> </item>
<item> <item>
<key> <string>content_md5</string> </key> <key> <string>content_md5</string> </key>
<value> <string>a985de3495772d1be866c2cea93d9fcb</string> </value> <value> <string>712b3838ab7cff82801b12e9d2320798</string> </value>
</item> </item>
<item> <item>
<key> <string>content_type</string> </key> <key> <string>content_type</string> </key>
......
...@@ -79,7 +79,7 @@ ...@@ -79,7 +79,7 @@
</item> </item>
<item> <item>
<key> <string>content_md5</string> </key> <key> <string>content_md5</string> </key>
<value> <string>2243af0bfbcbbdc87d2888999e7e9658</string> </value> <value> <string>0e800001641ac82a9a5fd63baab1dc2d</string> </value>
</item> </item>
<item> <item>
<key> <string>content_type</string> </key> <key> <string>content_type</string> </key>
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment