aboutsummaryrefslogtreecommitdiffstats
path: root/calendar/timeutil.c
diff options
context:
space:
mode:
authorArturo Espinosa <unammx@src.gnome.org>1998-04-01 11:41:40 +0800
committerArturo Espinosa <unammx@src.gnome.org>1998-04-01 11:41:40 +0800
commitb254597d852bb11492d11c8ae6976e4f58ea0d42 (patch)
treee037a51de6c7ac3b78dfda454c2b20d7234632af /calendar/timeutil.c
parentd9508281e8dc0ec2a9336a594d0fe2a6d57bd24b (diff)
downloadgsoc2013-evolution-b254597d852bb11492d11c8ae6976e4f58ea0d42.tar.gz
gsoc2013-evolution-b254597d852bb11492d11c8ae6976e4f58ea0d42.tar.zst
gsoc2013-evolution-b254597d852bb11492d11c8ae6976e4f58ea0d42.zip
iCalendar/vCalendar time utilties
svn path=/trunk/; revision=81
Diffstat (limited to 'calendar/timeutil.c')
-rw-r--r--calendar/timeutil.c29
1 files changed, 29 insertions, 0 deletions
diff --git a/calendar/timeutil.c b/calendar/timeutil.c
new file mode 100644
index 0000000000..2de1fa4b2b
--- /dev/null
+++ b/calendar/timeutil.c
@@ -0,0 +1,29 @@
+#include <glib.h>
+#include <time.h>
+
+#define digit_at(x,y) (x [y] - '0')
+
+time_t
+time_from_isodate (char *str)
+{
+ struct tm my_tm;
+
+ my_tm.tm_year = digit_at (str, 0) * 1000 + digit_at (str, 1) * 100 +
+ digit_at (str, 2) * 10 + digit_at (str, 3);
+
+ my_tm.tm_mon = digit_at (str, 4) * 10 + digit_at (str, 5);
+ my_tm.tm_mday = digit_at (str, 6) * 10 + digit_at (str, 7);
+ my_tm.tm_hour = digit_at (str, 9) * 10 + digit_at (str, 10);
+ my_tm.tm_min = digit_at (str, 11) * 10 + digit_at (str, 12);
+ my_tm.tm_sec = digit_at (str, 13) * 10 + digit_at (str, 14);
+ my_tm.tm_isdst = -1;
+
+ return mktime (&my_tm);
+}
+
+time_t
+time_from_start_duration (time_t start, char *duration)
+{
+ printf ("Not yet implemented\n");
+ return 0;
+}