Commit 5baac66992a1a4e3df4f9873632a9a083e52b92c
1 parent
63e532ef
Exists in
master
and in
4 other branches
More info (like 10 branches, 5 tags) at project show page
Showing
2 changed files
with
41 additions
and
5 deletions
Show diff stats
app/models/repository.rb
... | ... | @@ -33,6 +33,18 @@ class Repository |
33 | 33 | commits |
34 | 34 | end |
35 | 35 | |
36 | + def round_commit_count | |
37 | + if commit_count > 10000 | |
38 | + '10000+' | |
39 | + elsif commit_count > 5000 | |
40 | + '5000+' | |
41 | + elsif commit_count > 1000 | |
42 | + '1000+' | |
43 | + else | |
44 | + commit_count | |
45 | + end | |
46 | + end | |
47 | + | |
36 | 48 | def branch_names |
37 | 49 | Rails.cache.fetch(cache_key(:branch_names)) do |
38 | 50 | raw_repository.branch_names |
... | ... | @@ -45,8 +57,10 @@ class Repository |
45 | 57 | end |
46 | 58 | end |
47 | 59 | |
48 | - def method_missing(m, *args, &block) | |
49 | - raw_repository.send(m, *args, &block) | |
60 | + def commit_count | |
61 | + Rails.cache.fetch(cache_key(:commit_count)) do | |
62 | + raw_repository.raw.commit_count | |
63 | + end | |
50 | 64 | end |
51 | 65 | |
52 | 66 | # Return repo size in megabytes |
... | ... | @@ -61,6 +75,7 @@ class Repository |
61 | 75 | Rails.cache.delete(cache_key(:size)) |
62 | 76 | Rails.cache.delete(cache_key(:branch_names)) |
63 | 77 | Rails.cache.delete(cache_key(:tag_names)) |
78 | + Rails.cache.delete(cache_key(:commit_count)) | |
64 | 79 | Rails.cache.delete(cache_key(:graph_log)) |
65 | 80 | end |
66 | 81 | |
... | ... | @@ -75,6 +90,10 @@ class Repository |
75 | 90 | "#{type}:#{path_with_namespace}" |
76 | 91 | end |
77 | 92 | |
93 | + def method_missing(m, *args, &block) | |
94 | + raw_repository.send(m, *args, &block) | |
95 | + end | |
96 | + | |
78 | 97 | def respond_to?(method) |
79 | 98 | return true if raw_repository.respond_to?(method) |
80 | 99 | ... | ... |
app/views/projects/show.html.haml
... | ... | @@ -37,9 +37,18 @@ |
37 | 37 | |
38 | 38 | %hr |
39 | 39 | %p |
40 | - %p Repo Size: #{@project.repository.size} MB | |
41 | - %p Created on: #{@project.created_at.stamp('Aug 22, 2013')} | |
42 | - %p Owner: #{link_to @project.owner_name, @project.owner} | |
40 | + %p | |
41 | + %span.light Repo size is | |
42 | + #{@project.repository.size} MB | |
43 | + %p | |
44 | + %span.light Created at | |
45 | + #{@project.created_at.stamp('Aug 22, 2013')} | |
46 | + %p | |
47 | + %span.light Owned by | |
48 | + - if @project.group | |
49 | + #{link_to @project.group.name, @project.group} Group | |
50 | + - else | |
51 | + #{link_to @project.owner_name, @project.owner} | |
43 | 52 | - if @project.forked_from_project |
44 | 53 | %p |
45 | 54 | %i.icon-code-fork |
... | ... | @@ -50,3 +59,11 @@ |
50 | 59 | %hr |
51 | 60 | = link_to @project.gitlab_ci_service.builds_path do |
52 | 61 | = image_tag @project.gitlab_ci_service.status_img_path, alt: "build status" |
62 | + | |
63 | + %hr | |
64 | + %p | |
65 | + = link_to pluralize(@repository.round_commit_count, 'commit'), project_commits_path(@project) | |
66 | + %p | |
67 | + = link_to pluralize(@repository.branch_names.count, 'branch'), project_repository_path(@project) | |
68 | + %p | |
69 | + = link_to pluralize(@repository.tag_names.count, 'tag'), tags_project_repository_path(@project) | ... | ... |