convertSecondsToCountdownTime function

CountdownTime convertSecondsToCountdownTime(
  1. int totalSeconds
)

Converts a total number of seconds into a CountdownTime using fixed factors: 1 year = 365 days, 1 month = 30 days, 1 week = 7 days.

Implementation

CountdownTime convertSecondsToCountdownTime(int totalSeconds) {
  int rem = totalSeconds;
  int years = rem ~/ (365 * 86400);
  rem %= (365 * 86400);
  int months = rem ~/ (30 * 86400);
  rem %= (30 * 86400);
  int weeks = rem ~/ (7 * 86400);
  rem %= (7 * 86400);
  int days = rem ~/ 86400;
  rem %= 86400;
  int hours = rem ~/ 3600;
  rem %= 3600;
  int minutes = rem ~/ 60;
  int seconds = rem % 60;
  return CountdownTime(
    years: years,
    months: months,
    weeks: weeks,
    days: days,
    hours: hours,
    minutes: minutes,
    seconds: seconds,
  );
}