comparison multimerge.py @ 26:1267d61f6224

Add function for generating unique internal IDs.
author Matti Hamalainen <ccr@tnsp.org>
date Mon, 04 Jul 2016 15:47:11 +0300
parents d32e4d4ef163
children 824c3e5c6757
comparison
equal deleted inserted replaced
25:d32e4d4ef163 26:1267d61f6224
92 for event in events: 92 for event in events:
93 ev_start = event["start"].get("dateTime", event["start"].get("date")) 93 ev_start = event["start"].get("dateTime", event["start"].get("date"))
94 ev_end = event["end"].get("dateTime", event["end"].get("date")) 94 ev_end = event["end"].get("dateTime", event["end"].get("date"))
95 gcm_print(u"{0:25} - {1:25} : {2}".format(ev_start, ev_end, event["summary"])) 95 gcm_print(u"{0:25} - {1:25} : {2}".format(ev_start, ev_end, event["summary"]))
96 96
97 def gcm_generate_ids(events, calendar_id):
98 if not events:
99 return events
100
101 for ev in events:
102 ev["cal_id"] = calendar_id
103 ev["gcm_id"] = "{0}_{1}".format(calendar_id, ev["id"])
104
105 return events
106
97 107
98 ## 108 ##
99 ## Class for handling configuration / settings 109 ## Class for handling configuration / settings
100 ## 110 ##
101 class GCMSettings(dict): 111 class GCMSettings(dict):
371 showDeleted=False, 381 showDeleted=False,
372 # orderBy="startTime", 382 # orderBy="startTime",
373 ).execute() 383 ).execute()
374 384
375 # Add events, if any, to main list 385 # Add events, if any, to main list
376 events = result.get("items", []) 386 events = gcm_generate_ids(result.get("items", []), calendar["id"])
377 if events: 387 if events:
378 # Add calendar data to events
379 for ev in events:
380 ev["cal_id"] = calendar["id"]
381 ev["gcm_id"] = "{0}_{1}".format(calendar["id"], ev["id"])
382
383 src_events.extend(events) 388 src_events.extend(events)
384
385 if cfg.debug: 389 if cfg.debug:
386 gcm_dump_events(events) 390 gcm_dump_events(events)
387 391
388 392
389 ## Get current events 393 ## Get current events
391 result = service.events().list( 395 result = service.events().list(
392 calendarId=cfg.dest_id, 396 calendarId=cfg.dest_id,
393 singleEvents=True, 397 singleEvents=True,
394 showDeleted=True).execute() 398 showDeleted=True).execute()
395 399
396 dst_events = result.get("items", []) 400 dst_events = gcm_generate_ids(result.get("items", []), cfg.dest_id)
397 if dst_events: 401 if dst_events:
398 gcm_debug(u"Found {0} event(s).".format(len(dst_events))) 402 gcm_debug(u"Found {0} event(s).".format(len(dst_events)))
399 else: 403 else:
400 gcm_debug(u"No current events.") 404 gcm_debug(u"No current events.")
401 405