Commit bbd6d465 authored by Romain Courteaud's avatar Romain Courteaud

[HARDCODED] [romain_dev] wip tools

parent 2ca797bc
def getObjectByOid(self, oid):#XXXYYY
ob = self._p_jar[oid]
#return ob
result = [ob.__class__,]
n = 1
for k,v in ob.iteritems():
result.append((k, k.__class__,v, v.__class__))
n += 1
if n > 100:
break
return result
\ No newline at end of file
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Extension Component" module="erp5.portal_type"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_recorded_property_dict</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
</value>
</item>
<item>
<key> <string>default_reference</string> </key>
<value> <string>test_kaz</string> </value>
</item>
<item>
<key> <string>description</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>extension.erp5.test_kaz</string> </value>
</item>
<item>
<key> <string>portal_type</string> </key>
<value> <string>Extension Component</string> </value>
</item>
<item>
<key> <string>sid</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>text_content_error_message</string> </key>
<value>
<tuple/>
</value>
</item>
<item>
<key> <string>text_content_warning_message</string> </key>
<value>
<tuple/>
</value>
</item>
<item>
<key> <string>version</string> </key>
<value> <string>erp5</string> </value>
</item>
<item>
<key> <string>workflow_history</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAM=</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/>
</value>
</item>
</dictionary>
</pickle>
</record>
<record id="3" aka="AAAAAAAAAAM=">
<pickle>
<global name="PersistentMapping" module="Persistence.mapping"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>data</string> </key>
<value>
<dictionary>
<item>
<key> <string>component_validation_workflow</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAQ=</string> </persistent>
</value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</pickle>
</record>
<record id="4" aka="AAAAAAAAAAQ=">
<pickle>
<global name="WorkflowHistoryList" module="Products.ERP5Type.Workflow"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_log</string> </key>
<value>
<list>
<dictionary>
<item>
<key> <string>action</string> </key>
<value> <string>validate</string> </value>
</item>
<item>
<key> <string>validation_state</string> </key>
<value> <string>validated</string> </value>
</item>
</dictionary>
</list>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
def testrc(self):
result = ''
portal = self.getPortalObject()
selection = portal.portal_selections.getSelectionFor('person_module_selection')
key_list = selection.__dict__.keys()
key_list.sort()
for key in key_list:
result += '%s: %s\n' % (key, selection.__dict__[key])
return result
return str(selection.__dict__)
print selection.checked_uids
print selection.domain_path
print selection.domain_list
if selection.domain is not None:
print selection.domain.asDomainDict()
return printed
return 'couscous'
\ No newline at end of file
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Extension Component" module="erp5.portal_type"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_recorded_property_dict</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
</value>
</item>
<item>
<key> <string>default_reference</string> </key>
<value> <string>testrc</string> </value>
</item>
<item>
<key> <string>description</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>extension.erp5.testrc</string> </value>
</item>
<item>
<key> <string>portal_type</string> </key>
<value> <string>Extension Component</string> </value>
</item>
<item>
<key> <string>sid</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>text_content_error_message</string> </key>
<value>
<tuple/>
</value>
</item>
<item>
<key> <string>text_content_warning_message</string> </key>
<value>
<tuple/>
</value>
</item>
<item>
<key> <string>version</string> </key>
<value> <string>erp5</string> </value>
</item>
<item>
<key> <string>workflow_history</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAM=</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/>
</value>
</item>
</dictionary>
</pickle>
</record>
<record id="3" aka="AAAAAAAAAAM=">
<pickle>
<global name="PersistentMapping" module="Persistence.mapping"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>data</string> </key>
<value>
<dictionary>
<item>
<key> <string>component_validation_workflow</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAQ=</string> </persistent>
</value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</pickle>
</record>
<record id="4" aka="AAAAAAAAAAQ=">
<pickle>
<global name="WorkflowHistoryList" module="Products.ERP5Type.Workflow"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_log</string> </key>
<value>
<list>
<dictionary>
<item>
<key> <string>action</string> </key>
<value> <string>validate</string> </value>
</item>
<item>
<key> <string>validation_state</string> </key>
<value> <string>validated</string> </value>
</item>
</dictionary>
</list>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Folder" module="OFS.Folder"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_local_properties</string> </key>
<value>
<tuple>
<dictionary>
<item>
<key> <string>id</string> </key>
<value> <string>business_template_skin_layer_priority</string> </value>
</item>
<item>
<key> <string>type</string> </key>
<value> <string>float</string> </value>
</item>
</dictionary>
</tuple>
</value>
</item>
<item>
<key> <string>_objects</string> </key>
<value>
<tuple/>
</value>
</item>
<item>
<key> <string>business_template_skin_layer_priority</string> </key>
<value> <float>51.0</float> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>romain_dev</string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
bt5_update_catalog_list = ('erp5_ingestion_mysql_innodb_catalog', 'erp5_full_text_mroonga_catalog')
bt5_installation_list = bt5_update_catalog_list + ('erp5_xhtml_style',
# 'erp5_officejs', 'erp5_web_jabber_client',
# 'erp5_officejs_ooffice',
'erp5_upgrader',
'erp5_hal_json_style',
'erp5_ods_style',
'erp5_odt_style',
'erp5_deferred_style',
# 'erp5_officejs_ui_test',
'erp5_crm_renderjs_ui_test',
'erp5_trade_renderjs_ui_test',
'erp5_web_renderjs_ui_test',
'erp5_pdm_renderjs_ui_test',
'erp5_accounting_renderjs_ui_test',
'erp5_item_renderjs_ui_test',
# 'erp5_officejs_ui_test',
'erp5_officejs_support_request_ui_test',
# 'erp5_calendar',
# 'erp5_crm',
# 'erp5_mrp',
'erp5_project',
'erp5_bank_reconciliation',
# test dependencies
# 'erp5_configurator_standard_trade_template',
# 'erp5_simulation_test',
# 'erp5_accounting',
# 'erp5_monaco_editor_ui_test',
# 'erp5_gadget_interface_validator_ui_test',
'erp5_forge',
# 'erp5_web_jabber_client',
'erp5_web_ui_test',
'erp5_officejs_afs_directory_ui_test',
'erp5_accounting_ui_test',
'erp5_dms_ui_test',
# 'erp5_travel_expense', 'erp5_travel_expense_ui_test',
# 'officejs_olapy_demo', 'erp5_officejs_connector'
# 'erp5_discussion'
'erp5_hr',
'erp5_item',
'erp5_mrp',
'erp5_payroll',
'erp5_authentication_policy',
'erp5_l10n_fr',
'erp5_mrp_item',
'erp5_discount_resource',
'erp5_administration',
)
return bt5_installation_list, []
<?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>Base_getUpgradeBusinessTemplateList</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
can_delete = False
document_id = context.getId()
try:
can_delete = (document_id == str(int(document_id)))
except:
pass
if can_delete:
context.getParentValue().manage_delObjects(ids=[document_id])
return 'deleted'
return 'not deleted'
<?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>Couscous_deleteIfExpectedId</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
portal = portal = context.getPortalObject()
module_business_application_map = {'base': ('currency_module',
'organisation_module',
'person_module',),
'accounting': ('accounting_module',
'account_module',),
'forge': ('bug_module', 'glossary_module', 'test_result_module', 'test_suite_module'),
'dev': ('foo_module', 'bar_module', 'foo_bar_module'),
'project': ('project_module', 'task_module', 'task_report_module'),
'crm': ('campaign_module',
'event_module',
'meeting_module',
'sale_opportunity_module',
'support_request_module',),
'dms': ('document_module',
'image_module',
'document_ingestion_module',
'web_page_module',),
'trade': ('internal_packing_list_module',
'inventory_module',
'purchase_order_module',
'purchase_packing_list_module',
'purchase_trade_condition_module',
'returned_sale_packing_list_module',
'sale_order_module',
'sale_packing_list_module',
'sale_trade_condition_module'),
'pdm': ('component_module',
'product_module',
'purchase_supply_module',
'sale_supply_module',
'service_module',
'transformation_module',),
}
for business_application_category_id, module_ids in module_business_application_map.items():
for module_id in module_ids:
module = getattr(portal, module_id, None)
if module is not None:
module.edit(business_application = business_application_category_id)
return 'ok'
<?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>ERP5Site_setupModuleList</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
portal = context.getPortalObject()
selection = portal.portal_selections.getSelectionFor('person_module_selection')
print selection.checked_uids
print selection.domain_path
print selection.domain_list
if selection.domain is not None:
print selection.domain.asDomainDict()
return printed
for _, obj in portal.portal_skins.ZopeFind(portal.portal_skins.erp5_core, obj_metatypes=('ERP5 Form',), search_sub=1):
if (obj.pt == 'form_view') and (obj.action == '') and ('FieldLibrary' not in obj.id):
print obj.id
return printed
return
portal_object = portal = context.getPortalObject()
module = portal.person_module
i = counter
while i <= min(counter + 100, 80000):
# module.newContent(portal_type='Person', title='test %i' % i)
i += 1
if i != counter:
module.activate(activity='SQLQueue', priority=5).testromain(i)
return 'couscous'
raise NotImplementedError('nutnut')
return '%s\n' % context.absolute_url()
from base64 import urlsafe_b64encode, urlsafe_b64decode
return 'data:text/css;base64,%s' % urlsafe_b64encode('couscous');
kw = {
# 'select_dict': {'count': 'select 1;drop table catalog;', 'portal_type': None},
'select_dict': {'count': 'count(*)', 'portal_type': None},
# 'select_list': ['count(*)', 'portal_type'],
# 'select_list': ['portal_type'],
'limit': None,
'group_by': ["portal_type"],
# 'sort_on': [('portal_type', 'ASC')]
}
print context.portal_catalog(src__=1, **kw)
"""
for x in context.portal_catalog(**kw):
print x.portal_type, x['count']
"""
print '---'
return printed
cp = context.manage_copyObjects(uids=uids)
context.manage_pasteObjects(cb_copy_data=cp)
return "couscous"
"""
result_list = context.portal_catalog.countResults(select_dict={'date': 'DATE_FORMAT(creation_date, "%s")' % sql_format, 'portal_type': None},
portal_type=portal_type_list,limit=None,
owner=reference,
group_by=['DATE_FORMAT(creation_date, "%s")' % sql_format, 'portal_type'],
**count_kw)
"""
<?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>copy_of_testromain</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
domain_list = [] # [<Temporary Domain at /erp5/portal_domains/my_module_domain/sub_domain>, ...]
##### Get parents' criterions ######
parents_criterion_dict = {} # {"portal_type": {"identity": ["Task Report"]}), ...}
parents_membership_criterion_category_set = set() # ["follow_up/project_module/xxx", ...]
sub_parent = parent
while depth > 0:
for criterion in sub_parent.getCriterionList():
property_id = criterion.property
if property_id not in parents_criterion_dict:
parents_criterion_dict[property_id] = {"min": criterion.min, "max": criterion.max, "identity": criterion.identity}
sub_parent_membership_criterion_category_list = sub_parent.getMembershipCriterionCategoryList()
# sub_parent.getMultimembershipCriterionBaseCategoryList() seems to return empty list...
parents_membership_criterion_category_set.update(sub_parent_membership_criterion_category_list)
depth -= 1
sub_parent = sub_parent.getParentValue()
##### Define domain_list.append helper #####
def appendNewTempDomain(id, criterion_dict=None, membership_criterion_category_list=None, **kw):
if criterion_dict is None:
criterion_dict = parents_criterion_dict
else:
criterion_dict.update(parents_criterion_dict)
if membership_criterion_category_list is None:
membership_criterion_category_list = list(parents_membership_criterion_category_set)
else:
membership_criterion_category_list = list(parents_membership_criterion_category_set.union(membership_criterion_category_list))
multimembership_criterion_base_category_list = list(set([c[:c.index("/")] for c in membership_criterion_category_list]))
domain = parent.generateTempDomain(id=id)
domain.edit(
criterion_property_list=criterion_dict.keys(),
multimembership_criterion_base_category_list=multimembership_criterion_base_category_list,
membership_criterion_category_list=membership_criterion_category_list,
domain_generator_method_id=script.id,
**kw
)
for property_id, criterion_kw in criterion_dict.items():
domain.setCriterion(property_id, **criterion_kw)
domain_list.append(domain)
##### Provide sub domains #####
# Don't define domain that provides criterions already used by parents
if "delivery.start_date" not in parents_criterion_dict:
now = DateTime()
for time_frame in (1, 7, 30, 365):
appendNewTempDomain(
id="sub_time_frame_{}".format(time_frame),
title="Last {} days".format(time_frame),
criterion_dict={"delivery.start_date": {"min": now - time_frame}},
)
person = context.getPortalObject().portal_membership.getAuthenticatedMember().getUserValue()
if person is not None:
category_relative_url = "source/" + person.getRelativeUrl()
if category_relative_url not in parents_membership_criterion_category_set:
appendNewTempDomain(
id="sub_assigned_to_me_1",
title="Assigned to me",
membership_criterion_category_list=(category_relative_url,),
)
return domain_list
<?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>parent, depth</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>generateTristanDomain</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="ExternalMethod" module="Products.ExternalMethod.ExternalMethod"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_function</string> </key>
<value> <string>getObjectByOid</string> </value>
</item>
<item>
<key> <string>_module</string> </key>
<value> <string>test_kaz</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>getObjectByOid</string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
# you can pass oid like "?oid=0x123456"
if oid.startswith('0x'):
oid = ('\x00'*8 + oid[2:].decode('hex'))[-8:]
ob = context.getObjectByOid(oid)
print repr(ob)[:10*1024]
return printed
<?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>oid</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>printObjectByOid</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="ExternalMethod" module="Products.ExternalMethod.ExternalMethod"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_function</string> </key>
<value> <string>testrc</string> </value>
</item>
<item>
<key> <string>_module</string> </key>
<value> <string>testrc</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>testrc</string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string>testrc</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?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>testromain</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
erp5_web_renderjs_ui
erp5_upgrader
\ No newline at end of file
extension.erp5.test_kaz
extension.erp5.testrc
\ No newline at end of file
1
\ No newline at end of file
image_module/romain_wallpaper_*
\ No newline at end of file
image_module/romain_wallpaper_*
\ No newline at end of file
image_module/romain_wallpaper_*
\ No newline at end of file
romain_dev
\ No newline at end of file
romain_dev
\ No newline at end of file
0.1
\ No newline at end of file
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