Willcode4cash icon

Pretty-fied Date

Willcode4cash | PRO | 08/15/16 03:53:28 AM UTC | 0 ⭐ | 285 👁️ | Never ⏰ | []
C# |

740 B

|

None

|

0 👍

/

0 👎

public static string AsPrettifiedDate(this DateTime dateTime)
{
    var dateDiff = DateTime.Now.Subtract(dateTime);
    var dayDiff = (int)dateDiff.TotalDays;
    var secDiff = (int)dateDiff.TotalSeconds;
    if (dayDiff < 0 || dayDiff >= 31) return string.Empty;
 
    if (dayDiff == 0)
    {
        if (secDiff < 60) return "just now";
        if (secDiff < 120) return "1 minute ago";
        if (secDiff < 3600) return $"{Math.Floor((double)secDiff / 60)} minutes ago";
        if (secDiff < 7200) return "1 hour ago";
        if (secDiff < 86400) return $"{Math.Floor((double)secDiff / 3600)} hours ago";
    }
 
    if (dayDiff == 1) return "yesterday";
    if (dayDiff < 7) return $"{dayDiff} days ago";
    return dayDiff < 31 ? $"{Math.Ceiling((double)dayDiff / 7)} weeks ago" : string.Empty;
}

Comments