# HG changeset patch # User Paul Boddie # Date 1418081161 -3600 # Node ID f3102e4e82e7d931c7fefaf963cda9659d12f228 # Parent 63a1b31f6d0871be494192ffef4e1d99964383f9 Added a free/busy building tool using stored events. diff -r 63a1b31f6d08 -r f3102e4e82e7 tools/make_freebusy.py --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tools/make_freebusy.py Tue Dec 09 00:26:01 2014 +0100 @@ -0,0 +1,38 @@ +#!/usr/bin/env python + +from imiptools.content import format_datetime, get_utc_datetime, get_value, parse_object +from imip_store import FileStore, FilePublisher +import sys + +try: + user = sys.argv[1] +except IndexError: + print >>sys.stderr, "Need a user." + sys.exit(1) + +s = FileStore() +p = FilePublisher() + +l = s.get_events(user) + +objs = [] +for i in l: + print >>sys.stderr, i + objs.append(parse_object(s.get_event(user, i), "utf-8")) + +fb = [] +for obj in objs: + if not obj: + continue + details, details_attr = obj.values()[0] + fb.append((format_datetime(get_utc_datetime(details, "DTSTART")), + format_datetime(get_utc_datetime(details, "DTEND")), + get_value(details, "UID"), + get_value(details, "TRANSP"))) + +fb.sort() + +s.set_freebusy(user, fb) +p.set_freebusy(user, fb) + +# vim: tabstop=4 expandtab shiftwidth=4