From a0c54ad9366b3839eb6613433d81ec7908f8e414 Mon Sep 17 00:00:00 2001 From: Jacob Schatz Date: Fri, 10 Feb 2017 19:26:09 -0500 Subject: [PATCH 1/3] Change tag to bundle tag --- app/views/groups/analytics/show.html.haml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/views/groups/analytics/show.html.haml b/app/views/groups/analytics/show.html.haml index 3a9bf59230a730..d2153dcf2788e2 100644 --- a/app/views/groups/analytics/show.html.haml +++ b/app/views/groups/analytics/show.html.haml @@ -1,7 +1,7 @@ - page_title "Contribution Analytics" - header_title group_title(@group, "Contribution Analytics", group_analytics_path(@group)) - content_for :page_specific_javascripts do - = page_specific_javascript_tag('lib/chart.js') + = page_specific_javascript_bundle_tag('lib/chart.js') .sub-header-block .pull-right -- GitLab From 4f6bf7b5f0c6fc1908eee2ae086c52501eebb091 Mon Sep 17 00:00:00 2001 From: Jacob Schatz Date: Fri, 10 Feb 2017 19:35:53 -0500 Subject: [PATCH 2/3] Add changelog --- changelogs/unreleased-ee/fix-analytics-contribution.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 changelogs/unreleased-ee/fix-analytics-contribution.yml diff --git a/changelogs/unreleased-ee/fix-analytics-contribution.yml b/changelogs/unreleased-ee/fix-analytics-contribution.yml new file mode 100644 index 00000000000000..727c92c669049b --- /dev/null +++ b/changelogs/unreleased-ee/fix-analytics-contribution.yml @@ -0,0 +1,4 @@ +--- +title: Change how analytics loads javascript. +merge_request: +author: -- GitLab From 5362fc8863fe04b176466b5a7f2d7ca3b09063a8 Mon Sep 17 00:00:00 2001 From: Jacob Schatz Date: Sat, 11 Feb 2017 00:56:30 +0000 Subject: [PATCH 3/3] Update show.html.haml --- app/views/groups/analytics/show.html.haml | 286 +++++++++++----------- 1 file changed, 143 insertions(+), 143 deletions(-) diff --git a/app/views/groups/analytics/show.html.haml b/app/views/groups/analytics/show.html.haml index d2153dcf2788e2..de97b07c5230aa 100644 --- a/app/views/groups/analytics/show.html.haml +++ b/app/views/groups/analytics/show.html.haml @@ -1,143 +1,143 @@ -- page_title "Contribution Analytics" -- header_title group_title(@group, "Contribution Analytics", group_analytics_path(@group)) -- content_for :page_specific_javascripts do - = page_specific_javascript_bundle_tag('lib/chart.js') - -.sub-header-block - .pull-right - .dropdown.inline - %button.dropdown-toggle.btn{ type: 'button', 'data-toggle' => 'dropdown' } - = icon('calendar-o') - %b.caret - %ul.dropdown-menu.dropdown-menu-align-right - %li - = link_to group_analytics_path(@group, start_date: Date.today - 1.week) do - Last week - %li - = link_to group_analytics_path(@group, start_date: Date.today - 1.month) do - Last month - %li - = link_to group_analytics_path(@group, start_date: Date.today - 3.months) do - Last 3 months - .oneline - Contribution analytics for issues, merge requests and push events since #{@start_date} - -%h3 Push - -.row - .col-md-4 - %ul - %li - = @events.code_push.count - times - %li - more than - = @events.code_push.map(&:commits_count).sum - commits - %li - by - = pluralize @events.code_push.pluck(:author_id).uniq.count, 'person' - - .col-md-8 - %div - %p.light Push events per group member - %canvas#push{ height: 250 } - -%h3 Merge Requests - -.row - .col-md-4 - %ul - %li - = @events.merge_requests.created.count - created - %li - = @events.merge_requests.merged.count - accepted - - .col-md-8 - %div - %p.light Merge requests created per group member - %canvas#merge_requests{ height: 250 } - -%h3 Issues - -.row - .col-md-4 - %ul - %li - = @events.issues.created.count - created - %li - = @events.issues.closed.pluck(:target_id).uniq.count - closed - - .col-md-8 - %div - %p.light Issues closed per group member - %canvas#issues{ height: 250 } - -.gray-content-block - .oneline - Contributions per group member - -.table-holder - %table.table.sortable-table#event-stats - %thead - %tr - %th.sortable - Name - = icon('sort') - %th.sortable - Pushed - = icon('sort') - %th.sortable - Opened issues - = icon('sort') - %th.sortable - Closed issues - = icon('sort') - %th.sortable - Opened MR - = icon('sort') - %th.sortable - Accepted MR - = icon('sort') - %th.sortable - Total Contributions - = icon('sort') - %tbody - - @users.each do |user| - %tr - %td - %strong - = link_to user.name, user - %td= @events.code_push.where(author_id: user).count - %td= @events.issues.created.where(author_id: user).count - %td= @events.issues.closed.where(author_id: user).count - %td= @events.merge_requests.created.where(author_id: user).count - %td= @events.merge_requests.merged.where(author_id: user).count - %td= @events.where(author_id: user).count - - - -- [:push, :issues, :merge_requests].each do |scope| - :javascript - var data = { - labels : #{@users.map(&:name).to_json}, - datasets : [ - { - fillColor : "rgba(220,220,220,0.5)", - strokeColor : "rgba(220,220,220,1)", - barStrokeWidth: 1, - barValueSpacing: 1, - barDatasetSpacing: 1, - data : #{@stats[scope].to_json} - } - ] - } - var ctx = $("##{scope}").get(0).getContext("2d"); - new Chart(ctx).Bar(data,{"scaleOverlay": true, responsive: true, maintainAspectRatio: false}); - -:javascript - $("#event-stats").tablesorter(); +- page_title "Contribution Analytics" +- header_title group_title(@group, "Contribution Analytics", group_analytics_path(@group)) +- content_for :page_specific_javascripts do + = page_specific_javascript_bundle_tag('lib_chart') + +.sub-header-block + .pull-right + .dropdown.inline + %button.dropdown-toggle.btn{ type: 'button', 'data-toggle' => 'dropdown' } + = icon('calendar-o') + %b.caret + %ul.dropdown-menu.dropdown-menu-align-right + %li + = link_to group_analytics_path(@group, start_date: Date.today - 1.week) do + Last week + %li + = link_to group_analytics_path(@group, start_date: Date.today - 1.month) do + Last month + %li + = link_to group_analytics_path(@group, start_date: Date.today - 3.months) do + Last 3 months + .oneline + Contribution analytics for issues, merge requests and push events since #{@start_date} + +%h3 Push + +.row + .col-md-4 + %ul + %li + = @events.code_push.count + times + %li + more than + = @events.code_push.map(&:commits_count).sum + commits + %li + by + = pluralize @events.code_push.pluck(:author_id).uniq.count, 'person' + + .col-md-8 + %div + %p.light Push events per group member + %canvas#push{ height: 250 } + +%h3 Merge Requests + +.row + .col-md-4 + %ul + %li + = @events.merge_requests.created.count + created + %li + = @events.merge_requests.merged.count + accepted + + .col-md-8 + %div + %p.light Merge requests created per group member + %canvas#merge_requests{ height: 250 } + +%h3 Issues + +.row + .col-md-4 + %ul + %li + = @events.issues.created.count + created + %li + = @events.issues.closed.pluck(:target_id).uniq.count + closed + + .col-md-8 + %div + %p.light Issues closed per group member + %canvas#issues{ height: 250 } + +.gray-content-block + .oneline + Contributions per group member + +.table-holder + %table.table.sortable-table#event-stats + %thead + %tr + %th.sortable + Name + = icon('sort') + %th.sortable + Pushed + = icon('sort') + %th.sortable + Opened issues + = icon('sort') + %th.sortable + Closed issues + = icon('sort') + %th.sortable + Opened MR + = icon('sort') + %th.sortable + Accepted MR + = icon('sort') + %th.sortable + Total Contributions + = icon('sort') + %tbody + - @users.each do |user| + %tr + %td + %strong + = link_to user.name, user + %td= @events.code_push.where(author_id: user).count + %td= @events.issues.created.where(author_id: user).count + %td= @events.issues.closed.where(author_id: user).count + %td= @events.merge_requests.created.where(author_id: user).count + %td= @events.merge_requests.merged.where(author_id: user).count + %td= @events.where(author_id: user).count + + + +- [:push, :issues, :merge_requests].each do |scope| + :javascript + var data = { + labels : #{@users.map(&:name).to_json}, + datasets : [ + { + fillColor : "rgba(220,220,220,0.5)", + strokeColor : "rgba(220,220,220,1)", + barStrokeWidth: 1, + barValueSpacing: 1, + barDatasetSpacing: 1, + data : #{@stats[scope].to_json} + } + ] + } + var ctx = $("##{scope}").get(0).getContext("2d"); + new Chart(ctx).Bar(data,{"scaleOverlay": true, responsive: true, maintainAspectRatio: false}); + +:javascript + $("#event-stats").tablesorter(); -- GitLab