convertTimeToText function

String convertTimeToText(
  1. int timestamp,
  2. String suffix
)

Implementation

String convertTimeToText(int timestamp, String suffix) {
  String convTime = "";

  try {
    DateTime dateTime2 = DateTime.fromMillisecondsSinceEpoch(timestamp);
    DateTime dateTime1 = DateTime.fromMillisecondsSinceEpoch(DateTime.now().millisecondsSinceEpoch);

    int second = dateTime1.difference(dateTime2).inSeconds;
    int minute = dateTime1.difference(dateTime2).inMinutes;
    int hour = dateTime1.difference(dateTime2).inHours;
    int day = dateTime1.difference(dateTime2).inDays;

    if (second < 60) {
      convTime = "${second}s $suffix";
    } else if (minute < 60) {
      convTime = "${minute}min $suffix";
    } else if (hour < 24) {
      convTime = "${hour}hr $suffix";
    } else if (day >= 7) {
      if (day > 360) {
        convTime = "${day ~/ 360}yr $suffix";
      } else if (day > 30) {
        convTime = "${day ~/ 30}mon $suffix";
      } else {
        convTime = "${day ~/ 7}w $suffix";
      }
    } else if (day < 7) {
      convTime = "${day}d $suffix";
    }
  } catch (e) {
    print(e.toString() + "------");
  }

  return convTime;
}