Sha256: e43085467cded4cf76096492ffe3baa32d27e393d0210ac055dd5693e5d87115

Contents?: true

Size: 1.75 KB

Versions: 5

Compression:

Stored size: 1.75 KB

Contents

require_dependency "hubstats/application_controller"

module Hubstats
  class UsersController < ApplicationController

    def index 
      if params[:query]
        @users = Hubstats::User.where("login LIKE ?", "%#{params[:query]}%").order("login ASC")
      elsif params[:id]
        @users = Hubstats::User.where(id: params[:id].split(",")).order("login ASC")
      else
        @users = Hubstats::User.with_pulls_or_comments(@timespan)
      end
      
      respond_to do |format|
        format.html # index.html.erb
        format.json { render :json => @users}
      end
    end

    def show
      @user = Hubstats::User.where(login: params[:id]).first
      @pull_requests = Hubstats::PullRequest.belonging_to_user(@user.id).closed_since(@timespan).order("closed_at DESC").limit(20)
      @comments = Hubstats::Comment.belonging_to_user(@user.id).created_since(@timespan).order("created_at DESC").limit(20)
      @review = Hubstats::User.pulls_reviewed_count(@timespan).where(login: params[:id]).first
      @stats = {
        pull_count: Hubstats::PullRequest.belonging_to_user(@user.id).closed_since(@timespan).count(:all),
        comment_count: Hubstats::Comment.belonging_to_user(@user.id).created_since(@timespan).count(:all),
        review_count: @review ? @review.reviews_count : 0,
        avg_additions: Hubstats::PullRequest.closed_since(@timespan).belonging_to_user(@user.id).average(:additions).to_i,
        avg_deletions: Hubstats::PullRequest.closed_since(@timespan).belonging_to_user(@user.id).average(:deletions).to_i,
        net_additions: Hubstats::PullRequest.closed_since(@timespan).belonging_to_user(@user.id).sum(:additions).to_i - Hubstats::PullRequest.closed_since(@timespan).belonging_to_user(@user.id).sum(:deletions).to_i
      }
    end

  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
hubstats-0.0.16 app/controllers/hubstats/users_controller.rb
hubstats-0.0.15 app/controllers/hubstats/users_controller.rb
hubstats-0.0.14 app/controllers/hubstats/users_controller.rb
hubstats-0.0.13 app/controllers/hubstats/users_controller.rb
hubstats-0.0.12 app/controllers/hubstats/users_controller.rb