Skip to content
Snippets Groups Projects
Commit c7d57c0d authored by Renzo Frigato's avatar Renzo Frigato
Browse files

Merge pull request #55 from scitran/advanced_filtering

Advanced filtering
parents 8e43fe40 7ea325db
No related branches found
No related tags found
No related merge requests found
......@@ -115,11 +115,19 @@ class Sessions(containers.ContainerList):
query = {'group': gid}
else:
query = {}
projection = ['label', 'subject_code', 'subject.code', 'project', 'group']
projection = ['label', 'subject_code', 'subject.code', 'project', 'group', 'subject.age', 'subject.sex']
sessions = self._get(query, projection, self.request.GET.get('admin', '').lower() in ('1', 'true'))
session_measurements = {}
if self.request.GET.get('measurements', '').lower() in ('1', 'true'):
session_measurements = self.app.db.acquisitions.aggregate([
{'$match': {'session': {'$in': [sess['_id'] for sess in sessions]}}},
{'$group': {'_id': '$session', 'measurements': {'$addToSet': '$datatype'}}}
])
session_measurements = {sess['_id']: sess['measurements'] for sess in session_measurements}
for sess in sessions:
sess['measurements'] = session_measurements.get(sess['_id'], None)
if 'subject_code' not in sess:
sess['subject_code'] = sess.pop('subject', {}).get('code', '') # FIXME when subject is pulled out of session
sess['subject_code'] = sess.get('subject', {}).get('code', '') # FIXME when subject is pulled out of session
if self.debug:
for sess in sessions:
sid = str(sess['_id'])
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment