diff rhodecode/controllers/files.py @ 1752:f28dc032adf0 beta

Added handling of ignore whitespace flag in changesets - fixed messages for FK validation
author Marcin Kuzminski <marcin@python-works.com>
date Sat, 03 Dec 2011 21:00:36 +0200
parents 61eda8bf70d0
children 1d1ccb873d00
line wrap: on
line diff
--- a/rhodecode/controllers/files.py	Sat Dec 03 04:14:41 2011 +0200
+++ b/rhodecode/controllers/files.py	Sat Dec 03 21:00:36 2011 +0200
@@ -404,6 +404,7 @@
     @HasRepoPermissionAnyDecorator('repository.read', 'repository.write',
                                    'repository.admin')
     def diff(self, repo_name, f_path):
+        ignore_whitespace = request.GET.get('ignorews') == '1'
         diff1 = request.GET.get('diff1')
         diff2 = request.GET.get('diff2')
         c.action = request.GET.get('diff')
@@ -430,8 +431,9 @@
                                 repo_name=c.repo_name, f_path=f_path))
 
         if c.action == 'download':
-            diff = differ.DiffProcessor(differ.get_gitdiff(node1, node2),
-                                        format='gitdiff')
+            _diff = differ.get_gitdiff(node1, node2,
+                                       ignore_whitespace=ignore_whitespace)
+            diff = differ.DiffProcessor(_diff,format='gitdiff')
 
             diff_name = '%s_vs_%s.diff' % (diff1, diff2)
             response.content_type = 'text/plain'
@@ -440,8 +442,9 @@
             return diff.raw_diff()
 
         elif c.action == 'raw':
-            diff = differ.DiffProcessor(differ.get_gitdiff(node1, node2),
-                                        format='gitdiff')
+            _diff = differ.get_gitdiff(node1, node2,
+                                       ignore_whitespace=ignore_whitespace)
+            diff = differ.DiffProcessor(_diff,format='gitdiff')
             response.content_type = 'text/plain'
             return diff.raw_diff()
 
@@ -453,8 +456,9 @@
                 c.cur_diff = ''
                 c.big_diff = True
             else:
-                diff = differ.DiffProcessor(differ.get_gitdiff(node1, node2),
-                                        format='gitdiff')
+                _diff = differ.get_gitdiff(node1, node2,
+                                           ignore_whitespace=ignore_whitespace)
+                diff = differ.DiffProcessor(_diff,format='gitdiff')
                 c.cur_diff = diff.as_html()
         else:
 
@@ -467,8 +471,9 @@
                 c.big_diff = True
 
             else:
-                diff = differ.DiffProcessor(differ.get_gitdiff(node1, node2),
-                                        format='gitdiff')
+                _diff = differ.get_gitdiff(node1, node2,
+                                           ignore_whitespace=ignore_whitespace)
+                diff = differ.DiffProcessor(_diff,format='gitdiff')
                 c.cur_diff = diff.as_html()
 
         if not c.cur_diff and not c.big_diff: