String Utils::GetRelativeTimeFromTimeStamp(DateTime receivedTime) { DateTime currentTime; //DateTime receivedTime; String relativeTime; int mins = 0; int hours = 0; int days = 0; SystemTime::GetCurrentTime(WALL_TIME, currentTime); //receivedTime = Utils::ConvertUtcTimeToStardardTime(timeStamp); TimeSpan timeDiff = (currentTime.GetTime() - receivedTime.GetTime()); days = timeDiff.GetDays(); hours = timeDiff.GetHours(); mins = timeDiff.GetMinutes(); if(days >= 1) { relativeTime.Format(20, L"%d days ago", days); } else if (hours > 0) relativeTime.Format(20, L"%dhr%dmin ago",hours, mins); else relativeTime.Format(20, L"%dmin ago", mins); return relativeTime; }
String Utils::formatDelay(TimeSpan delay){ int hour = delay.GetHours(); int min = delay.GetMinutes(); if(min==0 && hour ==0) return L""; String time = L"+" + Integer::ToString(hour)+ L"H"; if(min < 10) time += L"0"; time += Integer::ToString(min); return time; }
String Utils::formatTime(TimeSpan duration){ int hour = duration.GetHours(); int min = duration.GetMinutes(); String time; if(hour<10) time += L"0"; time += Integer::ToString(hour)+ L":"; if(min < 10) time += L"0"; time += Integer::ToString(min); return time; }