Revision: 5733 Author: leogregianin Date: 2008-07-19 02:35:27 +0000 (Sat, 19 Jul 2008)
Log Message: ----------- patch 1912104 - interwiki: add "all" to namespace question by AndreasJS
Modified Paths: -------------- trunk/pywikipedia/interwiki.py
Modified: trunk/pywikipedia/interwiki.py =================================================================== --- trunk/pywikipedia/interwiki.py 2008-07-19 02:02:53 UTC (rev 5732) +++ trunk/pywikipedia/interwiki.py 2008-07-19 02:35:27 UTC (rev 5733) @@ -459,6 +459,7 @@ rememberno = False followinterwiki = True minsubjects = config.interwiki_min_subjects + namespacePairs = []
class Subject(object): """ @@ -616,7 +617,20 @@ wikipedia.output(u"NOTE: Ignoring link from page %s in namespace %i to page %s in namespace %i because page %s in the correct namespace has already been found." % (self.originPage.aslink(True), self.originPage.namespace(), linkedPage.aslink(True), linkedPage.namespace(), preferredPage.aslink(True))) return True else: - choice = wikipedia.inputChoice('WARNING: %s is in namespace %i, but %s is in namespace %i. Follow it anyway?' % (self.originPage.aslink(True), self.originPage.namespace(), linkedPage.aslink(True), linkedPage.namespace()), ['Yes', 'No'], ['y', 'n']) + if (self.originPage.site(), self.originPage.namespace(), linkedPage.site(), linkedPage.namespace()) in Global.namespacePairs\ + or (linkedPage.site(), linkedPage.namespace(),self.originPage.site(), self.originPage.namespace()) in Global.namespacePairs: + wikipedia.output('NOTE: %s is in namespace %i, and %s is in namespace %i.' + % (self.originPage.aslink(True), self.originPage.namespace(), + linkedPage.aslink(True), linkedPage.namespace())) + choice = 'y' + else: + choice = wikipedia.inputChoice( + 'WARNING: %s is in namespace %i, but %s is in namespace %i. Follow it anyway?' + % (self.originPage.aslink(True), self.originPage.namespace(), + linkedPage.aslink(True), linkedPage.namespace()), ['Yes', 'No', 'All'], ['y', 'n', 'a']) + if choice == 'a': + pair = self.originPage.site(), self.originPage.namespace(), linkedPage.site(), linkedPage.namespace() + Global.namespacePairs.append(pair) if choice != 'y': # Fill up foundIn, so that we will not ask again self.foundIn[linkedPage] = [linkingPage]