diff rhodecode/controllers/files.py @ 1768:5610fd9b6803 beta

added line context control to diffs
author Marcin Kuzminski <marcin@python-works.com>
date Thu, 08 Dec 2011 02:25:23 +0200
parents 1d1ccb873d00
children 17caf4efe15c
line wrap: on
line diff
--- a/rhodecode/controllers/files.py	Thu Dec 08 01:47:11 2011 +0200
+++ b/rhodecode/controllers/files.py	Thu Dec 08 02:25:23 2011 +0200
@@ -406,6 +406,7 @@
                                    'repository.admin')
     def diff(self, repo_name, f_path):
         ignore_whitespace = request.GET.get('ignorews') == '1'
+        line_context = request.GET.get('context', 3)
         diff1 = request.GET.get('diff1')
         diff2 = request.GET.get('diff2')
         c.action = request.GET.get('diff')
@@ -433,7 +434,8 @@
 
         if c.action == 'download':
             _diff = diffs.get_gitdiff(node1, node2,
-                                       ignore_whitespace=ignore_whitespace)
+                                      ignore_whitespace=ignore_whitespace,
+                                      context=line_context)
             diff = diffs.DiffProcessor(_diff,format='gitdiff')
 
             diff_name = '%s_vs_%s.diff' % (diff1, diff2)
@@ -444,7 +446,8 @@
 
         elif c.action == 'raw':
             _diff = diffs.get_gitdiff(node1, node2,
-                                       ignore_whitespace=ignore_whitespace)
+                                      ignore_whitespace=ignore_whitespace,
+                                      context=line_context)
             diff = diffs.DiffProcessor(_diff,format='gitdiff')
             response.content_type = 'text/plain'
             return diff.raw_diff()
@@ -458,7 +461,8 @@
                 c.big_diff = True
             else:
                 _diff = diffs.get_gitdiff(node1, node2,
-                                           ignore_whitespace=ignore_whitespace)
+                                           ignore_whitespace=ignore_whitespace,
+                                           context=line_context)
                 diff = diffs.DiffProcessor(_diff,format='gitdiff')
                 c.cur_diff = diff.as_html()
         else:
@@ -473,7 +477,8 @@
 
             else:
                 _diff = diffs.get_gitdiff(node1, node2,
-                                           ignore_whitespace=ignore_whitespace)
+                                          ignore_whitespace=ignore_whitespace,
+                                          context=line_context)
                 diff = diffs.DiffProcessor(_diff,format='gitdiff')
                 c.cur_diff = diff.as_html()