diff --git a/app/sso/services/__init__.py b/app/sso/services/__init__.py index bb57564..3b5bbde 100644 --- a/app/sso/services/__init__.py +++ b/app/sso/services/__init__.py @@ -1,5 +1,5 @@ from django.conf import settings -from django.db import connections +from django.db import connections, transaction def get_api(api): @@ -82,3 +82,6 @@ class BaseDBService(BaseService): self._dbcursor = self.db.cursor() return self._dbcursor + def commit(self): + transaction.commit_unless_managed(using=self.settings['database_name']) + diff --git a/app/sso/services/mumblesql/__init__.py b/app/sso/services/mumblesql/__init__.py index 7c37a83..51ac1e4 100644 --- a/app/sso/services/mumblesql/__init__.py +++ b/app/sso/services/mumblesql/__init__.py @@ -47,7 +47,7 @@ class MumbleSQLService(BaseDBService): userid = self.dbcursor.fetchone()[0] self.dbcursor.execute(self.SQL_ADD_USER, [self.settings['server_id'], userid, username, self._gen_pwhash(password)]) - transaction.commit_unless_managed() + self.commit() return { 'username': username, 'password': password } def check_user(self, username): @@ -67,13 +67,13 @@ class MumbleSQLService(BaseDBService): def disable_user(self, uid): """ Disable a user """ self.dbcursor.execute(self.SQL_DIS_USER, [uid]) - transaction.commit_unless_managed() + self.commit() return True def enable_user(self, uid, password): """ Enable a user """ self.dbcursor.execute(self.SQL_ENABLE_USER, [self._gen_pwhash(password), uid]) - transaction.commit_unless_managed() + self.commit() return True def reset_password(self, uid, password):