Packages
exq
0.23.0
0.23.0
0.22.0
0.21.0
0.20.0
0.19.0
0.18.0
0.17.0
0.16.2
0.16.1
0.16.0
0.15.0
0.14.0
0.13.5
0.13.4
0.13.3
0.13.2
0.13.1
0.13.0
0.12.2
0.12.1
0.12.0
0.11.0
0.10.1
0.10.0
0.9.1
0.9.0
0.8.7
0.8.6
0.8.5
0.8.4
0.8.3
0.8.2
0.8.1
0.8.0
0.7.3
0.7.2
0.7.1
0.7.0
0.6.5
0.6.4
0.6.3
0.6.2
0.6.1
0.6.0
0.5.0
0.4.4
0.4.3
0.4.2
0.4.1
0.4.0
0.3.0
0.2.3
0.2.2
0.2.1
0.2.0
0.1.4
0.1.3
0.1.2
0.1.1
0.1.0
0.0.2
Exq is a job processing library compatible with Resque / Sidekiq for the Elixir language.
Current section
Files
Jump to
Current section
Files
lib/exq/support/time.ex
defmodule Exq.Support.Time do
@moduledoc """
Helper functions for data and time.
"""
import DateTime, only: [utc_now: 0, to_unix: 2, from_unix!: 2]
def offset_from_now(offset) do
now_micro_sec = utc_now() |> to_unix(:microsecond)
now = now_micro_sec
from_unix!(round(now + offset * 1_000_000), :microsecond)
end
def time_to_score(time \\ utc_now()) do
time
|> unix_seconds
|> Float.to_string()
end
def unix_seconds(time \\ utc_now()) do
to_unix(time, :microsecond) / 1_000_000.0
end
def format_current_date(current_date) do
date_time =
%{current_date | microsecond: {0, 0}}
|> DateTime.to_string()
date =
current_date
|> DateTime.to_date()
|> Date.to_string()
{date_time, date}
end
end