[Erp5-report] r40068 jm - in /erp5/trunk/products: ERP5Subversion/Tool/ ERP5Type/

nobody at svn.erp5.org nobody at svn.erp5.org
Mon Nov 8 18:19:28 CET 2010


Author: jm
Date: Mon Nov  8 18:19:27 2010
New Revision: 40068

URL: http://svn.erp5.org?rev=40068&view=rev
Log:
Take TemplateTool_filter* scripts into account when displaying SVN status tree

Modified:
    erp5/trunk/products/ERP5Subversion/Tool/SubversionTool.py
    erp5/trunk/products/ERP5Type/DiffUtils.py

Modified: erp5/trunk/products/ERP5Subversion/Tool/SubversionTool.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5Subversion/Tool/SubversionTool.py?rev=40068&r1=40067&r2=40068&view=diff
==============================================================================
--- erp5/trunk/products/ERP5Subversion/Tool/SubversionTool.py [utf8] (original)
+++ erp5/trunk/products/ERP5Subversion/Tool/SubversionTool.py [utf8] Mon Nov  8 18:19:27 2010
@@ -826,19 +826,30 @@ class SubversionTool(BaseTool):
     # Business template root directory is the root of the tree
     root = Dir(business_template.getTitle(), "normal")
     something_modified = False
-    
+    template_tool = self.getPortalObject().portal_templates
+    if template_tool.getDiffFilterScriptList():
+      client_diff = self._getClient().diff
+      def hasDiff(path):
+        return template_tool.getFilteredDiff(client_diff(path, None, None))
+    else:
+      def hasDiff(path):
+        return True
     statusObj_list = self.status(os.path.join(bt_path, \
     business_template.getTitle()), update=False)
     # We browse the files returned by svn status
     for status_obj in statusObj_list :
       # can be (normal, added, modified, deleted, conflicted, unversioned)
-      status = str(status_obj.getTextStatus())
       if str(status_obj.getReposTextStatus()) != 'none':
         status = "outdated"
-      if (show_unmodified or status != "normal") and status != "unversioned":
+      else:
+        status = str(status_obj.getTextStatus())
+        if status == "unversioned" or \
+           status == "normal" and not show_unmodified:
+          continue
+      full_path = status_obj.getPath()
+      if status != "modified" or hasDiff(full_path):
         something_modified = True
         # Get object path
-        full_path = status_obj.getPath()
         relative_path = full_path.replace(bt_path, '')
         filename = os.path.basename(relative_path)
 

Modified: erp5/trunk/products/ERP5Type/DiffUtils.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5Type/DiffUtils.py?rev=40068&r1=40067&r2=40068&view=diff
==============================================================================
--- erp5/trunk/products/ERP5Type/DiffUtils.py [utf8] (original)
+++ erp5/trunk/products/ERP5Type/DiffUtils.py [utf8] Mon Nov  8 18:19:27 2010
@@ -97,6 +97,9 @@ class DiffFile:
           tmp.append(line)
     self.children.append(CodeBlock(os.linesep.join(tmp)))
 
+  def __len__(self):
+    return len(self.children)
+
   def toHTML(self):
     """ return HTML diff
     """
@@ -104,7 +107,7 @@ class DiffFile:
     if self.binary:
       return '<b>Folder or binary file or just no changes!</b><br/><br/><br/>'
 
-    if not len(self.children):
+    if not self:
       return ''
     
     html_list = []




More information about the Erp5-report mailing list