app/views/analytics/usage.html.haml
- content_for :after_title, ' - Usage Stats'
= hot_javascript_tag("charts")
%header.main-page
.container
%h1 Usage Stats
.container
%section
.section-header
%h3
= "Total users: #{@user_count}"
%br
= "OAuth users: #{@logged_in_count}"
%br
= "Unique program facilitators / course instructors: #{@course_instructor_count}"
%br
= "Unique project home wikis: #{@home_wiki_count}"
%br
= "Unique wikis interacted with: #{@total_wikis_touched}"
%div.section-header
Courses / Programs over time
- i = 0
- data = Course.all.order(:created_at).map { |c| i += 1; [c.created_at, i.to_i] }
.usage-chart= line_chart([{ name: 'count', data: data }], legend: false)
%div.section-header
- years = 2015..Time.now.year
- courses_data, editors_data, leaders_data, created_data, edited_data, revisions_data = [], [], [], [], [], []
- data = years.map do |year|
- courses = Course.where("year(created_at) = #{year}")
- courses_data << [year.to_s, courses.count]
- editors_data << [year.to_s, CoursesUsers.with_student_role.where(course: courses).pluck(:user_id).uniq.count]
- leaders_data << [year.to_s, CoursesUsers.with_instructor_role.where(course: courses).pluck(:user_id).uniq.count]
- created_data << [year.to_s, courses.sum(:new_article_count)]
- edited_data << [year.to_s, courses.sum(:article_count)]
- revisions_data << [year.to_s, courses.sum(:revision_count)]
Yearly stats (by program creation date)
.usage-chart= column_chart([{ name: 'Program leaders', data: leaders_data }, { name: 'Events', data: courses_data }])
.usage-chart= column_chart([{ name: 'Event participants', data: editors_data }])
.usage-chart= column_chart([{ name: 'Pages Created', data: created_data }, { name: 'Pages Edited', data: edited_data }])
.usage-chart= column_chart([{ name: 'Revisions', data: revisions_data }])
%section
.section-header
Courses / Programs per wiki:
- Wiki.all.order(:language, :project).each do |wiki|
%li
%a{href: "/courses_by_wiki/#{wiki.domain}"}= "#{wiki.domain}: #{Course.where(home_wiki: wiki).count}"
%section
.section-header
%a.button.dark{href: '/all_courses_csv'} Generate CSV of all programs