Sha256: 296c2bfb9e2c3736b8d37aca5d8ab762c0efd34b11be36236091ca8ae3399adc

Contents?: true

Size: 1.33 KB

Versions: 2

Compression:

Stored size: 1.33 KB

Contents

require_dependency "hubstats/application_controller"

module Hubstats
  class PullRequestsController < ApplicationController

    def index
      URI.decode(params[:label]) if params[:label]

      @pull_requests = Hubstats::PullRequest
        .belonging_to_users(params[:users])
        .belonging_to_repos(params[:repos])
        .with_state(params[:state])
        .state_based_order(@timespan,params[:state],params[:order])

      pull_ids =@pull_requests.map(&:id)
      
      @labels = Hubstats::Label.with_a_pull_request(pull_ids).order("pull_request_count DESC")
      @pull_requests = @pull_requests
        .includes(:user).includes(:repo)
        .with_label(params[:label]).distinct
        .paginate(:page => params[:page], :per_page => 15)
    end 

    def show
      @repo = Hubstats::Repo.where(name: params[:repo]).first
      @pull_request = Hubstats::PullRequest.belonging_to_repo(@repo.id).where(id: params[:id]).first
      @comments = Hubstats::Comment.belonging_to_pull_request(params[:id]).includes(:user).created_since(@timespan).limit(20)
      @comment_count = Hubstats::Comment.belonging_to_pull_request(params[:id]).includes(:user).created_since(@timespan).count(:all)
      @stats = {
        comment_count: @comment_count,
        net_additions: @pull_request.additions.to_i - @pull_request.deletions.to_i
      }
    end

  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
hubstats-0.0.23 app/controllers/hubstats/pull_requests_controller.rb
hubstats-0.0.22 app/controllers/hubstats/pull_requests_controller.rb