Commit 31e9f82ebc24ff04cb4eeaf933f6f3b158a38a62
1 parent
7825830c
Exists in
master
and in
4 other branches
Improve repository graph
Showing
5 changed files
with
29 additions
and
17 deletions
Show diff stats
app/assets/javascripts/stat_graph_contributors.js.coffee
| @@ -16,7 +16,7 @@ class window.ContributorsStatGraph | @@ -16,7 +16,7 @@ class window.ContributorsStatGraph | ||
| 16 | _.each(limited_author_data, (d) => | 16 | _.each(limited_author_data, (d) => |
| 17 | author_header = @create_author_header(d) | 17 | author_header = @create_author_header(d) |
| 18 | $(".contributors-list").append(author_header) | 18 | $(".contributors-list").append(author_header) |
| 19 | - @authors[d.author] = author_graph = new ContributorsAuthorGraph(d.dates) | 19 | + @authors[d.author_name] = author_graph = new ContributorsAuthorGraph(d.dates) |
| 20 | author_graph.draw() | 20 | author_graph.draw() |
| 21 | ) | 21 | ) |
| 22 | format_author_commit_info: (author) -> | 22 | format_author_commit_info: (author) -> |
| @@ -46,13 +46,15 @@ class window.ContributorsStatGraph | @@ -46,13 +46,15 @@ class window.ContributorsStatGraph | ||
| 46 | class: 'person' | 46 | class: 'person' |
| 47 | style: 'display: block;' | 47 | style: 'display: block;' |
| 48 | }) | 48 | }) |
| 49 | - author_name = $('<h4>' + author.author + '</h4>') | 49 | + author_name = $('<h4>' + author.author_name + '</h4>') |
| 50 | + author_email = $('<p class="graph-author-email">' + author.author_email + '</p>') | ||
| 50 | author_commit_info_span = $('<span/>', { | 51 | author_commit_info_span = $('<span/>', { |
| 51 | class: 'commits' | 52 | class: 'commits' |
| 52 | }) | 53 | }) |
| 53 | author_commit_info = @format_author_commit_info(author) | 54 | author_commit_info = @format_author_commit_info(author) |
| 54 | author_commit_info_span.html(author_commit_info) | 55 | author_commit_info_span.html(author_commit_info) |
| 55 | list_item.append(author_name) | 56 | list_item.append(author_name) |
| 57 | + list_item.append(author_email) | ||
| 56 | list_item.append(author_commit_info_span) | 58 | list_item.append(author_commit_info_span) |
| 57 | list_item | 59 | list_item |
| 58 | redraw_master: -> | 60 | redraw_master: -> |
| @@ -65,9 +67,9 @@ class window.ContributorsStatGraph | @@ -65,9 +67,9 @@ class window.ContributorsStatGraph | ||
| 65 | author_commits = ContributorsStatGraphUtil.get_author_data(@parsed_log, @field, x_domain) | 67 | author_commits = ContributorsStatGraphUtil.get_author_data(@parsed_log, @field, x_domain) |
| 66 | _.each(author_commits, (d) => | 68 | _.each(author_commits, (d) => |
| 67 | @redraw_author_commit_info(d) | 69 | @redraw_author_commit_info(d) |
| 68 | - $(@authors[d.author].list_item).appendTo("ol") | ||
| 69 | - @authors[d.author].set_data(d.dates) | ||
| 70 | - @authors[d.author].redraw() | 70 | + $(@authors[d.author_name].list_item).appendTo("ol") |
| 71 | + @authors[d.author_name].set_data(d.dates) | ||
| 72 | + @authors[d.author_name].redraw() | ||
| 71 | ) | 73 | ) |
| 72 | set_current_field: (field) -> | 74 | set_current_field: (field) -> |
| 73 | @field = field | 75 | @field = field |
| @@ -77,6 +79,6 @@ class window.ContributorsStatGraph | @@ -77,6 +79,6 @@ class window.ContributorsStatGraph | ||
| 77 | print = print_date_format(x_domain[0]) + " - " + print_date_format(x_domain[1]) | 79 | print = print_date_format(x_domain[0]) + " - " + print_date_format(x_domain[1]) |
| 78 | $("#date_header").text(print) | 80 | $("#date_header").text(print) |
| 79 | redraw_author_commit_info: (author) -> | 81 | redraw_author_commit_info: (author) -> |
| 80 | - author_list_item = $(@authors[author.author].list_item) | 82 | + author_list_item = $(@authors[author.author_name].list_item) |
| 81 | author_commit_info = @format_author_commit_info(author) | 83 | author_commit_info = @format_author_commit_info(author) |
| 82 | author_list_item.find("span").html(author_commit_info) | 84 | author_list_item.find("span").html(author_commit_info) |
app/assets/javascripts/stat_graph_contributors_graph.js.coffee
| @@ -90,9 +90,9 @@ class window.ContributorsMasterGraph extends ContributorsGraph | @@ -90,9 +90,9 @@ class window.ContributorsMasterGraph extends ContributorsGraph | ||
| 90 | y(d.commits = d.commits ? d.additions ? d.deletions) | 90 | y(d.commits = d.commits ? d.additions ? d.deletions) |
| 91 | ).interpolate("basis") | 91 | ).interpolate("basis") |
| 92 | create_brush: -> | 92 | create_brush: -> |
| 93 | - @brush = d3.svg.brush().x(@x).on("brushend", @update_content); | 93 | + @brush = d3.svg.brush().x(@x).on("brushend", @update_content) |
| 94 | draw_path: (data) -> | 94 | draw_path: (data) -> |
| 95 | - @svg.append("path").datum(data).attr("class", "area").attr("d", @area); | 95 | + @svg.append("path").datum(data).attr("class", "area").attr("d", @area) |
| 96 | add_brush: -> | 96 | add_brush: -> |
| 97 | @svg.append("g").attr("class", "selection").call(@brush).selectAll("rect").attr("height", @height); | 97 | @svg.append("g").attr("class", "selection").call(@brush).selectAll("rect").attr("height", @height); |
| 98 | update_content: => | 98 | update_content: => |
app/assets/javascripts/stat_graph_contributors_util.js.coffee
| @@ -4,9 +4,9 @@ window.ContributorsStatGraphUtil = | @@ -4,9 +4,9 @@ window.ContributorsStatGraphUtil = | ||
| 4 | by_author = {} | 4 | by_author = {} |
| 5 | for entry in log | 5 | for entry in log |
| 6 | @add_date(entry.date, total) unless total[entry.date]? | 6 | @add_date(entry.date, total) unless total[entry.date]? |
| 7 | - @add_author(entry.author, by_author) unless by_author[entry.author]? | ||
| 8 | - @add_date(entry.date, by_author[entry.author]) unless by_author[entry.author][entry.date] | ||
| 9 | - @store_data(entry, total[entry.date], by_author[entry.author][entry.date]) | 7 | + @add_author(entry, by_author) unless by_author[entry.author_name]? |
| 8 | + @add_date(entry.date, by_author[entry.author_name]) unless by_author[entry.author_name][entry.date] | ||
| 9 | + @store_data(entry, total[entry.date], by_author[entry.author_name][entry.date]) | ||
| 10 | total = _.toArray(total) | 10 | total = _.toArray(total) |
| 11 | by_author = _.toArray(by_author) | 11 | by_author = _.toArray(by_author) |
| 12 | total: total, by_author: by_author | 12 | total: total, by_author: by_author |
| @@ -16,8 +16,9 @@ window.ContributorsStatGraphUtil = | @@ -16,8 +16,9 @@ window.ContributorsStatGraphUtil = | ||
| 16 | collection[date].date = date | 16 | collection[date].date = date |
| 17 | 17 | ||
| 18 | add_author: (author, by_author) -> | 18 | add_author: (author, by_author) -> |
| 19 | - by_author[author] = {} | ||
| 20 | - by_author[author].author = author | 19 | + by_author[author.author_name] = {} |
| 20 | + by_author[author.author_name].author_name = author.author_name | ||
| 21 | + by_author[author.author_name].author_email = author.author_email | ||
| 21 | 22 | ||
| 22 | store_data: (entry, total, by_author) -> | 23 | store_data: (entry, total, by_author) -> |
| 23 | @store_commits(total, by_author) | 24 | @store_commits(total, by_author) |
| @@ -71,10 +72,11 @@ window.ContributorsStatGraphUtil = | @@ -71,10 +72,11 @@ window.ContributorsStatGraphUtil = | ||
| 71 | 72 | ||
| 72 | parse_log_entry: (log_entry, field, date_range) -> | 73 | parse_log_entry: (log_entry, field, date_range) -> |
| 73 | parsed_entry = {} | 74 | parsed_entry = {} |
| 74 | - parsed_entry.author = log_entry.author | 75 | + parsed_entry.author_name = log_entry.author_name |
| 76 | + parsed_entry.author_email = log_entry.author_email | ||
| 75 | parsed_entry.dates = {} | 77 | parsed_entry.dates = {} |
| 76 | parsed_entry.commits = parsed_entry.additions = parsed_entry.deletions = 0 | 78 | parsed_entry.commits = parsed_entry.additions = parsed_entry.deletions = 0 |
| 77 | - _.each(_.omit(log_entry, 'author'), (value, key) => | 79 | + _.each(_.omit(log_entry, 'author_name', 'author_email'), (value, key) => |
| 78 | if @in_range(value.date, date_range) | 80 | if @in_range(value.date, date_range) |
| 79 | parsed_entry.dates[value.date] = value[field] | 81 | parsed_entry.dates[value.date] = value[field] |
| 80 | parsed_entry.commits += value.commits | 82 | parsed_entry.commits += value.commits |
| @@ -88,4 +90,4 @@ window.ContributorsStatGraphUtil = | @@ -88,4 +90,4 @@ window.ContributorsStatGraphUtil = | ||
| 88 | true | 90 | true |
| 89 | else | 91 | else |
| 90 | false | 92 | false |
| 91 | - | ||
| 92 | \ No newline at end of file | 93 | \ No newline at end of file |
| 94 | + |
app/assets/stylesheets/sections/graph.scss
app/views/projects/graphs/show.html.haml
| 1 | .loading-graph | 1 | .loading-graph |
| 2 | %center | 2 | %center |
| 3 | .loading | 3 | .loading |
| 4 | - %h3.page-title Building repository graph. Please wait a moment. | 4 | + %h3.page-title Building repository graph. |
| 5 | + %p Please wait a moment, this page will automatically refresh when ready. | ||
| 5 | 6 | ||
| 6 | .stat-graph | 7 | .stat-graph |
| 7 | .header.clearfix | 8 | .header.clearfix |
| @@ -11,6 +12,8 @@ | @@ -11,6 +12,8 @@ | ||
| 11 | %option{:value => "additions"} Additions | 12 | %option{:value => "additions"} Additions |
| 12 | %option{:value => "deletions"} Deletions | 13 | %option{:value => "deletions"} Deletions |
| 13 | %h3#date_header.page-title | 14 | %h3#date_header.page-title |
| 15 | + %p.light | ||
| 16 | + Commits to #{@project.default_branch}, excluding merge commits. Limited by 8,000 commits | ||
| 14 | %input#brush_change{:type => "hidden"} | 17 | %input#brush_change{:type => "hidden"} |
| 15 | .graphs | 18 | .graphs |
| 16 | #contributors-master | 19 | #contributors-master |