# Class DashboardController < ApplicationController

- app/controllers/dashboard_controller.rb

Methods

D
  - dashboard_filter
E
  - event_filter
I
  - index,
  - issues
M
  - merge_requests
P
  - projects

Instance Public methods
index() Link

Source: show

    # File app/controllers/dashboard_controller.rb, line 7
    def index
      @groups = current_user.authorized_groups

      @has_authorized_projects = @projects.count > 0

      @projects = case params[:scope]
                  when 'personal' then
                    @projects.personal(current_user)
                  when 'joined' then
                    @projects.joined(current_user)
                  else
                    @projects
                  end

      @projects = @projects.page(params[:page]).per(30)

      @events = Event.in_projects(current_user.project_ids)
      @events = @event_filter.apply_filter(@events)
      @events = @events.limit(20).offset(params[:offset] || 0)

      @last_push = current_user.recent_push

      respond_to do |format|
        format.html
        format.js
        format.atom { render layout: false }
      end
    end

issues() Link

Get only assigned issues

Source: show

    # File app/controllers/dashboard_controller.rb, line 44
    def issues
      @issues = current_user.assigned_issues
      @issues = dashboard_filter(@issues)
      @issues = @issues.recent.page(params[:page]).per(20)
      @issues = @issues.includes(:author, :project)

      respond_to do |format|
        format.html
        format.atom { render layout: false }
      end
    end

merge_requests() Link

Get authored or assigned open merge requests

Source: show

    # File app/controllers/dashboard_controller.rb, line 37
    def merge_requests
      @merge_requests = current_user.cared_merge_requests
      @merge_requests = dashboard_filter(@merge_requests)
      @merge_requests = @merge_requests.recent.page(params[:page]).per(20)
    end

Instance Protected methods
dashboard_filter(items) Link

Source: show

    # File app/controllers/dashboard_controller.rb, line 66
    def dashboard_filter items
      if params[:project_id]
        items = items.where(project_id: params[:project_id])
      end

      if params[:search].present?
        items = items.search(params[:search])
      end

      case params[:status]
      when 'closed'
        items.closed
      when 'all'
        items
      else
        items.opened
      end
    end

event_filter() Link

Source: show

    # File app/controllers/dashboard_controller.rb, line 62
    def event_filter
      @event_filter ||= EventFilter.new(params[:event_filter])
    end

projects() Link

Source: show

    # File app/controllers/dashboard_controller.rb, line 58
    def projects
      @projects = current_user.authorized_projects.sorted_by_activity
    end