aboutsummaryrefslogtreecommitdiff
path: root/src/Costasdev.Busurbano.ServiceViewer/Data/Extensions/TimeExtensions.cs
diff options
context:
space:
mode:
Diffstat (limited to 'src/Costasdev.Busurbano.ServiceViewer/Data/Extensions/TimeExtensions.cs')
-rw-r--r--src/Costasdev.Busurbano.ServiceViewer/Data/Extensions/TimeExtensions.cs20
1 files changed, 20 insertions, 0 deletions
diff --git a/src/Costasdev.Busurbano.ServiceViewer/Data/Extensions/TimeExtensions.cs b/src/Costasdev.Busurbano.ServiceViewer/Data/Extensions/TimeExtensions.cs
new file mode 100644
index 0000000..7fa487d
--- /dev/null
+++ b/src/Costasdev.Busurbano.ServiceViewer/Data/Extensions/TimeExtensions.cs
@@ -0,0 +1,20 @@
+namespace Costasdev.ServiceViewer.Data.Extensions;
+
+public static class TimeExtensions
+{
+ extension(TimeSpan) {
+ public static TimeSpan FromGtfsTime(string gtfsTime)
+ {
+ var parts = gtfsTime.Split(":", 3);
+
+ var hours = int.Parse(parts[0]);
+ var minutes = int.Parse(parts[1]);
+ var seconds = int.Parse(parts[2]);
+
+ int days = hours / 24;
+ int leftoverHours = hours % 24;
+
+ return new TimeSpan(days, leftoverHours, minutes, seconds);
+ }
+ }
+}