from cbh.api.availability.schemas import UpdateAvailabilityRequest from cbh.api.availability.models import AvailabilityModel from cbh.api.common.db_requests import get_obj_by_id from cbh.core.config import settings async def update_availability_obj( availability: UpdateAvailabilityRequest, coach_id: str ) -> AvailabilityModel: """ Update availability object. """ availability_obj = await get_obj_by_id( AvailabilityModel, None, additional_filter={"coach.id": coach_id} ) availability_obj.weeklySchedule = availability.weeklySchedule await settings.DB_CLIENT.availabilities.update_one( {"coach.id": coach_id}, {"$set": availability_obj.to_mongo()}, ) return availability_obj