http://www.mediawiki.org/wiki/Special:Code/pywikipedia/11342

Revision: 11342
Author:   valhallasw
Date:     2013-04-05 18:42:57 +0000 (Fri, 05 Apr 2013)
Log Message:
-----------
Bugfix: actually login users that run login.py

Users were only logged in when they explicitly called -force, while
calling -force did not actually ask users that were logged in to
re-authenticate.

Calling login.py *without* -force now asks the user to log in (or displays
a message when this is already the case). Calling login.py *with* -force
displays a warning message with a description of how to logout (by deleting
the cookie file).

Modified Paths:
--------------
    branches/rewrite/scripts/login.py

Modified: branches/rewrite/scripts/login.py
===================================================================
--- branches/rewrite/scripts/login.py   2013-04-05 16:23:21 UTC (rev 11341)
+++ branches/rewrite/scripts/login.py   2013-04-05 18:42:57 UTC (rev 11342)
@@ -55,7 +55,6 @@
     password = None
     sysop = False
     logall = False
-    forceLogin = False
     for arg in pywikibot.handleArgs(*args):
         if arg.startswith("-pass"):
             if len(arg) == 5:
@@ -68,7 +67,8 @@
         elif arg == "-all":
             logall = True
         elif arg == "-force":
-            forceLogin = True
+            pywikibot.output(u"To force a re-login, please delete the revelant 
lines from '%s' (or the entire file) and try again." %
+                             os.path.join(config.base_dir, 'pywikibot.lwp'))
         else:
             pywikibot.showHelp('login')
             return
@@ -84,11 +84,11 @@
         for lang in namedict[familyName]:
             try:
                 site = pywikibot.getSite(code=lang, fam=familyName)
-                if forceLogin:
-                    site.login()
-                if site.logged_in(sysop) \
-                        and site.user() == site.username(sysop):
-                    pywikibot.output(u"Login successful on %(site)s." % 
locals())
+                site.login()
+
+                user = site.user()
+                if user:
+                    pywikibot.output(u"Logged in on %(site)s as %(user)s." % 
locals())
                 else:
                     pywikibot.output(u"Not logged in on %(site)s." % locals())
             except NoSuchSite:


_______________________________________________
Pywikipedia-svn mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/pywikipedia-svn

Reply via email to