[Erp5-report] r39352 kazuhiko - in /erp5/trunk/bt5/erp5_forge: SkinTemplateItem/portal_skin...

nobody at svn.erp5.org nobody at svn.erp5.org
Tue Oct 19 16:57:12 CEST 2010


Author: kazuhiko
Date: Tue Oct 19 16:57:12 2010
New Revision: 39352

URL: http://svn.erp5.org?rev=39352&view=rev
Log:
2010-10-19 Kazuhiko
* When checking duplicated selection names, we should use get_recursive_orig_value('selection_name') instead of getRecursiveTemplateField().get_value('selection_name'), because delegation for selection_name can end at any intermediate proxy field.

Modified:
    erp5/trunk/bt5/erp5_forge/SkinTemplateItem/portal_skins/erp5_toolbox/SkinsTool_getDuplicateSelectionNameDict.xml
    erp5/trunk/bt5/erp5_forge/bt/change_log
    erp5/trunk/bt5/erp5_forge/bt/revision

Modified: erp5/trunk/bt5/erp5_forge/SkinTemplateItem/portal_skins/erp5_toolbox/SkinsTool_getDuplicateSelectionNameDict.xml
URL: http://svn.erp5.org/erp5/trunk/bt5/erp5_forge/SkinTemplateItem/portal_skins/erp5_toolbox/SkinsTool_getDuplicateSelectionNameDict.xml?rev=39352&r1=39351&r2=39352&view=diff
==============================================================================
--- erp5/trunk/bt5/erp5_forge/SkinTemplateItem/portal_skins/erp5_toolbox/SkinsTool_getDuplicateSelectionNameDict.xml [utf8] (original)
+++ erp5/trunk/bt5/erp5_forge/SkinTemplateItem/portal_skins/erp5_toolbox/SkinsTool_getDuplicateSelectionNameDict.xml [utf8] Tue Oct 19 16:57:12 2010
@@ -64,25 +64,26 @@ ok_to_share_selection_form_list = [\'Res
 for field_path, field in skins_tool.ZopeFind(\n
          skins_tool, obj_metatypes=[\'ProxyField\', \'ListBox\'], search_sub=1):\n
   form = field.aq_parent\n
-  if field.meta_type == \'ProxyField\':\n
-    original_field = field.getRecursiveTemplateField()\n
-    if original_field is not None and \\\n
-       (original_field.meta_type != \'ListBox\' \\\n
-        or field.is_delegated(\'selection_name\')\n
-        or original_field.get_tales(\'selection_name\')!=\'\'):\n
-      continue\n
-  elif field.meta_type == \'ListBox\':\n
-    if field.get_tales(\'selection_name\')!=\'\':\n
-      continue\n
   # in some rare cases sharing a selection can be done intentional so avoid them\n
   if form.getId() in ok_to_share_selection_form_list:\n
     continue\n
   # if the form looks like a field library, we don\'t care, because it is not used directly.\n
   if form.getId().endswith(\'FieldLibrary\'):\n
     continue\n
+  if field.meta_type == \'ProxyField\':\n
+    try:\n
+      if field.get_recursive_tales(\'selection_name\') != \'\':\n
+        continue\n
+      selection_name = field.get_recursive_orig_value(\'selection_name\')\n
+    except KeyError:\n
+      continue\n
+  elif field.meta_type == \'ListBox\':\n
+    if field.get_tales(\'selection_name\')!=\'\':\n
+      continue\n
+    selection_name = field.get_orig_value(\'selection_name\')\n
 \n
   selection_name_dict.setdefault(\n
-         field.get_value(\'selection_name\'), []).append(field_path)\n
+         selection_name, []).append(field_path)\n
 \n
 # leave only duplicating ones\n
 duplicating_selection_name_dict = {}\n
@@ -138,10 +139,9 @@ return duplicating_selection_name_dict\n
                             <string>field_path</string>
                             <string>field</string>
                             <string>form</string>
-                            <string>original_field</string>
-                            <string>None</string>
-                            <string>duplicating_selection_name_dict</string>
                             <string>selection_name</string>
+                            <string>KeyError</string>
+                            <string>duplicating_selection_name_dict</string>
                             <string>field_list</string>
                             <string>len</string>
                             <string>_write_</string>

Modified: erp5/trunk/bt5/erp5_forge/bt/change_log
URL: http://svn.erp5.org/erp5/trunk/bt5/erp5_forge/bt/change_log?rev=39352&r1=39351&r2=39352&view=diff
==============================================================================
--- erp5/trunk/bt5/erp5_forge/bt/change_log [utf8] (original)
+++ erp5/trunk/bt5/erp5_forge/bt/change_log [utf8] Tue Oct 19 16:57:12 2010
@@ -1,3 +1,6 @@
+2010-10-19 Kazuhiko
+* When checking duplicated selection names, we should use get_recursive_orig_value('selection_name') instead of getRecursiveTemplateField().get_value('selection_name'), because delegation for selection_name can end at any intermediate proxy field.
+
 2010-10-19 yo
 * When checking duplicated selection names, skip field libraries, as they don't matter.
 

Modified: erp5/trunk/bt5/erp5_forge/bt/revision
URL: http://svn.erp5.org/erp5/trunk/bt5/erp5_forge/bt/revision?rev=39352&r1=39351&r2=39352&view=diff
==============================================================================
--- erp5/trunk/bt5/erp5_forge/bt/revision [utf8] (original)
+++ erp5/trunk/bt5/erp5_forge/bt/revision [utf8] Tue Oct 19 16:57:12 2010
@@ -1 +1 @@
-623
\ No newline at end of file
+624
\ No newline at end of file




More information about the Erp5-report mailing list