Conditions | 4 |
Total Lines | 16 |
Code Lines | 13 |
Lines | 0 |
Ratio | 0 % |
Changes | 0 |
1 | import typing |
||
13 | def check_credentials(username, password, request) -> typing.Optional[dict]: |
||
14 | permissions = None |
||
15 | app_config = request.registry.settings['CFG'] |
||
16 | uapi = UserApi(None, session=request.dbsession, config=app_config) |
||
17 | try: |
||
18 | user = uapi.get_one_by_email(username) |
||
19 | if user.validate_password(password): |
||
20 | permissions = [] |
||
21 | for group in user.groups: |
||
22 | permissions.append(group.group_name) |
||
23 | # TODO - G.M - 06-04-2018 - Add workspace specific permission ? |
||
24 | # TODO - G.M - 06-04-2018 - Better catch for exception of bad password, bad |
||
25 | # user |
||
26 | except: |
||
27 | pass |
||
28 | return permissions |
||
29 | |||
38 |
The coding style of this project requires that you add a docstring to this code element. Below, you find an example for methods:
If you would like to know more about docstrings, we recommend to read PEP-257: Docstring Conventions.