Class: QueueClassicAdmin::QueueClassicJobsController

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

Instance Method Summary collapse

Instance Method Details

#bulk_custom_actionObject



26
27
28
29
30
31
# File 'app/controllers/queue_classic_admin/queue_classic_jobs_controller.rb', line 26

def bulk_custom_action
  custom_action = QueueClassicAdmin.custom_bulk_actions[params[:custom_action]]
  custom_action.action.call(@queue_classic_jobs)

  redirect_to queue_classic_jobs_url
end

#customObject



44
45
46
47
48
# File 'app/controllers/queue_classic_admin/queue_classic_jobs_controller.rb', line 44

def custom
  custom_action = QueueClassicAdmin.custom_actions[params[:custom_action]]
  custom_action.action.call(@queue_classic_job)
  redirect_to :back
end

#destroyObject



11
12
13
14
# File 'app/controllers/queue_classic_admin/queue_classic_jobs_controller.rb', line 11

def destroy
  @queue_classic_job.destroy
  redirect_to :back
end

#destroy_allObject



16
17
18
19
# File 'app/controllers/queue_classic_admin/queue_classic_jobs_controller.rb', line 16

def destroy_all
  @queue_classic_jobs.delete_all
  redirect_to queue_classic_jobs_url
end

#indexObject



7
8
9
# File 'app/controllers/queue_classic_admin/queue_classic_jobs_controller.rb', line 7

def index
  @queue_classic_jobs = @queue_classic_jobs.paginate(page: params[:page])
end

#showObject



39
40
41
42
# File 'app/controllers/queue_classic_admin/queue_classic_jobs_controller.rb', line 39

def show
  query = "SELECT * FROM pg_catalog.pg_locks lock JOIN pg_catalog.pg_stat_activity stat ON lock.pid = stat.pid WHERE lock.pid = #{@queue_classic_job.locked_by.to_i}"
  @locks = QueueClassicJob.connection.execute(query)
end

#unlockObject



33
34
35
36
37
# File 'app/controllers/queue_classic_admin/queue_classic_jobs_controller.rb', line 33

def unlock
  @queue_classic_job.locked_at = nil
  @queue_classic_job.save
  redirect_to :back
end

#unlock_allObject



21
22
23
24
# File 'app/controllers/queue_classic_admin/queue_classic_jobs_controller.rb', line 21

def unlock_all
  @queue_classic_jobs.where('locked_at < ?', 5.minutes.ago).update_all(locked_at: nil)
  redirect_to queue_classic_jobs_url
end