@@ -63,7 +63,7 @@ def build_text_filter(item):
@router.get ( " /events " , tags = [ " events " ] , response_model = list [ events . EventOut ] )
@router.get ( " /events " , tags = [ " events " ] , response_model = list [ events . EventOutWithInterested ] )
async def read_events (
authorize : Annotated [ bool , Depends ( permissions_checker . PermissionChecker ( roles = [ " Admin " , " User " ] ) ) ] ,
user : users . User = Depends ( users_token . get_current_user ) , # 👈 récupère l’ utilisateur courant
@@ -128,7 +128,7 @@ async def read_events(
event_repository = events . EventRepository ( database = database . database )
list_events = [ ]
for event_index in event_repository . find_by ( object_search , limit = limit , skip = skip , sort = [ ( " start_date " , 1 ) ] ) :
interested_users = getattr ( event_index , " interested_users" , [ ] )
interested_users = event_index . interested_users
is_interested = ObjectId ( user . id ) in interested_users
event = events . EventOutWithInterested (
id = event_index . id ,
@@ -150,7 +150,7 @@ async def read_events(
return list_events
@router.get ( " /events/search " , tags = [ " events " ] , response_model = list [ events . EventOut ] )
@router.get ( " /events/search " , tags = [ " events " ] , response_model = list [ events . EventOutWithInterested ] )
async def search_events (
authorize : Annotated [ bool , Depends ( permissions_checker . PermissionChecker ( roles = [ " Admin " , " User " ] ) ) ] ,
user : users . User = Depends ( users_token . get_current_user ) , # 👈 récupère l’ utilisateur courant
@@ -209,7 +209,7 @@ async def search_events(
event_repository = events . EventRepository ( database = database . database )
list_events = [ ]
for event_index in event_repository . find_by ( object_search , limit = limit , skip = skip , sort = [ ( " start_date " , 1 ) ] ) :
interested_users = getattr ( event_index , " interested_users" , [ ] )
interested_users = event_index . interested_users
is_interested = ObjectId ( user . id ) in interested_users
event = events . EventOutWithInterested (
id = event_index . id ,
@@ -253,7 +253,7 @@ async def read_events_count(authorize: Annotated[bool, Depends(permissions_check
return response
@router.get ( " /events/ {item_id} " , tags = [ " events " ] , response_model = events . Event )
@router.get ( " /events/ {item_id} " , tags = [ " events " ] , response_model = events . EventOut )
async def read_events_id ( item_id : str , authorize : Annotated [ bool , Depends ( permissions_checker . PermissionChecker ( roles = [ " Admin " ] ) ) ] ) :
event_repository = events . EventRepository ( database = database . database )
event = event_repository . find_one_by_id ( ObjectId ( item_id ) )