Example #1
0
def get_gallery_faces(sort_order='-chrono', with_tags=None,
                      limit=9, user_id=None, page=0):
    '''

        sort_order:
            'chrono', '-chrono': chronological order
            'score', '-score': sorted by score

        add if user_id has tagged each picture'''
    global FacePictures
    if sort_order == '-chrono':
        sort_query = {'datetime': -1}
    elif sort_order == 'chrono':
        sort_query = {'datetime': 1}
    elif sort_order == '-score':
        sort_query = {'score': -1}
    elif sort_order == 'score':
        sort_query = {'score': 1}
    else:
        # default soring order
        sort_query = {'datetime': -1}

    query = {'tag': {'$in': with_tags}}

    return FacePictures.find(query,
                             sort=sort_query,
                             limit=limit,
                             skip=page * limit)
Example #2
0
def get_random_face(extra_query=None, update_views=False):
    global FacePictures
    cursor = FacePictures.find(extra_query)
    nb_faces = cursor.count()
    rand = random.randint(0, nb_faces - 1)
    try:
        face = cursor[rand:rand][0]
        add_one_view_to(face)
        return face
    except KeyError:
        return None
Example #3
0
def get_faces_for_raw_picture(facebook_id):
    return FacePictures.find({_FACEBOOK_ID: facebook_id})
Example #4
0
def get_faces_for_raw_picture(facebook_id):
    return FacePictures.find({_FACEBOOK_ID: facebook_id})