diff options
Diffstat (limited to 'server')
-rw-r--r-- | server/user_session.py | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/server/user_session.py b/server/user_session.py index af28046..7860022 100644 --- a/server/user_session.py +++ b/server/user_session.py @@ -86,7 +86,7 @@ class UserSession(object): try: cur = conn.cursor() try: - cur.execute('select id, password, name, email, is_admin, date_joined, gui_lang, robot_address, gui_layout from codeq_user where username = %s', (username,)) + cur.execute('select id, password, name, email, is_admin, date_joined, gui_lang, robot_address, gui_layout, experiments from codeq_user where username = %s', (username,)) row = cur.fetchone() if row is None: raise AuthenticationFailed('No such user: {}'.format(username)) @@ -96,6 +96,7 @@ class UserSession(object): self.username = username self.is_admin = row[4] self.settings = {'gui_lang': row[6], 'robot_address': row[7], 'gui_layout': row[8]} + self.experiments = row[9] if row[9] else [] return row[2], row[3], row[4], row[5], now else: raise AuthenticationFailed('Password mismatch') @@ -253,6 +254,10 @@ class UserSession(object): with self._access_lock: # settings are mutable, so we need a locked access return self.settings + def get_experiments(self): + with self._access_lock: + return self.experiments + def update_settings(self, new_settings): with self._access_lock: self.settings.update(new_settings) |