diff --git a/sso/services/mumble/__init__.py b/sso/services/mumble/__init__.py index 71b42d4..bc18ef6 100644 --- a/sso/services/mumble/__init__.py +++ b/sso/services/mumble/__init__.py @@ -36,16 +36,26 @@ class MumbleService(BaseService): def delete_user(self, uid): """ Delete a user by uid """ - mumbleuser = MumbleUser.objects.get(name=uid) + mumbleuser = MumbleUser.objects.get(name=uid, server=self._get_server()) mumbleuser.delete() def disable_user(self, uid): """ Disable a user by uid """ - pass + try: + mumbleuser = MumbleUser.objects.get(name=uid, server=self._get_server()) + except MumbleUser.DoesNotExist: + return False + mumbleuser.password = "" + mumbleuser.save() def enable_user(self, uid, password): """ Enable a user by uid """ - pass + try: + mumbleuser = MumbleUser.objects.get(name=uid, server=self._get_server()) + except MumbleUser.DoesNotExist: + return False + mumbleuser.password = password + mumbleuser.save() def login(uid): """ Login the user and provide cookies back """ diff --git a/sso/views.py b/sso/views.py index 27b8d21..894023e 100644 --- a/sso/views.py +++ b/sso/views.py @@ -133,7 +133,7 @@ def service_add(request): else: error = None - return render_to_response('sso/serviceaccount/created.html', { 'account': acc, 'error': error }) + return render_to_response('sso/serviceaccount/created.html', { 'account': acc, 'error': error }, context_instance=RequestContext(request)) else: #defaults = { 'username': request.user.username, 'password': request.user.get_profile().default_service_passwd }