Sha256: 2f8061757ef6c51dfd07aaee7f4df1a51698482ab3a102d1a8a919d25ab4584a

Contents?: true

Size: 827 Bytes

Versions: 4

Compression:

Stored size: 827 Bytes

Contents

# frozen_string_literal: true

module CanvasSync::JobBatches::Sidekiq
  module Web
    module Helpers
      VIEW_PATH    = File.expand_path("../web/views", __dir__)

      module_function

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

      def drain_zset(key)
        items, _ = Batch.redis do |r|
          r.multi do
            r.zrange(key, 0, -1)
            r.zremrangebyrank(key, 0, -1)
          end
        end
        yield items
      end

      def safe_relative_time(time)
        time = parse_time(time)
        relative_time(time)
      end

      def parse_time(time)
        case time
        when Time
          time
        when Integer, Float
          Time.at(time)
        else
          Time.parse(time.to_s)
        end
      end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
canvas_sync-0.17.29 lib/canvas_sync/job_batches/sidekiq/web/helpers.rb
canvas_sync-0.17.28 lib/canvas_sync/job_batches/sidekiq/web/helpers.rb
canvas_sync-0.17.27 lib/canvas_sync/job_batches/sidekiq/web/helpers.rb
canvas_sync-0.17.27.beta1 lib/canvas_sync/job_batches/sidekiq/web/helpers.rb