Ejemplo n.º 1
0
def remove_from_closet():
    data = request.get_json()
    user_info = get_jwt_identity()
    user = find_user_by_email(user_info['email'])
    user_id = user['_id']
    if user:
        closet_id = user['closet']
        item_id = data['item_id']
        formatted_item_id = convert_to_ObjectId(item_id)
        try:
            remove_item_from_closet(closet_id, formatted_item_id)
        except LookupError as err:
            return jsonify({'ok': False, 'message': str(err)}), 404
        except:
            return jsonify({'ok': False, 'message': 'Unexpected error'}), 404
        else:
            LOG.info('Removed item {} from closet {} for user {}'.format(
                item_id, closet_id, user_id))
            return jsonify({'ok': True, 'data': {}}), 200
    else:
        return jsonify({
            'ok':
            False,
            'message':
            'Bad user info: {}'.format(user_info['email'])
        }), 400
Ejemplo n.º 2
0
def add_to_wishlist():
    data = request.get_json()
    user_info = get_jwt_identity()
    user = find_user_by_email(user_info['email'])
    user_id = user['_id']
    if user:
        wishlist_id = user['wishlist']
        item_id = data['item_id']
        formatted_item_id = convert_to_ObjectId(item_id)
        try:
            add_item_to_wishlist(wishlist_id, formatted_item_id)
        except LookupError as err:
            return jsonify({'ok': False, 'message': str(err)}), 404
        except:
            return jsonify({'ok': False, 'message': 'Unexpected error'}), 404
        else:
            LOG.info('Added item {} to wishlist {} for user {}'.format(
                item_id, wishlist_id, user_id))
            return jsonify({'ok': True, 'data': {}}), 200
    else:
        return jsonify({
            'ok':
            False,
            'message':
            'Bad user info: {}'.format(user_info['email'])
        }), 400
Ejemplo n.º 3
0
def fetch_closet_item_list(id):
    formatted_id = convert_to_ObjectId(id)
    try:
        closet = find_closet_by_id(formatted_id)
    except LookupError as err:
        return jsonify({'ok': False, 'message': str(err)}), 404
    except:
        return jsonify({'ok': False, 'message': 'Unexpected error'}), 404
    else:
        item_list = closet['clothing_items']
        return jsonify({'ok': True, 'data': item_list}), 200
Ejemplo n.º 4
0
def fetch_wishlist(id):
    formatted_id = convert_to_ObjectId(id)
    try:
        wishlist = find_wishlist_by_id(formatted_id)
        item_list = wishlist['clothing_items']
        formatted_item_list = map(convert_to_ObjectId, item_list)
        clothingitem_list = find_clothinglist_by_ids(formatted_item_list)
    except LookupError as err:
        return jsonify({'ok': False, 'message': str(err)}), 404
    except:
        return jsonify({'ok': False, 'message': 'Unexpected error'}), 404
    else:
        return jsonify({'ok': True, 'data': clothingitem_list}), 200
Ejemplo n.º 5
0
def fetch_user(user_id):
    formatted_user_id = convert_to_ObjectId(user_id)
    try:
        user = find_user_by_id(formatted_user_id)
        response = {
            'closet_id': user.closet_id,
            'email': user.email,
            'id': user.id,
            'name': user.name,
            'wishlist_id': user.wishlist_id
        }
    except LookupError as err:
        return jsonify({'ok': False, 'message': str(err)}), 404
    except:
        return jsonify({'ok': False, 'message': 'Unexpected error'}), 404
    else:
        return jsonify({'ok': True, 'data': response}), 200