@@ -344,7 +344,7 @@ def summary(self):
344344 'acquisitions' : {'session' : {'$in' : session_ids }},
345345 'analyses' : {'parent.id' : {'$in' : parent_ids }}
346346 }
347- if level == 'sessions' :
347+ elif level == 'sessions' :
348348
349349 # Grab acquisitions and their ids
350350 acquisitions = config .db .acquisitions .find ({'session' : req ['_id' ]}, {'_id' : 1 })
@@ -361,6 +361,15 @@ def summary(self):
361361 'analyses' : {'parent.id' : {'$in' : parent_ids }}
362362 }
363363 containers = containers [1 :]
364+ elif level == 'acquisitions' :
365+
366+ cont_query ['acquisitions' ] = {'_id' : req ['_id' ]}
367+ containers = ['acquisitions' ]
368+ elif level == 'analyses' :
369+ cont_query ['analyses' ] = {'_id' : req ['_id' ]}
370+ containers = containers [- 1 :]
371+ else :
372+ self .abort (400 , "{} not a recognized level" .format (level ))
364373
365374 res = {}
366375 for cont_name in containers :
@@ -382,7 +391,7 @@ def summary(self):
382391 try :
383392 result = config .db .command ('aggregate' , cont_name , pipeline = pipeline )
384393 except Exception as e : # pylint: disable=broad-except
385- return e
394+ self . abort ( 500 , str ( e ))
386395
387396 if result .get ("ok" ):
388397 for doc in result .get ("result" ):
0 commit comments