Show More
@@ -594,6 +594,39 b' class PullrequestsController(BaseRepoCon' | |||||
594 | return _org_pull_request_obj, pull_request_obj, \ |
|
594 | return _org_pull_request_obj, pull_request_obj, \ | |
595 | pull_request_display_obj, at_version |
|
595 | pull_request_display_obj, at_version | |
596 |
|
596 | |||
|
597 | def _get_diffset( | |||
|
598 | self, source_repo, source_ref_id, target_ref_id, target_commit, | |||
|
599 | source_commit, diff_limit, file_limit, display_inline_comments): | |||
|
600 | vcs_diff = PullRequestModel().get_diff( | |||
|
601 | source_repo, source_ref_id, target_ref_id) | |||
|
602 | ||||
|
603 | diff_processor = diffs.DiffProcessor( | |||
|
604 | vcs_diff, format='newdiff', diff_limit=diff_limit, | |||
|
605 | file_limit=file_limit, show_full_diff=c.fulldiff) | |||
|
606 | ||||
|
607 | _parsed = diff_processor.prepare() | |||
|
608 | ||||
|
609 | def _node_getter(commit): | |||
|
610 | def get_node(fname): | |||
|
611 | try: | |||
|
612 | return commit.get_node(fname) | |||
|
613 | except NodeDoesNotExistError: | |||
|
614 | return None | |||
|
615 | ||||
|
616 | return get_node | |||
|
617 | ||||
|
618 | diffset = codeblocks.DiffSet( | |||
|
619 | repo_name=c.repo_name, | |||
|
620 | source_repo_name=c.source_repo.repo_name, | |||
|
621 | source_node_getter=_node_getter(target_commit), | |||
|
622 | target_node_getter=_node_getter(source_commit), | |||
|
623 | comments=display_inline_comments | |||
|
624 | ) | |||
|
625 | diffset = diffset.render_patchset( | |||
|
626 | _parsed, target_commit.raw_id, source_commit.raw_id) | |||
|
627 | ||||
|
628 | return diffset | |||
|
629 | ||||
597 | @LoginRequired() |
|
630 | @LoginRequired() | |
598 | @HasRepoPermissionAnyDecorator('repository.read', 'repository.write', |
|
631 | @HasRepoPermissionAnyDecorator('repository.read', 'repository.write', | |
599 | 'repository.admin') |
|
632 | 'repository.admin') | |
@@ -799,34 +832,13 b' class PullrequestsController(BaseRepoCon' | |||||
799 |
|
832 | |||
800 | c.missing_commits = True |
|
833 | c.missing_commits = True | |
801 | else: |
|
834 | else: | |
802 | vcs_diff = PullRequestModel().get_diff( |
|
|||
803 | commits_source_repo, source_ref_id, target_ref_id) |
|
|||
804 |
|
||||
805 | diff_processor = diffs.DiffProcessor( |
|
|||
806 | vcs_diff, format='newdiff', diff_limit=diff_limit, |
|
|||
807 | file_limit=file_limit, show_full_diff=c.fulldiff) |
|
|||
808 |
|
||||
809 | _parsed = diff_processor.prepare() |
|
|||
810 | c.limited_diff = isinstance(_parsed, diffs.LimitedDiffContainer) |
|
|||
811 |
|
835 | |||
812 | def _node_getter(commit): |
|
836 | c.diffset = self._get_diffset( | |
813 | def get_node(fname): |
|
837 | commits_source_repo, source_ref_id, target_ref_id, | |
814 | try: |
|
838 | target_commit, source_commit, | |
815 | return commit.get_node(fname) |
|
839 | diff_limit, file_limit, display_inline_comments) | |
816 | except NodeDoesNotExistError: |
|
|||
817 | return None |
|
|||
818 |
|
||||
819 | return get_node |
|
|||
820 |
|
840 | |||
821 | diffset = codeblocks.DiffSet( |
|
841 | c.limited_diff = c.diffset.limited_diff | |
822 | repo_name=c.repo_name, |
|
|||
823 | source_repo_name=c.source_repo.repo_name, |
|
|||
824 | source_node_getter=_node_getter(target_commit), |
|
|||
825 | target_node_getter=_node_getter(source_commit), |
|
|||
826 | comments=display_inline_comments |
|
|||
827 | ) |
|
|||
828 | c.diffset = diffset.render_patchset( |
|
|||
829 | _parsed, target_commit.raw_id, source_commit.raw_id) |
|
|||
830 |
|
842 | |||
831 | # calculate removed files that are bound to comments |
|
843 | # calculate removed files that are bound to comments | |
832 | comment_deleted_files = [ |
|
844 | comment_deleted_files = [ |
General Comments 0
You need to be logged in to leave comments.
Login now