Class: DashboardController

Inherits:
ApplicationController show all
Defined in:
app/controllers/dashboard_controller.rb

Instance Method Summary collapse

Methods inherited from ApplicationController

#add_breadcrumb, #after_sign_in_path_for, #breadcrumbs, #new_session_path, #require_admin_user

Instance Method Details

#dash_adminObject



37
38
39
40
41
# File 'app/controllers/dashboard_controller.rb', line 37

def dash_admin
  if params.key?("dashtab")
    session[:dashtab] = params[:dashtab]
  end
end

#dash_projectObject



31
32
33
34
35
# File 'app/controllers/dashboard_controller.rb', line 31

def dash_project
  if params.key?("dashtab")
    session[:dashtab] = params[:dashtab]
  end
end

#emulateObject



20
21
22
23
24
25
26
27
28
29
# File 'app/controllers/dashboard_controller.rb', line 20

def emulate
  return if Rails.env.production?

  absolute_user = User.find(current_user.id)
  return unless absolute_user.trainer?

  if params.key?("emulation_menu")
    session[:emulation_role] = params[:emulation_menu]
  end
end

#indexObject

rubocop:disable Metrics/AbcSize



5
6
7
8
9
10
11
12
13
14
15
16
17
18
# File 'app/controllers/dashboard_controller.rb', line 5

def index # rubocop:disable Metrics/AbcSize
  @pending_projects = Project.pending_projects.map { |project| ProjectDashboardPresenter.new(project) }
  @approved_projects = Project.approved_projects.map { |project| ProjectDashboardPresenter.new(project) }
  @eligible_data_user = true if !current_user.eligible_sponsor? && !current_user.eligible_manager?

  @dashboard_projects = Project.users_projects(@current_user).map { |project| ProjectDashboardPresenter.new(project) }

  @my_inventory_requests = current_user.user_requests.where(type: "FileInventoryRequest")
  @dash_session = "project"
  session[:dashtab] ||= @dash_session
  @dash_session = session[:dashtab]
  @session_id = current_user.mediaflux_session
  @emulation_role = session[:emulation_role] || "Not Emulating"
end