vmm
changeset 2 9b39f828aa8a
parent 1 d08cda9d7c1a
child 3 a9b44e04bf01
equal deleted inserted replaced
1:d08cda9d7c1a 2:9b39f828aa8a
    11 __date__ = '$Date$'.split()[1]
    11 __date__ = '$Date$'.split()[1]
    12 
    12 
    13 import os
    13 import os
    14 import sys
    14 import sys
    15 from getpass import getpass
    15 from getpass import getpass
    16 
       
    17 #sys.path.insert(0, '/usr/local/lib/VirtualMailManager')
       
    18 
    16 
    19 from VirtualMailManager.VirtualMailManager import VirtualMailManager
    17 from VirtualMailManager.VirtualMailManager import VirtualMailManager
    20 from VirtualMailManager.Config import VMMConfig
    18 from VirtualMailManager.Config import VMMConfig
    21 import VirtualMailManager.Exceptions as VMME
    19 import VirtualMailManager.Exceptions as VMME
    22 import VirtualMailManager.constants.EXIT as EXIT
    20 import VirtualMailManager.constants.EXIT as EXIT
    52 
    50 
    53 def getVMM():
    51 def getVMM():
    54     try:
    52     try:
    55         vmm = VirtualMailManager()
    53         vmm = VirtualMailManager()
    56         return vmm
    54         return vmm
    57     except VMME.VMMNotRootException, e:
    55     except (VMME.VMMException, VMME.VMMNotRootException, VMME.VMMPermException,
    58         sys.stderr.write(str(e))
    56             VMME.VMMConfigException), e:
    59         sys.exit(EXIT.CONF_NOPERM)
    57         sys.stderr.write("\aERROR: %s\n" % e[0][0])
    60     except IOError, e:
    58         sys.exit(e[0][1])
    61         sys.stderr.write(str(e))
       
    62         sys.exit(EXIT.CONF_NOFILE)
       
    63     except VMME.VMMPermException, e:
       
    64         sys.stderr.write(str(e))
       
    65         sys.exit(EXIT.CONF_WRONGPERM)
       
    66 
    59 
    67 def configure():
    60 def configure():
    68     try:
    61     try:
    69         if len(sys.argv) < 3:
    62         if len(sys.argv) < 3:
    70             vmm.configure()
    63             vmm.configure()
   185     else:
   178     else:
   186         _printInfo(vmm.user_info(sys.argv[2].lower(), True), 'Account')
   179         _printInfo(vmm.user_info(sys.argv[2].lower(), True), 'Account')
   187 
   180 
   188 def user_name():
   181 def user_name():
   189     global argc
   182     global argc
       
   183     if argc < 3:
       
   184         usage(EXIT.MISSING_ARGS, 'Missing email address and users name.')
   190     if argc < 4:
   185     if argc < 4:
   191         usage(EXIT.MISSING_ARGS, 'Missing email address an users name.')
   186         usage(EXIT.MISSING_ARGS, 'Missing users name.')
   192     else:
   187     else:
   193         vmm.user_name(sys.argv[2].lower(), sys.argv[3])
   188         vmm.user_name(sys.argv[2].lower(), sys.argv[3])
   194 
   189 
   195 def user_enable():
   190 def user_enable():
   196     global argc
   191     global argc
   291             usage()
   286             usage()
   292         elif sys.argv[1] in ['v', 'version']:
   287         elif sys.argv[1] in ['v', 'version']:
   293             print "%s: %s (Date: %s)\n" % (os.path.basename(sys.argv[0]),
   288             print "%s: %s (Date: %s)\n" % (os.path.basename(sys.argv[0]),
   294                     __version__, __date__)
   289                     __version__, __date__)
   295         else:
   290         else:
   296             sys.stderr.write('Unknown option: "%s"\n' % sys.argv[1])
   291             usage(EXIT.UNKNOWN_OPTION, 'Unknown option: »%s«' % sys.argv[1])
   297             usage(EXIT.UNKNOWN_OPTION)
       
   298         showWarnings()
   292         showWarnings()
   299     except (EOFError, KeyboardInterrupt):
   293     except (EOFError, KeyboardInterrupt):
   300         sys.stderr.write('\nOuch!\n')
   294         sys.stderr.write('\nOuch!\n')
   301         sys.exit(EXIT.USER_INTERRUPT)
   295         sys.exit(EXIT.USER_INTERRUPT)
   302     except VMME.VMMException, e:
   296     except VMME.VMMException, e: