aboutsummaryrefslogtreecommitdiff
path: root/calendar.h
diff options
context:
space:
mode:
Diffstat (limited to 'calendar.h')
-rw-r--r--calendar.h33
1 files changed, 33 insertions, 0 deletions
diff --git a/calendar.h b/calendar.h
index c7484d05..20b78a9f 100644
--- a/calendar.h
+++ b/calendar.h
@@ -3,6 +3,39 @@
#include "vcal.h"
+/*
+ * Reads all ics flies in path into the given vcomponent. The
+ * component is assumed to be a abstract ROOT element, whose first
+ * component will most likely become a VCALENDAR.
+ *
+ * path should either be a single .ics file (vcalendar), or a
+ * directory directly containing .ics files (vdir).
+ */
int read_vcalendar(vcomponent* cal, char* path);
+/*
+ * Gets extension from filename. Writes output to ext.
+ * Assumes that the extension is the text between the last dot and
+ * the end of the string, and that no slashes can occur between the
+ * dot and the end.
+ *
+ * Returns the length of the extension, 0 if no extension.
+ */
+int get_extension(const char* filename, char* ext, ssize_t max_len);
+
+/* Returns 1 if path has extension ext, 0 otherwise */
+int check_ext (const char* path, const char* ext);
+
+/* Handle a lone ics file */
+int handle_file(vcomponent* cal, char* path);
+
+/* Handle a directory of ics files */
+int handle_dir(vcomponent* cal, char* path);
+
+/*
+ * Helper for opening a single ICS file. Handles file internally, and
+ * writes output to cal.
+ */
+int open_ics (char* resolved_path, vcomponent* cal);
+
#endif /* CALENDAR_H */