# HG changeset patch # User Marcin Kuzminski # Date 2018-07-11 10:37:33 # Node ID c62229b2f5efc01540e6e23e00be10c28939bbf5 # Parent 4a62bdfc287a84a16ba1c19447795f623d558052 pull-requests: refactor model for code readability. diff --git a/rhodecode/apps/repository/views/repo_pull_requests.py b/rhodecode/apps/repository/views/repo_pull_requests.py --- a/rhodecode/apps/repository/views/repo_pull_requests.py +++ b/rhodecode/apps/repository/views/repo_pull_requests.py @@ -868,9 +868,21 @@ class RepoPullRequestsView(RepoAppView, ancestor = source_scm.get_common_ancestor( source_commit.raw_id, target_commit.raw_id, target_scm) + # recalculate target ref based on ancestor target_ref_type, target_ref_name, __ = _form['target_ref'].split(':') target_ref = ':'.join((target_ref_type, target_ref_name, ancestor)) + get_default_reviewers_data, validate_default_reviewers = \ + PullRequestModel().get_reviewer_functions() + + # recalculate reviewers logic, to make sure we can validate this + reviewer_rules = get_default_reviewers_data( + self._rhodecode_db_user, source_db_repo, + source_commit, target_db_repo, target_commit) + + given_reviewers = _form['review_members'] + reviewers = validate_default_reviewers(given_reviewers, reviewer_rules) + pullrequest_title = _form['pullrequest_title'] title_source_ref = source_ref.split(':', 2)[1] if not pullrequest_title: @@ -882,22 +894,18 @@ class RepoPullRequestsView(RepoAppView, description = _form['pullrequest_desc'] - get_default_reviewers_data, validate_default_reviewers = \ - PullRequestModel().get_reviewer_functions() - - # recalculate reviewers logic, to make sure we can validate this - reviewer_rules = get_default_reviewers_data( - self._rhodecode_db_user, source_db_repo, - source_commit, target_db_repo, target_commit) - - given_reviewers = _form['review_members'] - reviewers = validate_default_reviewers(given_reviewers, reviewer_rules) - try: pull_request = PullRequestModel().create( - self._rhodecode_user.user_id, source_repo, source_ref, - target_repo, target_ref, commit_ids, reviewers, - pullrequest_title, description, reviewer_rules, + created_by=self._rhodecode_user.user_id, + source_repo=source_repo, + source_ref=source_ref, + target_repo=target_repo, + target_ref=target_ref, + revisions=commit_ids, + reviewers=reviewers, + title=pullrequest_title, + description=description, + reviewer_data=reviewer_rules, auth_user=self._rhodecode_user ) Session().commit()