Showing 7 changed files with 23 additions and 53 deletions
+16 -43
lib/Gitprep/Git.pm
... ...
@@ -777,11 +777,11 @@ sub last_activity {
777 777
 }
778 778
 
779 779
 sub parse_rev_path {
780
-  my ($self, $rep,, $rev_path) = @_;
780
+  my ($self, $rep_info, $rev_path) = @_;
781 781
   
782 782
   # References
783 783
   my @cmd = $self->cmd(
784
-    $rep,
784
+    $rep_info,
785 785
     'show-ref',
786 786
     '--dereference'
787 787
   );
... ...
@@ -826,12 +826,11 @@ sub parse_rev_path {
826 826
 }
827 827
 
828 828
 sub object_type {
829
-  my ($self, $user, $project, $rev) = @_;
829
+  my ($self, $rep_info, $rev) = @_;
830 830
   
831 831
   # Get object type
832
-  my @cmd = $self->cmd_rep(
833
-    $user,
834
-    $project,
832
+  my @cmd = $self->cmd(
833
+    $rep_info,
835 834
     'cat-file',
836 835
     '-t',
837 836
     $rev
... ...
@@ -845,58 +844,33 @@ sub object_type {
845 844
   return $type;
846 845
 }
847 846
 
848
-sub project_owner {
849
-  my ($self, $project) = @_;
850
-  
851
-  # Project owner
852
-  my $user_id = (stat $project)[4];
853
-  my $user = getpwuid $user_id;
854
-  
855
-  return $user;
856
-}
857
-
858
-sub project_urls {
859
-  my ($self, $project) = @_;
860
-  
861
-  # Project URLs
862
-  open my $fh, '<', "$project/cloneurl"
863
-    or return;
864
-  my @urls = <$fh>;
865
-  @urls = map { chomp; $self->_dec($_) } @urls;
866
-  close $fh;
867
-
868
-  return \@urls;
869
-}
870
-
871 847
 sub repository {
872
-  my ($self, $user, $project) = @_;
848
+  my ($self, $rep_info) = @_;
873 849
 
874
-  return unless -d $self->app->rep_path($user, $project);
850
+  return unless -d $self->app->rep_path($rep_info->{user}, $rep_info->{project});
875 851
   
876
-
877 852
   my $rep = {};
878
-  my @activity = $self->last_activity($self->app->rep_info($user, $project));
853
+  my @activity = $self->last_activity($rep_info);
879 854
   if (@activity) {
880 855
     $rep->{age} = $activity[0];
881 856
     $rep->{age_string} = $activity[1];
882 857
   }
883 858
   else { $rep->{age} = 0 }
884 859
   
885
-  my $description = $self->description($self->app->rep_info($user, $project)) || '';
860
+  my $description = $self->description($rep_info) || '';
886 861
   $rep->{description} = $self->_chop_str($description, 25, 5);
887 862
   
888 863
   return $rep;
889 864
 }
890 865
 
891 866
 sub references {
892
-  my ($self, $user, $project, $type) = @_;
867
+  my ($self, $rep_info, $type) = @_;
893 868
   
894 869
   $type ||= '';
895 870
   
896 871
   # Branches or tags
897
-  my @cmd = $self->cmd_rep(
898
-    $user,
899
-    $project,
872
+  my @cmd = $self->cmd(
873
+    $rep_info,
900 874
     'show-ref',
901 875
     '--dereference',
902 876
     (
... ...
@@ -970,16 +944,15 @@ sub tags_count {
970 944
 }
971 945
 
972 946
 sub tags {
973
-  my ($self, $user, $project, $limit, $count, $offset) = @_;
947
+  my ($self, $rep_info, $limit, $count, $offset) = @_;
974 948
   
975 949
   $limit ||= 1000;
976 950
   $count ||= 50;
977 951
   $offset ||= 0;
978 952
   
979 953
   # Get tags
980
-  my @cmd = $self->cmd_rep(
981
-    $user,
982
-    $project,
954
+  my @cmd = $self->cmd(
955
+    $rep_info,
983 956
     'for-each-ref',
984 957
     ($limit ? '--count='.($limit+1) : ()),
985 958
     '--sort=-creatordate',
... ...
@@ -1033,7 +1006,7 @@ sub tags {
1033 1006
       $tag{comment_short} = $self->_chop_str($tag{subject}, 30, 5)
1034 1007
         if $tag{subject};
1035 1008
 
1036
-      $tag{commit} = $self->get_commit($user, $project, $name);
1009
+      $tag{commit} = $self->get_commit_new($rep_info, $name);
1037 1010
 
1038 1011
       push @tags, \%tag;
1039 1012
     }
+1 -2
templates/api/revs.html.ep
... ...
@@ -10,8 +10,7 @@
10 10
   
11 11
   # Tags
12 12
   my $tags = $git->tags(
13
-    $user,
14
-    $project,
13
+    app->rep_info($user, $project),
15 14
     app->config->{basic}{tags_limit} || 1000,
16 15
     app->config->{basic}{tags_limit} || 1000
17 16
   ) || [];
+1 -1
templates/archive.html.ep
... ...
@@ -26,7 +26,7 @@
26 26
   my $git = app->git;
27 27
 
28 28
   # Object type
29
-  my $type = $git->object_type($user, $project, "$rev^{}");
29
+  my $type = $git->object_type(app->rep_info($user, $project), "$rev^{}");
30 30
   if (!$type || $type eq 'blob') {
31 31
     $self->reply->not_found;
32 32
     return;
+2 -2
templates/commit.html.ep
... ...
@@ -33,11 +33,11 @@
33 33
   )->value;
34 34
   
35 35
   # Branches
36
-  my $branch_refs = $git->references($user, $project, 'heads');
36
+  my $branch_refs = $git->references(app->rep_info($user, $project), 'heads');
37 37
   my $branches = $branch_refs->{$commit->{id}} || [];
38 38
   
39 39
   # Tags
40
-  my $tag_refs = $git->references($user, $project, 'tags');
40
+  my $tag_refs = $git->references(app->rep_info($user, $project), 'tags');
41 41
   my $tags = $tag_refs->{$commit->{id}} || [];
42 42
   
43 43
   # Global variable for included template
+1 -2
templates/pulls.html.ep
... ...
@@ -14,8 +14,7 @@
14 14
   my $limit = app->config->{basic}{tags_limit};
15 15
   my $page_count = 20;
16 16
   my $tags = $git->tags(
17
-    $user,
18
-    $project,
17
+    app->rep_info($user, $project),
19 18
     $limit,
20 19
     $page_count,
21 20
     $page_count * ($page - 1)
+1 -2
templates/tags.html.ep
... ...
@@ -14,8 +14,7 @@
14 14
   my $limit = app->config->{basic}{tags_limit};
15 15
   my $page_count = 20;
16 16
   my $tags = $git->tags(
17
-    $user,
18
-    $project,
17
+    app->rep_info($user, $project),
19 18
     $limit,
20 19
     $page_count,
21 20
     $page_count * ($page - 1)
+1 -1
templates/user.html.ep
... ...
@@ -22,7 +22,7 @@
22 22
   my $projects = app->manager->projects($user_id);
23 23
   my $reps = [];
24 24
   for my $project (@$projects) {
25
-    my $rep = app->git->repository($user_id, $project->{name}) || {none => 1};
25
+    my $rep = app->git->repository(app->rep_info($user_id, $project->{name})) || {none => 1};
26 26
     $rep->{name} = $project->{name};
27 27
     $rep->{private} = $project->{private};
28 28
     $rep->{age} //= 0;