1 | # -*- coding: utf-8 -*- |
---|
2 | ################################################################################# |
---|
3 | # @file adoDB_users.py |
---|
4 | # @brief Module that manage database info about OpenRemoteLabs Users. |
---|
5 | # @warning None |
---|
6 | # @note Use: None |
---|
7 | # @license GNU GPLv3+ |
---|
8 | # @author David Fuertes, EUPT, University of Zaragoza. |
---|
9 | # @version 1.1.0 - First version |
---|
10 | # @date 2019-15-11 |
---|
11 | ################################################################################# |
---|
12 | def get_users(db): |
---|
13 | return (db.auth_user.id>0) |
---|
14 | |
---|
15 | def get_users_menbership(db): |
---|
16 | return (db.auth_membership.id>0) |
---|
17 | |
---|
18 | def insert_user(db, first_name, last_name, email, username): |
---|
19 | db.auth_user.insert(first_name=first_name, |
---|
20 | last_name=last_name, |
---|
21 | email=email, |
---|
22 | registration_id=username, |
---|
23 | username=username) |
---|
24 | db.commit() |
---|
25 | |
---|
26 | def remove_users(db,users_id): |
---|
27 | if users_id: |
---|
28 | for user_id in users_id: |
---|
29 | db(db.auth_user.id == user_id).delete() |
---|
30 | |
---|
31 | db.commit() |
---|
32 | |
---|
33 | def get_admin_id(db): |
---|
34 | result = db( (db.auth_group.role == 'admin') & |
---|
35 | (db.auth_membership.group_id == db.auth_group.id) & |
---|
36 | (db.auth_user.id == db.auth_membership.user_id) ).select(orderby=db.auth_user.id).first() |
---|
37 | if result: |
---|
38 | return result['auth_user']['id'] |
---|
39 | else: |
---|
40 | return None |
---|
41 | |
---|
42 | def is_admin(db, user_id): |
---|
43 | r = db( (db.auth_group.role == 'admin') & |
---|
44 | (db.auth_membership.group_id == db.auth_group.id) & |
---|
45 | (db.auth_membership.user_id == user_id) ).select() |
---|
46 | if len(r) == 1: |
---|
47 | return True |
---|
48 | else: |
---|
49 | return False |
---|
50 | |
---|
51 | def enable_passwd_readable(db): |
---|
52 | db.auth_user.password.readable = True |
---|
53 | db.auth_user.password.writable = True |
---|
54 | |
---|
55 | def disable_passwd_readable(db): |
---|
56 | db.auth_user.password.readable = False |
---|
57 | db.auth_user.password.writable = False |
---|