Days value is not calculating property, it gives 61 days on reaching 30 days. How to correct this. Solutions??
defp time_display(date_joined) do
date_joined = NaiveDateTime.to_date(date_joined)
IO.inspect(date_joined, label: "date joined => ")
years =
Timex.diff(DateTime.utc_now() |> DateTime.to_date(), date_joined, :years)
|> IO.inspect(label: "years => ")
date_joined = if years == 0, do: date_joined, else: Timex.shift(date_joined, years: -years) |> IO.inspect(label: "date joined after years => ")
months =
Timex.diff(DateTime.utc_now() |> DateTime.to_date(), date_joined, :months)
|> IO.inspect(label: "months => ")
date_joined = if months == 0, do: date_joined, else: Timex.shift(date_joined, months: -months) |> IO.inspect(label: "date joined after months => ")
**days =**
** Timex.diff(DateTime.utc_now() |> DateTime.to_date(), date_joined, :days)**
** |> IO.inspect(label: "days => ")**
display(years, months, days)
end
defp display(0, 0, days), do: "#{days}" <> gettext(" days ")
defp display(0, months, days), do: "#{months}" <> gettext(" months ") <> "#{days}" <> gettext(" days ")
defp display(years, months, days),
do:
"#{years}" <>
gettext(" years ") <> "#{months}" <> gettext(" months ") <> "#{days}" <> gettext(" days ")