<% # API my $api = gitprep_api; my $user_id = param('user'); my $project_id = param('project'); my $rep_info = $self->app->rep_info($user_id, $project_id); # Branches my $branches = [map { $_->{name} } @{app->git->branches($rep_info)}]; # Original project id my $original_project_id = app->dbi->model('project')->select( 'original_project', where => {'user.id' => $user_id, 'project.id' => $project_id} )->value; # Original project my $original_project; if ($original_project_id) { $original_project = app->dbi->model('project')->select( [ {__MY__ => '*'}, {user => ['id']} ], where => {'project.row_id' => $original_project_id} )->one; } else { $original_project = app->dbi->model('project')->select( [ {__MY__ => '*'}, {user => ['id']} ], where => {'user.id' => $user_id, 'project.id' => $project_id} )->one; } # Members my $member_projects = app->manager->member_projects($original_project->{'user.id'}, $original_project->{id}); unshift @$member_projects, $original_project; # Members branches for my $member_project (@$member_projects) { my $member_rep_info = $self->app->rep_info($member_project->{'user.id'}, $member_project->{id}); my $branches = app->git->branches($member_rep_info); $branches = [map { $_->{name} } @$branches]; $member_project->{branches} = $branches; } # Default branch my $default_branch = app->manager->default_branch($user_id, $project_id); layout 'common', title => "Network \x{30fb} $user_id/$project_id"; %> %= javascript begin $(document).ready(function () { // Click compare button $('[name=compare-btn]').on('click', function () { var branch = $('[name=branch]').val(); var remote = $(this).closest('[name=remote]'); var remote_member = remote.find('[name=remote-member]').text(); var remote_project = remote.find('[name=remote-project]').text(); var remote_branch = remote.find('[name=remote-branch]').val(); location.href = '<%= url_for("/$user_id/$project_id/network/graph/") %>' + branch + '...' + remote_member + '/' + remote_project + '/' + remote_branch; }); }); % end %= include '/include/header';
Members of the <%= $project_id %> Network
My branch "><%= $user_id %> / "><%= $project_id %> / % param('branch', $default_branch); %= select_field 'branch' => $branches, style => 'margin-top:5px;width:150px';
%= include '/include/footer';