Revision: 7484
Author:   a_engels
Date:     2009-10-17 06:04:09 +0000 (Sat, 17 Oct 2009)

Log Message:
-----------
When not finding a mediawiki message, first try reloading the messages

Modified Paths:
--------------
    trunk/pywikipedia/wikipedia.py

Modified: trunk/pywikipedia/wikipedia.py
===================================================================
--- trunk/pywikipedia/wikipedia.py      2009-10-17 03:33:28 UTC (rev 7483)
+++ trunk/pywikipedia/wikipedia.py      2009-10-17 06:04:09 UTC (rev 7484)
@@ -5770,10 +5770,10 @@
                 # Token not found
                 output(u'WARNING: Token not found on %s. You will not be able 
to edit any page.' % self)
 
-    def mediawiki_message(self, key):
+    def mediawiki_message(self, key, forceReload = False):
         """Return the MediaWiki message text for key "key" """
         # Allmessages is retrieved once for all per created Site object
-        if not self._mediawiki_messages:
+        if (not self._mediawiki_messages) or forceReload:
             api = False
             if verbose:
                 output(
@@ -5878,8 +5878,10 @@
         try:
             return self._mediawiki_messages[key]
         except KeyError:
-            raise KeyError("MediaWiki key '%s' does not exist on %s"
-                           % (key, self))
+            if not forceReload:
+                return self.mediawiki_message(key, True)
+            else:
+                raise KeyError("MediaWiki key '%s' does not exist on %s" % 
(key, self))
 
     def has_mediawiki_message(self, key):
         """Return True iff this site defines a MediaWiki message for 'key'."""



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

Reply via email to