Show More
@@ -141,50 +141,42 b' class PullrequestsController(BaseRepoCon' | |||
|
141 | 141 | # as default for other and thus give a simple compare view |
|
142 | 142 | #other_rev = request.POST.get('rev_start') |
|
143 | 143 | |
|
144 | other_repos_info = {} | |
|
145 | ||
|
146 | 144 | c.org_repos = [] |
|
147 | 145 | c.org_repos.append((org_repo.repo_name, org_repo.repo_name)) |
|
148 | 146 | c.default_org_repo = org_repo.repo_name |
|
149 | 147 | c.org_refs, c.default_org_ref = self._get_repo_refs(org_repo.scm_instance, org_rev) |
|
150 | 148 | |
|
151 | 149 | c.other_repos = [] |
|
152 | # add org repo to other so we can open pull request against itself | |
|
153 | c.other_repos.extend(c.org_repos) | |
|
150 | other_repos_info = {} | |
|
151 | ||
|
152 | def add_other_repo(repo, branch_rev=None): | |
|
153 | if repo.repo_name in other_repos_info: # shouldn't happen | |
|
154 | return | |
|
155 | c.other_repos.append((repo.repo_name, repo.repo_name)) | |
|
156 | other_refs, selected_other_ref = self._get_repo_refs(repo.scm_instance, branch_rev=branch_rev) | |
|
157 | other_repos_info[repo.repo_name] = { | |
|
158 | 'user': dict(user_id=repo.user.user_id, | |
|
159 | username=repo.user.username, | |
|
160 | firstname=repo.user.firstname, | |
|
161 | lastname=repo.user.lastname, | |
|
162 | gravatar_link=h.gravatar_url(repo.user.email, 14)), | |
|
163 | 'description': repo.description, | |
|
164 | 'revs': h.select('other_ref', selected_other_ref, other_refs, class_='refs') | |
|
165 | } | |
|
166 | ||
|
167 | # add org repo to other so we can open pull request against peer branches on itself | |
|
168 | add_other_repo(org_repo, branch_rev=org_rev) | |
|
154 | 169 | c.default_other_repo = org_repo.repo_name |
|
155 | other_refs, other_ref = self._get_repo_refs(org_repo.scm_instance, branch_rev=org_rev) | |
|
156 | usr_data = lambda usr: dict(user_id=usr.user_id, | |
|
157 | username=usr.username, | |
|
158 | firstname=usr.firstname, | |
|
159 | lastname=usr.lastname, | |
|
160 | gravatar_link=h.gravatar_url(usr.email, 14)) | |
|
161 | other_repos_info[org_repo.repo_name] = { | |
|
162 | 'user': usr_data(org_repo.user), | |
|
163 | 'description': org_repo.description, | |
|
164 | 'revs': h.select('other_ref', other_ref, other_refs, class_='refs') | |
|
165 | } | |
|
166 | 170 | |
|
167 | 171 | # gather forks and add to this list ... even though it is rare to |
|
168 | 172 | # request forks to pull from their parent |
|
169 | 173 | for fork in org_repo.forks: |
|
170 | c.other_repos.append((fork.repo_name, fork.repo_name)) | |
|
171 | refs, default_ref = self._get_repo_refs(fork.scm_instance) | |
|
172 | other_repos_info[fork.repo_name] = { | |
|
173 | 'user': usr_data(fork.user), | |
|
174 | 'description': fork.description, | |
|
175 | 'revs': h.select('other_ref', default_ref, refs, class_='refs') | |
|
176 | } | |
|
174 | add_other_repo(fork) | |
|
177 | 175 | |
|
178 | 176 | # add parents of this fork also, but only if it's not empty |
|
179 | 177 | if org_repo.parent and org_repo.parent.scm_instance.revisions: |
|
178 | add_other_repo(org_repo.parent) | |
|
180 | 179 | c.default_other_repo = org_repo.parent.repo_name |
|
181 | other_refs, other_ref = self._get_repo_refs(org_repo.parent.scm_instance) | |
|
182 | c.other_repos.append((org_repo.parent.repo_name, org_repo.parent.repo_name)) | |
|
183 | other_repos_info[org_repo.parent.repo_name] = { | |
|
184 | 'user': usr_data(org_repo.parent.user), | |
|
185 | 'description': org_repo.parent.description, | |
|
186 | 'revs': h.select('other_ref', other_ref, other_refs, class_='refs') | |
|
187 | } | |
|
188 | 180 | |
|
189 | 181 | c.default_other_repo_info = other_repos_info[c.default_other_repo] |
|
190 | 182 | c.other_repos_info = json.dumps(other_repos_info) |
General Comments 0
You need to be logged in to leave comments.
Login now