4de2e83fda4f986d4d01fae9811bf753bad7c4f9
[cascardo/ipsilon.git] / ipsilon / providers / openid / extensions / fas_teams.py
1 #!/usr/bin/python
2 #
3 # Copyright (C) 2014  Ipsilon project Contributors, for licensee see COPYING
4
5 from __future__ import absolute_import
6
7 from ipsilon.providers.openid.extensions.teams import Teams
8 from openid_teams import teams
9
10
11 class OpenidExtension(Teams):
12
13     def __init__(self, *pargs):
14         super(OpenidExtension, self).__init__('Fedora Teams')
15
16     def _resp(self, request, userdata):
17         req = teams.TeamsRequest.fromOpenIDRequest(request)
18         if req is None:
19             return {}
20         if '_FAS_ALL_GROUPS_' in req.requested:
21             # We will send all groups the user is a member of
22             req.requested = userdata.get('groups', [])
23         data = userdata.get('groups', [])
24         return teams.TeamsResponse.extractResponse(req, data)