module ResqueAdmin::Scheduler::Server::ServerMethods

Public Instance Methods

delayed() click to toggle source
# File lib/resque/scheduler/server.rb, line 83
def delayed
  erb scheduler_template('delayed')
end
delayed_cancel_now() click to toggle source
# File lib/resque/scheduler/server.rb, line 125
def delayed_cancel_now
  klass = ResqueAdmin::Scheduler::Util.constantize(params['klass'])
  timestamp = params['timestamp']
  args = ResqueAdmin.decode params['args']
  ResqueAdmin.remove_delayed_job_from_timestamp(timestamp, klass, *args)
  redirect u('/delayed')
end
delayed_clear() click to toggle source
# File lib/resque/scheduler/server.rb, line 133
def delayed_clear
  ResqueAdmin.reset_delayed_queue
  redirect u('delayed')
end
delayed_jobs_klass() click to toggle source
# File lib/resque/scheduler/server.rb, line 87
def delayed_jobs_klass
  begin
    klass = ResqueAdmin::Scheduler::Util.constantize(params[:klass])
    @args = JSON.load(URI.decode(params[:args]))
    @timestamps = ResqueAdmin.scheduled_at(klass, *@args)
  rescue
    @timestamps = []
  end

  erb scheduler_template('delayed_schedules')
end
delayed_queue_now() click to toggle source
# File lib/resque/scheduler/server.rb, line 108
def delayed_queue_now
  timestamp = params['timestamp'].to_i
  formatted_time = Time.at(timestamp).strftime(
    ::ResqueAdmin::Scheduler::Server::TIMESTAMP_FORMAT
  )

  if timestamp > 0
    unless ResqueAdmin::Scheduler.enqueue_next_item(timestamp)
      @error_message = "Unable to remove item at #{formatted_time}"
    end
  else
    @error_message = "Incorrect timestamp #{formatted_time}"
  end

  erb scheduler_template('delayed')
end
delayed_timestamp() click to toggle source
# File lib/resque/scheduler/server.rb, line 104
def delayed_timestamp
  erb scheduler_template('delayed_timestamp')
end
delete_schedule() click to toggle source
# File lib/resque/scheduler/server.rb, line 75
def delete_schedule
  if ResqueAdmin::Scheduler.dynamic
    job_name = params['job_name'] || params[:job_name]
    ResqueAdmin.remove_schedule(job_name)
  end
  redirect u('/schedule')
end
schedule() click to toggle source
# File lib/resque/scheduler/server.rb, line 39
def schedule
  ResqueAdmin.reload_schedule! if ResqueAdmin::Scheduler.dynamic
  erb scheduler_template('scheduler')
end
schedule_requeue() click to toggle source
# File lib/resque/scheduler/server.rb, line 44
def schedule_requeue
  @job_name = params['job_name'] || params[:job_name]
  config = ResqueAdmin.schedule[@job_name]
  @parameters = config['parameters'] || config[:parameters]
  if @parameters
    erb scheduler_template('requeue-params')
  else
    ResqueAdmin::Scheduler.enqueue_from_config(config)
    redirect u('/overview')
  end
end
schedule_requeue_with_params() click to toggle source
# File lib/resque/scheduler/server.rb, line 56
def schedule_requeue_with_params
  job_name = params['job_name'] || params[:job_name]
  config = ResqueAdmin.schedule[job_name]
  # Build args hash from post data (removing the job name)
  submitted_args = params.reject do |key, _value|
    key == 'job_name' || key == :job_name
  end

  # Merge constructed args hash with existing args hash for
  # the job, if it exists
  config_args = config['args'] || config[:args] || {}
  config_args = config_args.merge(submitted_args)

  # Insert the args hash into config and queue the resque_admin job
  config = config.merge('args' => config_args)
  ResqueAdmin::Scheduler.enqueue_from_config(config)
  redirect u('/overview')
end