Commit 8473e65c authored by Jérome Perrin's avatar Jérome Perrin

crm: use searchAndActivate to "inline" Ticket_updateRelatedEventLocalRole in workflow script

This will be one less proxy role script
parent 1ebe4ce2
portal = context.getPortalObject()
event_portal_type_list = portal.getPortalEventTypeList()
for i in portal.portal_catalog(portal_type=event_portal_type_list,
follow_up_uid=context.getUid()):
i.activate().updateLocalRolesOnSecurityGroups()
<?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>_proxy_roles</string> </key>
<value>
<tuple>
<string>Manager</string>
</tuple>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>Ticket_updateRelatedEventLocalRole</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
object = state_change['object'] """Update local roles on ticket and all events related to the ticket.
object.updateLocalRolesOnSecurityGroups() """
object.activate(group_method_id=None).Ticket_updateRelatedEventLocalRole() support_request = state_change['object']
portal = support_request.getPortalObject()
support_request.updateLocalRolesOnSecurityGroups()
portal.portal_catalog.activate(activity='SQLQueue').searchAndActivate(
portal_type=portal.getPortalEventTypeList(),
follow_up_uid=support_request.getUid(),
method_id='updateLocalRolesOnSecurityGroups')
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