Ability to have username in init command
authorIan Weller <ian@ianweller.org>
Sat, 13 Mar 2010 02:32:59 +0000 (20:32 -0600)
committerIan Weller <ian@ianweller.org>
Sat, 13 Mar 2010 02:32:59 +0000 (20:32 -0600)
src/mw/clicommands.py
src/mw/metadir.py

index e441e3072441f06b701b8962adf3fb22aec2ea4e..3c0b4482989d534af81a2d89c5ffa1f08a4a7441 100644 (file)
@@ -36,11 +36,11 @@ class CommandBase(object):
         self.parser = OptionParser(usage=usage, description=description)
         self.name = name
         self.metadir = mw.metadir.Metadir()
-        global_options = OptionGroup(self.parser, "Global Options")
-        global_options.add_option('-u', '--use-auth', action='store_true',
-                                  dest='use_auth', help='force authentication '
-                                  'even if not required')
-        self.parser.add_option_group(global_options)
+        #global_options = OptionGroup(self.parser, "Global Options")
+        #global_options.add_option('-u', '--use-auth', action='store_true',
+        #                          dest='use_auth', help='force authentication '
+        #                          'even if not required')
+        #self.parser.add_option_group(global_options)
         self.shortcuts = []
 
     def main(self):
@@ -75,13 +75,15 @@ class InitCommand(CommandBase):
     def __init__(self):
         usage = 'API_URL'
         CommandBase.__init__(self, 'init', 'start a mw repo', usage)
+        self.parser.add_option('-u', '--username', dest='username',
+                               help='use wiki with login')
 
     def _do_command(self):
         if len(self.args) < 1:
             self.parser.error('must have URL to remote api.php')
         elif len(self.args) > 1:
             self.parser.error('too many arguments')
-        self.metadir.create(self.args[0])
+        self.metadir.create(self.args[0], self.options.username)
 
 
 class PullCommand(CommandBase):
index 18811db26b38359b8adca2c71d517d53ad29895e..6c6bfeb1e2d45417e132d8dc8e552817353e68f0 100644 (file)
@@ -49,7 +49,7 @@ class Metadir(object):
         else:
             self.config = None
 
-    def create(self, api_url):
+    def create(self, api_url, username=None):
         # create the directory
         if os.path.isdir(self.location):
             print '%s: you are already in a mw repo' % self.me
@@ -64,6 +64,8 @@ class Metadir(object):
         self.config = ConfigParser.RawConfigParser()
         self.config.add_section('remote')
         self.config.set('remote', 'api_url', api_url)
+        if username != None:
+            self.config.set('remote', 'username', username)
         with open(self.config_loc, 'wb') as config_file:
             self.config.write(config_file)
         # create cache/

Benjamin Mako Hill || Want to submit a patch?