VMM/handler: Updated Handler.user_{disable,enable} methods to v0.6.x
authorPascal Volk <neverseen@users.sourceforge.net>
Sun, 01 Aug 2010 22:59:34 +0000
branchv0.6.x
changeset 335 7a471cace3ba
parent 334 3f550826b1cc
child 336 d24c2ea39710
VMM/handler: Updated Handler.user_{disable,enable} methods to accept a list of services. man/{,de/}man1/vmm.1.rst: Updated userenable/userdisable part.
VirtualMailManager/handler.py
man/de/man1/vmm.1.rst
man/man1/vmm.1.rst
--- a/VirtualMailManager/handler.py	Sun Aug 01 03:55:01 2010 +0000
+++ b/VirtualMailManager/handler.py	Sun Aug 01 22:59:34 2010 +0000
@@ -633,27 +633,29 @@
                            acc.address, NO_SUCH_ACCOUNT)
         acc.modify('transport', transport)
 
-    def user_disable(self, emailaddress, service=None):
-        """Wrapper for Account.disable(service)"""
-        if service not in (None, 'all', 'imap', 'pop3', 'smtp', 'sieve'):
-            raise VMMError(_(u"Could not accept service: '%s'") % service,
-                           INVALID_ARGUMENT)
+    def user_disable(self, emailaddress, services=None):
+        """Wrapper for Account.disable(*services)"""
+        if services is None:
+            services = []
+        else:
+            assert isinstance(services, list)
         acc = self._get_account(emailaddress)
         if not acc:
-            raise VMMError(_(u"The account '%s' doesn't exist.") %
-                           acc.address, NO_SUCH_ACCOUNT)
-        acc.disable(service)
+            raise VMMError(_(u"The account '%s' doesn't exist.") % acc.address,
+                           NO_SUCH_ACCOUNT)
+        acc.disable(*services)
 
-    def user_enable(self, emailaddress, service=None):
-        """Wrapper for Account.enable(service)"""
-        if service not in (None, 'all', 'imap', 'pop3', 'smtp', 'sieve'):
-            raise VMMError(_(u"Could not accept service: '%s'") % service,
-                           INVALID_ARGUMENT)
+    def user_enable(self, emailaddress, services=None):
+        """Wrapper for Account.enable(*services)"""
+        if services is None:
+            services = []
+        else:
+            assert isinstance(services, list)
         acc = self._get_account(emailaddress)
         if not acc:
-            raise VMMError(_(u"The account '%s' doesn't exist.") %
-                           acc.address, NO_SUCH_ACCOUNT)
-        acc.enable(service)
+            raise VMMError(_(u"The account '%s' doesn't exist.") % acc.address,
+                           NO_SUCH_ACCOUNT)
+        acc.enable(*services)
 
     def relocated_add(self, emailaddress, targetaddress):
         """Creates a new `Relocated` entry in the database. If there is
--- a/man/de/man1/vmm.1.rst	Sun Aug 01 03:55:01 2010 +0000
+++ b/man/de/man1/vmm.1.rst	Sun Aug 01 22:59:34 2010 +0000
@@ -7,7 +7,7 @@
 -----------------------------------------------------------------------------
 
 :Author:         Pascal Volk <neverseen@users.sourceforge.net>
-:Date:           2010-01-30
+:Date:           2010-08-01
 :Version:        vmm-0.6.0
 :Manual group:   vmm Manual
 :Manual section: 1
@@ -329,32 +329,34 @@
 
 .. _userdisable:
 
-``userdisable (u0) Adresse [ Service ]``
-  Soll ein Anwender keinen Zugriff auf einen oder alle Service haben, kann
+``userdisable (u0) Adresse [ Service ... ]``
+  Soll ein Anwender keinen Zugriff auf bestimmte oder alle Service haben, kann
   der Zugriff mit diesem Unterbefehl beschränkt werden.
 
-  Wurde weder ein *Service* noch das Schlüsselwort **all** angegeben, werden
-  alle Services (**smtp**, **pop3**, **imap**, und **sieve**) für das Konto
-  mit der angegebenen *Adresse* deaktiviert.
+  Wurde kein *Service* angegeben, werden alle Services (**smtp**, **pop3**,
+  **imap**, und **sieve**) für das Konto mit der angegebenen *Adresse*
+  deaktiviert.
 
-  Andernfalls wird nur der Zugriff auf den angegeben *Service* gesperrt.
+  Andernfalls wird nur der Zugriff auf den/die angegebenen *Service*/s
+  gesperrt.
 
   Beispiele::
 
-    vmm u0 b.user@example.com imap
+    vmm u0 b.user@example.com imap pop3
     vmm userdisable c.user@example.com
 
 .. _userenable:
 
-``userenable (u1) Adresse [ Service ]``
+``userenable (u1) Adresse [ Service ... ]``
   Um den Zugriff auf bestimmte oder alle gesperrten Service zu gewähren,
   wird dieser Unterbefehl verwendet.
 
-  Wurde weder ein *Service* noch das Schlüsselwort **all** angegeben, werden
-  alle Services (**smtp**, **pop3**, **imap**, und **sieve**) für das Konto
-  mit der angegebenen  *Adresse* aktiviert.
+  Wurde kein *Service* angegeben, werden alle Services (**smtp**, **pop3**,
+  **imap**, und **sieve**) für das Konto mit der angegebenen  *Adresse*
+  aktiviert.
 
-  Andernfalls wird nur der Zugriff auf den angegeben *Service* gestattet.
+  Andernfalls wird nur der Zugriff auf den/die angegebenen *Service*/s
+  aktiviert.
 
 .. _userdelete:
 
--- a/man/man1/vmm.1.rst	Sun Aug 01 03:55:01 2010 +0000
+++ b/man/man1/vmm.1.rst	Sun Aug 01 22:59:34 2010 +0000
@@ -7,7 +7,7 @@
 ----------------------------------------------------------
 
 :Author:         Pascal Volk <neverseen@users.sourceforge.net>
-:Date:           2010-01-30
+:Date:           2010-08-01
 :Version:        vmm-0.6.0
 :Manual group:   vmm Manual
 :Manual section: 1
@@ -308,29 +308,27 @@
 
 .. _userdisable:
 
-``userdisable (u0) address [ service ]``
-  If a user shouldn't have access to one or all services you can restrict
+``userdisable (u0) address [ service ... ]``
+  If a user shouldn't have access to one or more services you can restrict
   the access with this subcommand.
 
-  If neither a *service* nor the keyword **all** is given all services
-  (**smtp**, **pop3**, **imap**, and **sieve**) will be disabled for the
-  account with the specified *address*. Otherwise only the specified
-  *service* will be restricted.
+  If no *service* was given all services  (**smtp**, **pop3**, **imap**, and
+  **sieve**) will be disabled for the account with the specified *address*.
+  Otherwise only the specified *service*/s will be restricted.
 
   Examples::
 
-    vmm u0 b.user@example.com imap
+    vmm u0 b.user@example.com imap pop3
     vmm userdisable c.user@example.com
 
 .. _userenable:
 
-``userenable (u1) address [ service ]``
-  To allow access to one or all restricted services use this subcommand.
+``userenable (u1) address [ service ... ]``
+  To allow access to one or more restricted services use this subcommand.
 
-  If neither a *service* nor the keyword **all** is given all services
-  (**smtp**, **pop3**, **imap**, and **sieve**) will be enabled for the
-  account with the specified *address*. Otherwise only the specified
-  *service* will be enabled.
+  If no *service* was given all services (**smtp**, **pop3**, **imap**, and
+  **sieve**) will be enabled for the account with the specified *address*.
+  Otherwise only the specified *service*/s will be enabled.
 
 .. _userdelete: