... | ... |
@@ -501,7 +501,6 @@ sub original_project { |
501 | 501 |
croak "Original project don't eixsts." unless defined $original_project_row_id; |
502 | 502 |
|
503 | 503 |
# Original project |
504 |
- $DB::single = 1 if $main::x; |
|
505 | 504 |
my $original_project = $dbi->model('project')->select( |
506 | 505 |
[ |
507 | 506 |
{__MY__ => '*'}, |
... | ... |
@@ -517,6 +516,26 @@ sub original_project { |
517 | 516 |
return $original_project; |
518 | 517 |
} |
519 | 518 |
|
519 |
+sub child_project { |
|
520 |
+ my ($self, $user_id, $project_id, $child_user_id) = @_; |
|
521 |
+ |
|
522 |
+ my $project_row_id = $self->app->dbi->model('project')->select( |
|
523 |
+ 'project.row_id', where => {'user.id' => $user_id, 'project.id' => $project_id} |
|
524 |
+ )->value; |
|
525 |
+ |
|
526 |
+ my $child_project = $self->app->dbi->model('project')->select( |
|
527 |
+ [ |
|
528 |
+ {__MY__ => '*'}, |
|
529 |
+ ], |
|
530 |
+ where => { |
|
531 |
+ 'project.original_project' => $project_row_id, |
|
532 |
+ 'user.id' => $child_user_id |
|
533 |
+ } |
|
534 |
+ )->one; |
|
535 |
+ |
|
536 |
+ return $child_project; |
|
537 |
+} |
|
538 |
+ |
|
520 | 539 |
sub projects { |
521 | 540 |
my ($self, $user_id) = @_; |
522 | 541 |
|
... | ... |
@@ -10,6 +10,16 @@ |
10 | 10 |
my $page = param('page') || 0; |
11 | 11 |
my $expand = param('expand'); |
12 | 12 |
|
13 |
+ # Get target user, project, branch |
|
14 |
+ my $target_user_id; |
|
15 |
+ my $target_branch; |
|
16 |
+ my $target_project; |
|
17 |
+ if ($rev =~ /^([^:]+):(.+)/) { |
|
18 |
+ $target_user_id = $1; |
|
19 |
+ $target_branch = $2; |
|
20 |
+ $target_project = $self->app->manager->child_project($user_id, $project_id, $target_user_id); |
|
21 |
+ } |
|
22 |
+ |
|
13 | 23 |
unless ($from_rev) { |
14 | 24 |
$from_rev = app->manager->default_branch($user_id, $project_id); |
15 | 25 |
} |
... | ... |
@@ -96,7 +106,6 @@ |
96 | 106 |
$self->redirect_to("/$user_id/$project_id/pull/$new_pull_request_row_id"); |
97 | 107 |
return; |
98 | 108 |
} |
99 |
- |
|
100 | 109 |
} |
101 | 110 |
} |
102 | 111 |
|