def _do_sync(data, user): "Run updates" resource_id = data.info.application.id.raw for item in data.result: item_id = None if 'id' in item.raw: item_id = item.id.raw dups = _find_duplicates(resource_id, item, user) if dups: for event in dups: try: event.add_nuvius_resource(resource_id, item_id) event.name = item.title.raw if item.date: idate = item.date[0] event.start = datetime(*idate.start.raw[:6]) event.end = datetime(*idate.end.raw[:6]) event.auto_notify = False event.save() except: pass else: try: event = Event() event.add_nuvius_resource(resource_id, item_id) event.name = item.title.raw if item.date: idate = item.date[0] event.start = datetime(*idate.start.raw[:6]) event.end = datetime(*idate.end.raw[:6]) event.auto_notify = False event.set_user(user) event.save() except: pass _clean_missing(resource_id, data.result, user)