Module: SidekiqUniqueJobs::Web::Helpers

Defined in:
lib/sidekiq_unique_jobs/web/helpers.rb

Constant Summary collapse

VIEW_PATH =
File.expand_path("../web/views", __dir__)
SAFE_CPARAMS =
%w[cursor prev_cursor].freeze

Instance Method Summary collapse

Instance Method Details

#cparams(options) ⇒ Object



14
15
16
17
18
19
20
21
22
23
24
25
# File 'lib/sidekiq_unique_jobs/web/helpers.rb', line 14

def cparams(options)
  # stringify
  options.keys.each do |key|
    options[key.to_s] = options.delete(key)
  end

  params.merge(options).map do |key, value|
    next unless SAFE_CPARAMS.include?(key)

    "#{key}=#{CGI.escape(value.to_s)}"
  end.compact.join("&")
end

#redirect_to(subpath) ⇒ Object



27
28
29
30
31
32
33
34
35
# File 'lib/sidekiq_unique_jobs/web/helpers.rb', line 27

def redirect_to(subpath)
  if respond_to?(:to)
    # Sinatra-based web UI
    redirect to(subpath)
  else
    # Non-Sinatra based web UI (Sidekiq 4.2+)
    redirect "#{root_path}#{subpath}"
  end
end

#safe_relative_time(time) ⇒ Object



37
38
39
40
41
42
43
44
45
# File 'lib/sidekiq_unique_jobs/web/helpers.rb', line 37

def safe_relative_time(time)
  time = if time.is_a?(Numeric)
           Time.at(time)
         else
           Time.parse(time)
         end

  relative_time(time)
end

#unique_template(name) ⇒ Object



8
9
10
# File 'lib/sidekiq_unique_jobs/web/helpers.rb', line 8

def unique_template(name)
  File.open(File.join(VIEW_PATH, "#{name}.erb")).read
end