summaryrefslogtreecommitdiff
path: root/server/user_session.py
diff options
context:
space:
mode:
Diffstat (limited to 'server/user_session.py')
-rw-r--r--server/user_session.py19
1 files changed, 19 insertions, 0 deletions
diff --git a/server/user_session.py b/server/user_session.py
index 8661016..02e1bd4 100644
--- a/server/user_session.py
+++ b/server/user_session.py
@@ -323,6 +323,25 @@ class UserSession(object):
finally:
db.return_connection(conn)
+ def get_attempts(self, language):
+ uid = self.get_uid()
+ conn = db.get_connection()
+ try:
+ cur = conn.cursor()
+ try:
+ cur.execute('''
+ select s.problem_id, s.done
+ from solution s
+ inner join problem p on p.id = s.problem_id
+ inner join language l on p.language_id = l.id
+ where s.codeq_user_id = %s and l.identifier = %s''', (uid, language))
+ return {row[0]: row[1] for row in cur.fetchall()}
+ finally:
+ cur.close()
+ finally:
+ conn.commit()
+ db.return_connection(conn)
+
def get_stat(self):
uid = self.get_uid()
gui_lang = self.get_settings().get('gui_lang', 'en')