def add_tag_to_face(face_id, tag_id, user): # check if user already tagged with same tag global TaggedFace global FacePictures if TaggedFace.find({'from': user.get('ident'), _FACE_ID: face_id, 'tag': tag_id}).count(): return False # create tag object TaggedFace.insert({'from': user.get('ident'), 'from_type': user.get('type'), _FACE_ID: face_id, 'tag': tag_id, 'datetime': now()}) face = get_face_from(face_id) # update face tags list face.update({'tags': face_tags_dict_for(face=face)}) # maybe update main tag of face face.update({'tag': main_tag_for(face=face)}) # save face FacePictures.save(face) # maybe update winner cache update_winner_cache_if_winner(face)
def update_face(face, data): global FacePictures face.update(data) FacePictures.save(face)