[Erp5-report] r22036 - in /experimental/bt5/erp5_forge_experimental: ExtensionTemplateItem/...

nobody at svn.erp5.org nobody at svn.erp5.org
Fri Jun 27 15:48:18 CEST 2008


Author: luke
Date: Fri Jun 27 15:48:17 2008
New Revision: 22036

URL: http://svn.erp5.org?rev=22036&view=rev
Log:
- hack, which allow to generate proposed url for worklist

Added:
    experimental/bt5/erp5_forge_experimental/SkinTemplateItem/portal_skins/erp5_forge_experimental/Worklist_asDict.xml
    experimental/bt5/erp5_forge_experimental/SkinTemplateItem/portal_skins/erp5_forge_experimental/Worklist_getFormattedUrl.xml
Modified:
    experimental/bt5/erp5_forge_experimental/ExtensionTemplateItem/ForgeExperimentalTools.py
    experimental/bt5/erp5_forge_experimental/bt/revision

Modified: experimental/bt5/erp5_forge_experimental/ExtensionTemplateItem/ForgeExperimentalTools.py
URL: http://svn.erp5.org/experimental/bt5/erp5_forge_experimental/ExtensionTemplateItem/ForgeExperimentalTools.py?rev=22036&r1=22035&r2=22036&view=diff
==============================================================================
--- experimental/bt5/erp5_forge_experimental/ExtensionTemplateItem/ForgeExperimentalTools.py (original)
+++ experimental/bt5/erp5_forge_experimental/ExtensionTemplateItem/ForgeExperimentalTools.py Fri Jun 27 15:48:17 2008
@@ -88,3 +88,19 @@
   """Fetches method list, which provide configuration of ERP5 Site"""
   from Products.ERP5.ERP5Site import ERP5Site
   return [method_id for method_id in ERP5Site.__dict__ if re.match('^get.*[a-zA-Z]$',method_id)]
+
+def getWorklistParameterDict(worklist):
+  """Returns dict of worklist parameters"""
+  return_dict = {}
+
+  if worklist.meta_type != 'Worklist':
+    return return_dict
+
+  return_dict['portal_type_list'] = worklist.var_matches.get('portal_type',())
+  return_dict['simulation_state_list'] = worklist.var_matches.get('simulation_state',())
+  return_dict['permission_list'] = worklist.guard.permissions
+  return_dict['role_list'] = worklist.guard.roles
+  return_dict['group_list'] = worklist.guard.groups
+  return_dict['expression'] = worklist.guard.expr
+  
+  return return_dict

Added: experimental/bt5/erp5_forge_experimental/SkinTemplateItem/portal_skins/erp5_forge_experimental/Worklist_asDict.xml
URL: http://svn.erp5.org/experimental/bt5/erp5_forge_experimental/SkinTemplateItem/portal_skins/erp5_forge_experimental/Worklist_asDict.xml?rev=22036&view=auto
==============================================================================
--- experimental/bt5/erp5_forge_experimental/SkinTemplateItem/portal_skins/erp5_forge_experimental/Worklist_asDict.xml (added)
+++ experimental/bt5/erp5_forge_experimental/SkinTemplateItem/portal_skins/erp5_forge_experimental/Worklist_asDict.xml Fri Jun 27 15:48:17 2008
@@ -1,0 +1,37 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <tuple>
+        <global name="ExternalMethod" module="Products.ExternalMethod.ExternalMethod"/>
+        <tuple/>
+      </tuple>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>__ac_local_roles__</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>_function</string> </key>
+            <value> <string>getWorklistParameterDict</string> </value>
+        </item>
+        <item>
+            <key> <string>_module</string> </key>
+            <value> <string>ForgeExperimentalTools</string> </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>Worklist_asDict</string> </value>
+        </item>
+        <item>
+            <key> <string>title</string> </key>
+            <value> <string></string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>

Added: experimental/bt5/erp5_forge_experimental/SkinTemplateItem/portal_skins/erp5_forge_experimental/Worklist_getFormattedUrl.xml
URL: http://svn.erp5.org/experimental/bt5/erp5_forge_experimental/SkinTemplateItem/portal_skins/erp5_forge_experimental/Worklist_getFormattedUrl.xml?rev=22036&view=auto
==============================================================================
--- experimental/bt5/erp5_forge_experimental/SkinTemplateItem/portal_skins/erp5_forge_experimental/Worklist_getFormattedUrl.xml (added)
+++ experimental/bt5/erp5_forge_experimental/SkinTemplateItem/portal_skins/erp5_forge_experimental/Worklist_getFormattedUrl.xml Fri Jun 27 15:48:17 2008
@@ -1,0 +1,179 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <tuple>
+        <global name="PythonScript" module="Products.PythonScripts.PythonScript"/>
+        <tuple/>
+      </tuple>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>Python_magic</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>Script_magic</string> </key>
+            <value> <int>3</int> </value>
+        </item>
+        <item>
+            <key> <string>__ac_local_roles__</string> </key>
+            <value>
+              <none/>
+            </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>_body</string> </key>
+            <value> <string encoding="cdata"><![CDATA[
+
+"""Returns proposal of formatted url for worklist based on worklist definition\n
+\n
+Usage:\n
+ your_worklist/Worklist_getFormattedUrl\n
+TODO:\n
+ * check needed cases:\n
+   * groups\n
+   * permissions\n
+   * expression?\n
+ * do it as button using monkeypatching of worklist definition mechanis\n
+"""\n
+worklist_dict = context.Worklist_asDict(context)\n
+\n
+assert(1,len(worklist_dict[\'simulation_state_list\']))\n
+assert(1,len(worklist_dict[\'portal_type_list\']))\n
+\n
+simulation_state = worklist_dict[\'simulation_state_list\'][0]\n
+portal_type = worklist_dict[\'portal_type_list\'][0]\n
+\n
+url_list = []\n
+url_list.append(\'simulation_state=%s\'%(simulation_state,) )\n
+url_list.append(\'portal_type=%s\'%(portal_type.replace(\' \',\'+\') ))\n
+for role in worklist_dict[\'role_list\']:\n
+  url_list.append(\'local_roles:list=%s\'%(role,))\n
+\n
+url_list.append(\'reset=1\') # it is used quite often\n
+return \'&\'.join(url_list)\n
+
+
+]]></string> </value>
+        </item>
+        <item>
+            <key> <string>_code</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>_filepath</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>_params</string> </key>
+            <value> <string></string> </value>
+        </item>
+        <item>
+            <key> <string>errors</string> </key>
+            <value>
+              <tuple/>
+            </value>
+        </item>
+        <item>
+            <key> <string>func_code</string> </key>
+            <value>
+              <object>
+                <klass>
+                  <global name="FuncCode" module="Shared.DC.Scripts.Signature"/>
+                </klass>
+                <tuple/>
+                <state>
+                  <dictionary>
+                    <item>
+                        <key> <string>co_argcount</string> </key>
+                        <value> <int>0</int> </value>
+                    </item>
+                    <item>
+                        <key> <string>co_varnames</string> </key>
+                        <value>
+                          <tuple>
+                            <string>_getattr_</string>
+                            <string>context</string>
+                            <string>worklist_dict</string>
+                            <string>len</string>
+                            <string>_getitem_</string>
+                            <string>AssertionError</string>
+                            <string>simulation_state</string>
+                            <string>portal_type</string>
+                            <string>url_list</string>
+                            <string>_getiter_</string>
+                            <string>role</string>
+                          </tuple>
+                        </value>
+                    </item>
+                  </dictionary>
+                </state>
+              </object>
+            </value>
+        </item>
+        <item>
+            <key> <string>func_defaults</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>Worklist_getFormattedUrl</string> </value>
+        </item>
+        <item>
+            <key> <string>warnings</string> </key>
+            <value>
+              <tuple/>
+            </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>

Modified: experimental/bt5/erp5_forge_experimental/bt/revision
URL: http://svn.erp5.org/experimental/bt5/erp5_forge_experimental/bt/revision?rev=22036&r1=22035&r2=22036&view=diff
==============================================================================
--- experimental/bt5/erp5_forge_experimental/bt/revision (original)
+++ experimental/bt5/erp5_forge_experimental/bt/revision Fri Jun 27 15:48:17 2008
@@ -1,1 +1,1 @@
-45
+46




More information about the Erp5-report mailing list