Exemple #1
0
def get_bookings_for_user(user_id: ObjectId) -> List[Booking]:
    owner = Owner.objects(id=user_id).first()
    booked_cages = Cage \
        .objects(bookings__guest_snake_id__in=owner.snake_ids) \
        .all()

    return list(booked_cages)
Exemple #2
0
def find_account_by_email(email: str, password: str) -> Owner:
    owner = Owner.objects(email=email).first()
    msg = 0

    if not owner:
        msg = 1
    elif (owner.password != password):
        msg = 2

    return owner, msg
Exemple #3
0
def add_snake(email, name, length, species, is_venomous):

    snake = Snake(name=name,
                  length=length,
                  species=species,
                  is_venomous=is_venomous)
    snake.save()

    num_updated = Owner.objects(email=email).update_one(
        push__snake_ids=snake.id)

    if num_updated != 1:
        raise Exception("No account with email {}".format(email))
def get_bookings_for_user(user_id: bson.ObjectId) -> List[Booking]:
    account = Owner.objects(id=user_id).first()
    booked_cages = Cage.objects() \
        .filter(bookings__guest_owner_id=account.id) \
        .only('bookings', 'name')

    def map_cage_to_booking(cage: Cage, booking: Booking) -> Booking:
        booking.cage = cage
        return booking

    bookings = [
        map_cage_to_booking(c, booking) for c in booked_cages
        for booking in c.bookings if booking.guest_owner_id == account.id
    ]

    return bookings
def addMiss(emailid, pub):
    Owner.objects(email=emailid).update_one(push__miss=pub)
Exemple #6
0
def find_account_by_email(email: str) -> Owner:
    owner = Owner.objects(email=email).first()  # returns query
    return owner
def get_sports_for_user(user_id: bson.ObjectId) -> List[Sport]:
    owner = Owner.objects(id=user_id).first()
    sports = Sport.objects(id__in=owner.sport_ids).all()

    return list(sports)
Exemple #8
0
def get_snakes_for_user(user_id: bson.ObjectId) -> List[Snake]:
    owner = Owner.objects(id=user_id).first()
    snakes = Snake.objects(id__in=owner.snake_ids).all()

    return list(snakes)
def deletePublication(emailid, pub):
    Owner.objects(email=emailid).update_one(pull__publication=pub)
def find_account_by_email(email: str) -> Owner:
    # owner = Owner.objects().filter(email=email).first()
    owner = Owner.objects(
        email=email).first()  # only one filter, remove `).filter(`
    return owner
def deleteGrants(emailid, pub):
    Owner.objects(email=emailid).update_one(pull__grants=pub)
def deleteAwards(emailid, pub):
    Owner.objects(email=emailid).update_one(pull__awards=pub)
def find_account_by_email(email: str) -> Owner:
    owner = Owner.objects().get(Q(email=email))
    if owner:
        return owner
    else:
        return None
def addTeaching(emailid, pub):
    Owner.objects(email=emailid).update_one(push__teaching=pub)
def get_cats_for_user(user_id: bson.ObjectId) -> List[Cat]:
    owner = Owner.objects(id=user_id).first()
    cats = Cat.objects(id__in=owner.cat_ids).all()

    return list(cats)
def addAwards(emailid, pub):
    Owner.objects(email=emailid).update_one(push__awards=pub)
def addGrants(emailid, pub):
    Owner.objects(email=emailid).update_one(push__grants=pub)
def addPublication(emailid, pub):
    Owner.objects(email=emailid).update_one(push__publication=pub)
def deleteMiss(emailid, pub):
    Owner.objects(email=emailid).update_one(pull__miss=pub)
def deleteTeaching(emailid, pub):
    Owner.objects(email=emailid).update_one(pull__teaching=pub)
def get_schools_for_user(user_id: bson.ObjectId) -> List[Schools]:
    owner = Owner.objects(id=user_id).first()
    schools = Schools.objects(id__in=owner.School_ids).all()

    return list(schools)
def find_account_by_email_and_password(email: str, password: str) -> Owner:
    owner = Owner.objects(email=email, password=password).first()
    return owner
Exemple #23
0
def find_owner_by_email(email: str) -> Owner:
    owner = Owner.objects().filter(email=email).first()
    # filter on 1 or more fields. email must match passed email value
    # Call first to execute the query and return 1 owner or None
    return owner
Exemple #24
0
def find_account_by_email(email: str) -> Owner:
    owner = Owner.objects(email=email).first()  # pylint: disable=no-member
    return owner
Exemple #25
0
def find_account_by_email(email: str) -> Owner:
    return Owner.objects(email=email).first()
Exemple #26
0
def get_snakes_for_user(user_id: bson.ObjectId) -> List[Snake]:
    owner = Owner.objects(id=user_id).first()  # pylint: disable=no-member
    snakes = Snake.objects(id__in=owner.snake_ids).all()  # pylint: disable=no-member
    return list(snakes)
def find_account_by_email(email: str) -> Owner:
    owner = Owner.objects(email=email).first()
    return owner
def get_snakes_for_user(user_id: bson.ObjectId) -> List[Snake]:
    owner = Owner.objects(id=user_id).first()
    snakes = Snake.objects(id__in=owner.snake_ids).all()

    return list(snakes)
Exemple #29
0
def find_account_by_email(email: object) -> object:
    owner = Owner.objects(email=email).first()
    return owner
Exemple #30
0
def find_account_by_email(email: str) -> Owner:
    # owner = Owner.objects().filter(email=email).first()
    owner = Owner.objects(email=email).first(
    )  # for one filer, we can directly do this in mongodb
    return owner
Exemple #31
0
def find_account_by_email(email: str) -> Owner:

    owner = Owner.objects().filter(email=email).first()
    return owner
def find_guests_for_user(email):
    owner = Owner.objects(email=email).first()
    return list(Guest.objects(id__in=owner.guest_ids).all())